OAuth2插件

说明

  • OAuth2 插件使用 Webflux OAuth2 实现,用于支持 OAuth 协议。

插件设置

请参考运维部署的内容,选择一种方式启动shenyu-admin。比如,通过 本地部署 启动Apache ShenYu后台管理系统。

  • shenyu-admin 基础配置 —> 插件管理 —> oauth2 ,设置为开启。如果用户不想使用此功能,请在 admin 后台停用此插件。

    OAuth2插件 - 图1

插件使用

  • 在网关的pom文件中添加oauth2的支持
  1. <!-- apache shenyu oauth2 plugin start-->
  2. <dependency>
  3. <groupId>org.apache.shenyu</groupId>
  4. <artifactId>shenyu-spring-boot-starter-plugin-oauth2</artifactId>
  5. <version>${project.version}</version>
  6. </dependency>
  7. <!-- apache shenyu oauth2 plugin end-->
  • shenyu-bootstrap模块配置oauth2
  1. spring:
  2. security:
  3. oauth2:
  4. client:
  5. registration:
  6. <这里填入你的 client-registration-id>:
  7. client-id: <这里填入你的 client-id>
  8. client-secret: <这里填入你的 client-secret>
  9. # 下面这部分是授权服务器的配置
  10. provider:
  11. <这里填入你的 client-registration-id>:
  12. authorization-uri: <这里填入你的 authorization-uri>
  13. token-uri: <这里填入 access-token-uri>
  14. user-info-uri: <这里填入 user-info-uri>
  15. jwk-set-uri: <这里填入 jwk-set-uri>
  • 在网关的配置文件中配置 spring.security.oauth2 的相关配置,详细配置说明可参考 Spring Webflux OAuth2
  • 配置选择器和规则作为您需要 OAuth2 授权的请求地址,默认放行所有请求。关于选择器和规则配置的更多说明,请参考:选择器和规则管理