spring启动,zuul,oauth2身份验证问题

rur96b6h  于 2021-07-15  发布在  Java
关注(0)|答案(1)|浏览(390)

我一直在尝试用zuul、eureka和spring boot构建一个应用程序,最近我决定尝试登录。作为提醒,我已经配置了身份验证服务(使用OAuth2.0),并且可以使用curl成功地进行身份验证。我还可以向其他具有受保护资源的微服务发出get请求(同样只使用curl,因为我可以在身份验证头中注入令牌)。我担心的是,我想用zuul做为一个门户[在此处输入图像描述][1]][1]
当我直接调用上的身份验证服务时,zuul在端口8080上运行,auth服务在端口1992上运行http://localhost:19992/oauth/token endpoint,它正在生成令牌,如下所示。[[在此处输入图像描述][2]][2]但是,当我尝试通过zuul服务器访问身份验证服务时,它显示未授权rizedhttp://localhost:8080/auth-service/oauth/token[[在此处输入图像描述][3]][3]
myzuul server application.yml配置

  1. eureka:
  2. client:
  3. register-with-eureka: true
  4. fetch-registry: true
  5. instance:
  6. hostname: zuul-service
  7. instance-id: ${eureka.instance.hostname}:${random.int}
  8. prefer-ip-address: true
  9. zuul:
  10. sensitive-headers: Cookie,Set-Cookie,Authorization```
  11. My Question is
  12. 1. why token is not generated through zuul server?
  13. 2. How token propagate through multiple microservices?
  14. Any help is much appreciated.
  15. Thanks in advance.
  16. [1]: https://i.stack.imgur.com/bQUvE.png
  17. [2]: https://i.stack.imgur.com/Spsqf.png
  18. [3]: https://i.stack.imgur.com/yp84x.png
vddsk6oq

vddsk6oq1#

我一直在增加sensativeheaders的授权。这将不允许授权标头传播下游服务。我删除了敏感标题的授权,然后它像魅力一样工作。

相关问题