Spring Security & OATH & OpenID Connect

本文深入探讨OAuth2.0与OpenIDConnect在授权与认证场景的应用,解析为何需要accesstoken及refreshtoken,阐述SpringSecurity在实现过程中的作用。了解如何使用OAuth2.0获取API访问权限,以及OpenIDConnect如何实现用户登录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

OATH 2.0 & OpenID Connect

  1. https://www.youtube.com/watch?v=996OiexHze0 (good for OATH2.0 & OpenID Connect)
  2. https://www.oauth.com/

Best Practices

  • Use OAuth 2.0 for Authorization scenarios to:

    • Grant access to your API

    • Get access to user data in other systems

  • Use OpenID Connect for Authentication scenarios to:

    • Log in users

    • Making your accounts available in other systems

  1. Web API与OAuth:既生access token,何生refresh token

为什么要刷新 access token 呢?一是因为 access token 是有过期时间的,到了过期时间这个 access token 就失效,需要刷新;二是因为一个 access token 会关联一定的用户权限,如果用户授权更改了,这个 access token 需要被刷新以关联新的权限。

为什么要专门用一个 token 去更新 access token 呢?如果没有 refresh token,也可以刷新 access token,但每次刷新都要用户输入登录用户名与密码,多麻烦。有了 refresh token,可以减少这个麻烦,客户端直接用 refresh token 去更新 access token,无需用户进行额外的操作。

这段客户端代码与前一步中客户端代码的主要区别是少了下面传递 resource owner 用户名与密码的代码,这就是 refresh token 的用途所在 —— 不需要ResourceOwner的用户名与密码(client_id和client_secret是需要的)就可以刷新 access token。

Spring Security

  1. https://spring.io/guides/topicals/spring-security-architecture/ (Chinese ver: https://www.jianshu.com/p/61d3af5fa1ba )
  2. https://www.jianshu.com/p/6dd03375224d
  3. http://www.cnblogs.com/xingxueliao/p/5911292.html
  4. http://projects.spring.io/spring-security-oauth/docs/oauth2.html
  5.  

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值