我一直在尝试用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
我一直在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传递给下游