API网关和微服务认证

     2023-03-10     196

关键词:

【中文标题】API网关和微服务认证【英文标题】:API gateway and microservice authentication 【发布时间】:2018-01-06 19:35:11 【问题描述】:

API 网关和微服务的工作原理。

谁能用网关解释一下微服务架构的基本流程。我找不到正确的答案。

假设我们在不同的实例上运行身份验证服务器和客户微服务,并且在所有服务之前我们有一个 API 网关。

我的问题是。

当用户尝试使用用户名和密码登录时,API网关调用auth server并将访问令牌返回给用户。

然后用户尝试访问在单独实例上运行的特定 URL(/customers - 客户微服务)。 API 网关是做什么的?

    使用身份验证服务器验证令牌并获取用户 ID 并将请求传递给 具有用户 ID 的客户服务

    验证令牌并将请求传递给客户微服务使用访问令牌?客户微服务负责检查用户 ID(对身份验证服务器进行 HTTP 调用)?

【问题讨论】:

【参考方案1】:

我认为最常见的做法是将 API 网关也用作安全网关,这意味着 API 网关负责 SSL 终止和令牌验证。如果令牌验证成功,您可以将用户 ID 或用户 API 密钥作为标头并将请求转发到微服务。此外,您还可以决定在 API 网关上执行身份验证和授权(通常借助 API 管理解决方案)。

关于您的选项 #2 - 我认为验证令牌 2 次没有意义。最佳实践是在边缘执行安全验证,因为在验证失败的情况下,您使用的资源更少(提前拒绝)

【讨论】:

【参考方案2】:

要回答您的问题,它与您提到的选项#2 很接近。 API 网关通常会检查身份验证令牌的有效性,然后将请求传递给您的微服务。但是,您需要在设计时决定您的微服务是否还会对令牌进行另一级别的验证。

请注意,API 网关不会强制执行 Authorization ,授权是您的微服务必须强制执行的。

【讨论】:

具有 API 网关和微服务的 Blazor 服务器指南

】具有API网关和微服务的Blazor服务器指南【英文标题】:GuidanceforBlazorServerwithAPIGatewayandMicroservices【发布时间】:2020-08-2408:17:26【问题描述】:到目前为止,我还没有找到有关将Blazor服务器(不是WebAssembly)与API网关和微服务一... 查看详情

为啥 API 网关和认证服务应该不同?

】为啥API网关和认证服务应该不同?【英文标题】:WhyshouldAPIgatewayandauthenticationservicebedifferent?为什么API网关和认证服务应该不同?【发布时间】:2020-03-0420:49:33【问题描述】:使用API网关进行授权的优缺点是什么?如果API在标... 查看详情

API网关和API微服务之间的相互认证?

】API网关和API微服务之间的相互认证?【英文标题】:MutualAuthbetweenAPIgatewayandAPImicroservice?【发布时间】:2017-12-0906:43:54【问题描述】:我正在编写一个API网关,它将向各种其他API公开单个入口点,这些API只能通过此API网关访问... 查看详情

如何设置 API Gateway 和微服务之间的 SSL 通信?

...发布时间】:2019-10-1306:54:48【问题描述】:我正在使用API网关(KONG)和微服务(Spring-boot应用程序)设置环境,但我对它们之间的SSL通信有很多疑问/担忧。我应该将SSL设置放在API网关还是微服务中?目前我的 查看详情

API网关的认证和授权

】API网关的认证和授权【英文标题】:AuthenticationandAuthorizationforAPIGateway【发布时间】:2020-01-1221:01:08【问题描述】:我正在使用微服务在springboot中构建Api网关,并希望实现API网关的所有功能/原理身份验证/授权路由(可以使用sp... 查看详情

node.js api 网关实现和护照认证

】node.jsapi网关实现和护照认证【英文标题】:node.jsapigatewayimplementationandpassportauthentication【发布时间】:2017-08-1910:34:03【问题描述】:我正在使用node.js实现基于微服务的应用程序。在搜索有关如何实现api网关的示例时,我偶然... 查看详情

用于事件驱动架构的 API 网关

】用于事件驱动架构的API网关【英文标题】:APIgatewayforevent-drivenarchitecture【发布时间】:2017-09-2118:36:37【问题描述】:我们正在尝试将我们的单体核心拆分为微服务,并添加一些使用消息系统(例如Kafka)相互连接的新服务。下... 查看详情

soa架构和微服务架构的区别(转载)

文章目录1.SOA架构和微服务架构的区别2.ESB和微服务API网关1.ESB(企业服务总线)2.API网关:3.SOA架构特点:4.微服务架构特点:1.通过服务实现组件化2.按业务能力来划分服务和开发团队3.去中心化4.基础设施自动化... 查看详情

从0开始构建你的api网关--springcloudgateway网关实战及原理解析

API网关API网关出现的原因是微服务架构的出现,不同的微服务一般会有不同的网络地址,而外部客户端可能需要调用多个服务的接口才能完成一个业务需求,如果让客户端直接与各个微服务通信,会有以下的问题:客户端会多次... 查看详情

阿里云api网关

参考技术AAPI网关(APIGateway)提供高性能、高可用的API托管服务,帮助用户对外开放其部署在ECS、容器服务等阿里云产品上的应用,提供完整的API发布、管理、维护生命周期管理。用户只需进行简单的操作,即可快速、低成本、... 查看详情

微服务架构认证鉴权方案

...足,且是所有方案里最为简便轻巧的一个,可通过搭配API网关来满足SSOff特性的要求,因此JWT+API网关也是一个推荐的方案。API网关作为服务访问的统一入口,所有用户请求都会过API网关,很适合用来做认证鉴权这类切面型服务。... 查看详情

springcloud01:回顾微服务和微服务架构(代码片段)

...办?解决方案SpringCloudNetFlix-一站式解决方案!api网关,zuul组件Feign--HttpClient--Http通信方式,同步,阻塞服务注册发现,Eureca熔断机制:HytrixApacheDubbozookeeper半自动,需要整合别人的!API网关:没有࿰... 查看详情

微服务架构中的认证授权设计

...施安全性。所以我计划使用3项服务来实现这一目标。API网关用户服务订单服务第一步:客户端将用户名和密码发送到APIGateway以获取令牌。API网关应该调用用户服务来验 查看详情

微服务权限终极解决方案(spring-cloud-gateway-oauth2)

...微服务权限解决方案应该是这样的,认证服务负责认证,网关负责校验认证和鉴权,其他API服务负责处理自己的业务逻辑。安全相关的逻辑只存在于认证服务和网关服务中,其他服务只是单纯地提供服务而没有任何安全相关逻辑... 查看详情

apigateway

一、为什么需要API网关?在微服务架构下,所有的后端服务都变成了一个个微小的API,外部客户端的一次业务请求,可能需要调用内部多个服务接口才能完成,如果让客户端与各个微服务直接通信,会有如... 查看详情

oauth2.0实现分布式认证授权-网关搭建(代码片段)

一网关作用网关整合OAuth2.0有两种思路:1.一种是认证服务器生成jwt令牌,所有请求统一在网关层验证,判断权限等操作;2.另一种是由各资源服务处理,网关只做请求转发。本案例就是API网关作为OAuth2.0的资源服务... 查看详情

支持 MQTT 的 API 网关 (IOT)

】支持MQTT的API网关(IOT)【英文标题】:APIGatewaywithMQTTsupport(IOT)【发布时间】:2019-04-2500:12:05【问题描述】:最近我和物联网部门一起工作,我们的项目正在讨论和创建应用程序的核心架构。客户端规范是我们必须使用MQTT协议在... 查看详情

服务网关(zuul)

...对类似上面的问题,我们要如何解决呢?答案就是:服务网关!使用服务网关具有以下几个优点:●易于监控,可在微服务网关收集监控数据并将其推送到外部系统进行分析.●易于认证.可在服务网关上进行认证,然后转发请求到... 查看详情