SpringBoot集成oauth2(客户端模式)

本文介绍如何使用Spring Boot实现OAuth2客户端模式,包括验证服务器与资源服务器的搭建过程及JWT Token的配置。

客户端模式:
请求一个接口,咱们的后端服务A直接请求验证服务B拿到token,服务A再用token访问资源服务C。

这里用模块化开发,一个资源服务器,一个验证服务器
在这里插入图片描述

依赖

Springboot 版本为2.3.3.RELEASE

<!--Security + oauth2 + jwt -->
 <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-security</artifactId>
 </dependency>
 <dependency>
     <groupId>org.springframework.security.oauth</groupId>
     <artifactId>spring-security-oauth2</artifactId>
     <version>2.5.0.RELEASE</version>
 </dependency>
 <dependency>
     <groupId>org.springframework.security</groupId>
     <artifactId>spring-security-jwt</artifactId>
     <version>1.1.1.RELEASE</version>
 </dependency>
 <dependency>
     <groupId>io.jsonwebtoken</groupId>
     <artifactId>jjwt</artifactId>
     <version>0.9.1</version>
 </dependency>
 <dependency>
     <groupId>com.sun.xml.ws</groupId>
     <artifactId>jaxws-rt</artifactId>
     <version>2.3.3</version>
 </dependency>

 <!--redis + 连接池-->
 <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-data-redis</artifactId>
 </dependency>
 <dependency>
     <groupId>org.apache.commons</groupId>
     <artifactId>commons-pool2</artifactId>
 </dependency>

yml

server:
  port: 9910
myoauth2:
  clientId: admin1
  clientSecret: 123456
  tokenEndpoint: http://localhost:9910

1.配置一个验证服务器 9910 端口

/**
 * 验证服务器;EnableAuthorizationServer注解表示是个验证服务器
 */
@Configuration
@EnableAuthorizationServer
public class Config_Authorization extends AuthorizationServerConfigurerAdapter {

    @Value("${myoauth2.clientId}")
    private String clientId;
    @Value("${myoauth
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值