OAuth2.0
OAuth 引入了一个授权层,用来分离两种不同的角色:客户端和资源所有者。客户端来申请资源,资源所有者同意以后,资源服务器可以向客户端颁发令牌。客户端通过令牌,去请求数据。也就是说,OAuth 的核心就是向第三方应用颁发令牌。而且,OAuth 2.0 规定了四种获得令牌的流程。你可以选择最适合自己的那一种,向第三方应用颁发令牌。
具体的OAuth学习建议仔细研读阮一峰的教程,
http://www.ruanyifeng.com/blog/2019/04/oauth_design.html
下面我们来使用spring cloud security 和 spring cloud oauth2两个组件来简单实现授权流程。
授权服务
下面我们来使用spring cloud security 实现一个授权服务,首先来引入依赖:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-oauth2</artifactId>
</dependency>
</d