为什么RemoteTokenServices经常调用UAA?

时间:2019-06-16 15:26:31

标签: spring-boot spring-security single-sign-on spring-security-oauth2

有一个由Spring Security OAuth2保护的微服务。 Authorization_code中的授权类型。应用程序列表为:

1- Zuul网关作为OAuth2客户端。

2- UAA(授权服务器)。

3到10微米作为资源服务器,并支持Zuul。

4- TokenStore是JdbcTokenStore。

每件事都按预期运行。

在资源服务器中,由于这些应用程序(如Micro)之间的不兼容以及序列化和反序列化的问题,用于检索UserInfo的是RemoteTokenServices而不是DefaultTokenServices,所以到任何资源服务器中都是:< / p>

security:
  oauth2:
    resource:
      user-info-uri: http://localhost:9191/uaa/user 

对我来说,有一个重要问题为什么每个资源服务器都会为任何请求调用UAA ?(要查看源代码click me)不是最好在收到每个令牌的第一个请求后立即调用UAA,并且将主体存储在资源服务器中以供下一个对该令牌的下一个请求,直到不需要再次调用UAA为止。

另一方面,每个资源服务器在接收到对任何不同令牌的第一个请求后,只会立即调用UAA,并将其用于下一个请求吗?

0 个答案:

没有答案