使用 JWT 的微服务身份验证和授权
Microservice Authentication and Authorization using JWT
我创建了两个微服务让 A 和 B。每个微服务都有自己的数据库和用户 table 用于存储用户名和密码。我维护相同的签名密钥以在所有微服务中生成密钥。
A 微服务的用户可以轻松访问其微服务的安全 api。但是假设我想访问 B 微服务的安全 api 那么它会在使用 UserDetailsService 在 spring 安全上下文中设置身份验证对象时出错,因为 B 微服务用户 [=20= 中不存在微服务用户].
我需要做什么来维护微服务与 JWT 令牌之间的安全 api 通信?
在 Micro-service 架构中,我们需要一个单独的 Micro-service 身份验证服务。所有请求都将在 API 网关针对此 Auth 服务进行验证。 Auth 服务将 return JWT 用于有效请求,并将传递给所有 micro-services.
您可以参考以下内容以便更好地理解:
https://microservices.io/patterns/security/access-token.html
https://microservices.io/patterns/apigateway.html
我创建了两个微服务让 A 和 B。每个微服务都有自己的数据库和用户 table 用于存储用户名和密码。我维护相同的签名密钥以在所有微服务中生成密钥。
A 微服务的用户可以轻松访问其微服务的安全 api。但是假设我想访问 B 微服务的安全 api 那么它会在使用 UserDetailsService 在 spring 安全上下文中设置身份验证对象时出错,因为 B 微服务用户 [=20= 中不存在微服务用户].
我需要做什么来维护微服务与 JWT 令牌之间的安全 api 通信?
在 Micro-service 架构中,我们需要一个单独的 Micro-service 身份验证服务。所有请求都将在 API 网关针对此 Auth 服务进行验证。 Auth 服务将 return JWT 用于有效请求,并将传递给所有 micro-services.
您可以参考以下内容以便更好地理解:
https://microservices.io/patterns/security/access-token.html https://microservices.io/patterns/apigateway.html