将传入令牌中继到其他服务

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将传入令牌中继到其他服务相关的知识,希望对你有一定的参考价值。

我试图理解100%资源服务器如何工作,将传入令牌中继到其他服务。

我有一个带有spring boot eureka的微服务架构,对@EnableAuthorizationServer进行Bearer身份验证。我在zuul中使用了一个带有@EnableZuulProxy和@ EnableOAuth2Sso的边缘服务来进行请求输入,我希望安全性在那时集中,但当然,我不能没有安全性的微服务,每个都是@EnableResourceServer。

一切正常。

问题是:使用指向oauth服务器或边缘服务的security.oauth2.resource.user-info-uri,该承载令牌始终针对oauth服务器进行验证,即如果它通过10个微服务请求,它会对oauth服务器验证令牌10次吗?如果令牌有效,我有没有办法向oauth服务器请求10次?

答案

好吧,对于承载令牌类型,似乎总是需要在每个资源服务器上对认证服务器进行认证。

解决方案是使用JWT令牌。

如下所述:https://developer.okta.com/blog/2018/04/02/client-creds-with-spring-boot#extra-credit-reduce-the-number-of-calls-to-the-authorization-server

我们使用签名的JWT,这意味着您可以在本地验证它们,而不是在每次请求时从API服务向授权服务器发出额外请求。

Diagram JWT

而已。

以上是关于将传入令牌中继到其他服务的主要内容,如果未能解决你的问题,请参考以下文章

Spring boot Oauth2:使用 Feign、Ribbon、Zull 和 Eureka 从客户端到资源的令牌中继

如何在传入的http请求标头中添加授权令牌[关闭]

为啥我们更喜欢授权标头将承载令牌发送到服务器而不是 URL 编码等其他技术

如何将一些附加字段添加到此 Spring Boot 服务生成的 JWT 令牌中?

其他人上传到我的文件夹的保管箱访问令牌

如何使用 Spring Cloud Security 实现 OAuth2“令牌交换”