日常bb 日常bb
首页
文章
笔记
冥思
其他
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

日常bb

想起来全是问题,做起来才有答案。
首页
文章
笔记
冥思
其他
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Java

  • Redis

  • Spring

    • 基础使用

    • Spring Security

      • Spring Security学习总结
      • Spring Security
      • Spring Security OAuth2
        • Oauth2.0协议
        • Spring Security Oauth
      • 实战单体应用(认证授权服务+资源服务)
      • 实战模块化(认证授权服务+资源服务)
      • Spring Security OAuth2自定义授权模式
    • 收藏

  • 工具

  • 概念

  • 容器

  • 实战

  • 文章
  • Spring
  • Spring Security
rcbb
2022-10-03
目录

Spring Security OAuth2

# Spring Security Oauth2

# Oauth2.0协议

Oauth2.0是目前最流行的授权机制,用来授权第三方应用,获取用户数据。

阮一峰-OAuth 2.0 的一个简单解释 (opens new window)

解决了哪些问题?

  1. 颁发的令牌明确限制只能访问部分资源,并不是所有。
  2. 令牌会存在有效期,有效期过后需要用户重新授权。
  3. 不会暴露用户的密码,而是使用的令牌。

Oauth2.0协议中的角色:

  • 服务提供商Provider:谁提供令牌谁就是服务提供商。
  • 资源所有者Resource Owner:资源是指用户相关数据,所有者是用户。
  • 第三方应用Client:想获取资源的应用。

Oauth2.0协议运行流程

Oauth2.0四种授权方式

  1. 授权码模式(authorization code)
  2. 简化模式(implicit)
  3. 密码模式(resource owner password credentials)
  4. 客户端模式(client credentials)

阮一峰-OAuth 2.0 的四种方式 (opens new window)

# Spring Security Oauth

Spring Security Oauth

实现Oauth协议中服务提供商这个角色它的所有功能,实际上就是两个服务器。

  • 认证服务器

认证服务器中需要实现四种授权模式(授权码模式、简化模式、客户端模式、密码模式),Spring Security OAuth里面四种模式已经实现了,用户信息生成Token和存储也提供了一套默认的实现。

  • 资源服务器

所谓的资源服务器就是要保护我们的资源,采用Spring Security过滤器链加上个OAuth2AuthenticationProcessingFilter。

OAuth2AuthenticationProcessingFilter

作用:从请求中获取我们认证服务器发出去的Token,获取到Token后会根据我们在认证服务器中存储Token的存储策略去对应的存储中找到Token信息,然后根据用户信息是否存在,是否有权限来判断是否能访问资源。


#Spring Security
上次更新: 10/7/2022
Spring Security
实战单体应用(认证授权服务+资源服务)

← Spring Security 实战单体应用(认证授权服务+资源服务)→

最近更新
01
Sign in with Apple(苹果授权登陆)
12-29
02
Nacos容器化
11-11
03
好用的截图工具
11-10
更多文章>
Theme by Vdoing | Copyright © 2021-2022 日常bb | 鄂ICP备17023998号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式