蒸汽记忆
用户5835
添加快捷方式
分享
OIDC & OAuth2.0 认证协议最佳实践系列 02 - 授权码模式(Authorization Code)接入 Authing
输入“/”快速插入内容
OIDC
& OAuth2.0 认证协议最佳实践系列 02 - 授权码模式(Authorization Code)接入
Authing
导语
在上一篇文章中,我们整体介绍
OIDC
/ OAuth2.0 协议,本次我们将重点围绕
授权码模式(Authorization Code)以及接入
Authing
进行介绍,
从而让你的系统快速具备接入
用户
认证的标准体系。
接入
Authing
后的优势
在整个
Authing
的身份源中,已经包含了社会化登录方式 微信、微博、QQ、FB、TW ...等等,企业登录方式 飞书、钉钉、企微、AD 等等,只要你完成了接入 Authing 就意味着你的业务系统具备了这些能力。
1.
授权码模式(
Authorization Code
)
授权码模式适合应用具备后端服务器的场景。授权码模式
要求
应用必须能够安全存储密钥,用于后续使用授权码换 access_token。授权码模式需要通过浏览器与终端
用户
交互完成认证授权,然后通过浏览器重定向将授权码发送到后端服务,之后进行授权码换 token 以及 token 换用户信息。
1.1
整体
流程
整体上,有以下
流程
:
1.
在你的应用中,让
用户
访问登录链接,浏览器跳转到
Authing
,用户在 Authing 完成认证。
2.
浏览器接收到一个从
Authing
服务器发来的授权码。
3.
浏览器通过重定向将授权码发送到你的应用后端。
4.
你的应用服务将授权码发送到
Authing
获取 AccessToken 和 IdToken,如果需要,还会返回 refresh token。
5.
你的应用后端现在知道了
用户
的身份,后续可以保存用户信息,重定向到前端其他页面,使用 AccessToken 调用
资源
方的其他
API
等等。
流程图如下:
1.2
准备接入
1.2.1
在
Authing
创建应用及配置
创建应用
配置登录回调和登出回调,配置为你实际项目的地址,我们在这里配置 localhost 用于测试。
若你想匹配多个登录/登出回调
可以使用 ‘*’ 号进行通配,登录/登出回调可以是如下
格式
回调地址
说明