首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过oauth服务器使用zool通过spring网关授权请求

通过oauth服务器使用zool通过spring网关授权请求
EN

Stack Overflow用户
提问于 2019-02-09 04:34:13
回答 1查看 1.3K关注 0票数 0

我的应用程序在带有zuul代理的(spring)网关后面有微服务。还有内部(spring) oauth2授权服务器。我希望为来自外部的微服务调用实现client_credentials授权类型-用于M2M通信。

当我在网关的application.yml中配置client_id和client_secret时,请求通过网关,但没有请求者检查- oauth授权网关本身,因此根本没有授权。我可以使用授权码授权类型,但它需要(web客户端)用户可能没有的web客户端授权。

如果我从oauth微服务请求身份验证令牌,我将获得此应用程序的正确令牌。

如何强制网关使用请求者的client_id和client_secret从oauth获取令牌?-例如,我可以通过header提供它们作为基本授权。或者,我可以向网关提供请求者从oauth获得的令牌吗?

这个问题与另一个问题非常相似:Implementing authentication and authorization using Zuul Proxy, Oauth2 on REST Microservices,除了可能没有web客户端,而是一个外部微服务。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-21 20:44:22

我已经回答了问题Implementing authentication and authorization using Zuul Proxy, Oauth2 on REST Microservices

在我的例子中,最重要的事情是配置zuul代理来将authorization头转发到下游服务。最初我考虑使用zuul过滤器,但解决方案要简单得多--只需为zuul配置敏感的头文件:

代码语言:javascript
运行
复制
server:
  port: 8080
zuul:
  sensitiveHeaders: Cookie,Set-Cookie # <--- this line
  routes:
    spring-security-oauth-resource:
      path: /spring-security-oauth-resource/**
      url: http://localhost:8081/spring-security-oauth-resource
    oauth:
      path: /oauth/**
      url: http://localhost:8083/spring-security-oauth-server/oauth

在使用oauth对客户端/用户进行成功身份验证后,网关会将JWT令牌转发到下游。当然,因为此网关必须允许对oauth资源的未认证访问,并要求对所有其他资源进行认证。

有关这些主题的更多详细信息,请参阅文章https://www.baeldung.com/spring-security-zuul-oauth-jwt

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54599803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档