当前位置: 首页 > 知识库问答 >
问题:

Spring boot、zuul、oauth2身份验证问题

刘阳荣
2023-03-14

我一直在尝试用Zuul、Eureka和Spring boot构建一个应用程序,最近我决定尝试登录。作为提醒,我已经配置了身份验证服务(使用OAuth2.0),并且可以使用curl成功地进行身份验证。我还可以向其他拥有受保护资源的微服务发出get请求(同样,只能使用CURL,因为我可以在身份验证头中注入令牌)。我关心的是,我想以Zuul为门户来做这件事。[![在此处输入图像说明][1]][1]

当我在http://localhost:19992/oauth/tokenendpoint上直接调用身份验证服务时,Zuul运行在端口8080上,Auth服务运行在端口1992上,它生成的令牌如下所示。[![在此处输入映像描述][2]][2]但是,当我试图通过zuul服务器访问身份验证服务时,它显示的是未经授权的http://localhost:8080/auth-service/oauth/token[![在此处输入映像描述][3]][3]

我的Zuul Server Application.yml配置

eureka:
  client:
    register-with-eureka: true
    fetch-registry: true
  instance:
    hostname: zuul-service
    instance-id: ${eureka.instance.hostname}:${random.int}
    prefer-ip-address: true
zuul:
  sensitive-headers: Cookie,Set-Cookie,Authorization```

My Question is
1. why token is not generated through zuul server?
2. How token propagate through multiple microservices?

Any help is much appreciated. 
Thanks in advance. 
  [1]: https://i.stack.imgur.com/bQUvE.png
  [2]: https://i.stack.imgur.com/Spsqf.png
  [3]: https://i.stack.imgur.com/yp84x.png

共有1个答案

艾和通
2023-03-14

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

 类似资料:
  • 尝试将ember应用程序连接到oauth2身份验证服务时,获得一个[error=“unauthorized”,error_description=“访问此资源需要完全身份验证”]。如有任何建议,我们将不胜感激。我花了几天时间想解决这个问题,但没有效果。 下面是app.js中的代码

  • 我想通过Spring Cloud介绍Zuul作为一个API网关在少数服务前面。 我关心的问题: > 网关将位于许多服务的前面 某些服务可能公开不需要身份验证的endpoint null

  • 我正在尝试使用OAuth2实现开发一个带有Spring Security性的rest api。但是如何删除基本身份验证呢。我只想向body发送用户名和密码,并在postman上获取令牌。 要删除基本身份验证,并从邮递员的get token中发送body标记中的用户名密码吗 我遇到了一些问题{"错误":"未经授权","error_description":"没有客户端身份验证。尝试添加适当的身份验证

  • 我已经使用Spring boot zuul和eureka服务配置了我的微服务。现在我需要验证所有路由/REST API调用。我的意思是,对于所有API,客户端发送一个accessToken。在zuul服务上,在路由到特定服务之前,我必须使用accessToken调用一个微服务(auth服务),该auth服务将检查用户是否存在发送的accessToken。如果accessToken有效,则只应进行路

  • 背景 我想实现本文中提出的设计。 客户端首先使用IDP(OpenID Connect/oauth2)进行身份验证 IDP返回一个访问令牌(不透明的令牌,没有用户信息) 客户端使用授权头中的访问令牌通过API网关进行调用 API网关使用访问令牌向IDP发出请求 IDP验证访问令牌是否有效,并以JSON格式返回用户信息 API网关将用户信息存储在JWT中,并使用私钥对其进行签名。然后将JWT传递给下游