【发布时间】:2019-07-03 03:10:03
【问题描述】:
我的应用程序在带有 zuul 代理的(spring)网关后面有微服务。还有内部(弹簧)oauth2 授权服务器。我想为来自外部的微服务调用实现 client_credentials 授权类型 - 用于 M2M 通信。
当我在其 application.yml 中配置网关 client_id 和 client_secret 请求来自网关但没有请求者检查 - oauth 授权网关本身,因此根本没有授权。我可以使用授权代码授予类型,但它需要(Web 客户端)用户可能没有的 Web 客户端授权。
如果我从 oauth 微服务请求身份验证令牌,我将获得此应用的正确令牌。
如何强制网关使用请求者的 client_id 和 client_secret 从 oauth 获取令牌? - 例如我可以通过标题提供它们作为基本授权。 或者我可以向网关提供请求者从 oauth 获得的令牌吗?
这个问题和另一个很相似:Implementing authentication and authorization using Zuul Proxy, Oauth2 on REST Microservices 除了可能没有 Web 客户端,而是一个外部微服务。
【问题讨论】:
标签: spring spring-security oauth-2.0 netflix-zuul gateway