auth2.0四种授权模式分别是什么
1.授权码模式
授权码模式(authorization code)是功能最完整、流程最严密的授权模式。它的特点就是通过客户端的后台服务器,与"服务提供商"的认证服务器进行互动。
该模式的步骤如下:
1)用户同意授权,同意后跳转到回调地址,并且附上授权码。
2)客户端拿着授权码去"服务提供商"的认证服务器换取令牌。
3)拿着令牌去资源服务器拿数据。
授权码模式是一种双重认证模式,客户端需要向认证服务器申请两次。第一次用来获取授权码,第二次用来换取令牌。这种方式安全性较高,适用于比较重要的授权场景。
2.隐式授权模式
隐式授权模式(Implicit Grant)是OAuth2.0中简化的授权模式,它的特点就是不需要客户端向认证服务器申请授权码,只需要直接向认证服务器申请令牌即可。
该模式的步骤如下:
1)用户同意授权,同意后跳转到回调地址,并且附上令牌。
2)拿着令牌去资源服务器拿数据。
隐式授权模式只有一次请求,安全性较低,适用于安全级别要求不高的授权场景。
3.密码模式
密码模式(Resource Owner Password Credentials Grant)是OAuth2.0中最简单的授权模式,它的特点就是客户端拥有用户的账号密码,直接向认证服务器申请令牌。
该模式的步骤如下:
1)客户端拥有用户的账号密码,直接向认证服务器申请令牌。
2)拿着令牌去资源服务器拿数据。
密码模式只有一次请求,安全性也较低,但是可以用于客户端拥有用户的账号密码,比如第三方客户端。
4.客户端模式
客户端模式(Client Credentials Grant)是OAuth2.0中最简单的授权模式,它的特点就是客户端拥有自己的账号和密码,向认证服务器申请令牌。
该模式的步骤如下:
1)客户端拥有自己的账号和密码,向认证服务器申请令牌。
2)拿着令牌去资源服务器拿数据。
客户端模式只有一次请求,安全性也较低,但是可以用于客户端拥有自己的账号和密码,比如第三方客户端。
猜您想看
-
如何破解内网hash值
如何破解内网h...
2023年07月21日 -
怎么使用C#通过VisualStudio2017搭建网页API接口
一、准备工作首...
2023年05月26日 -
让vertx作为websocket client实例分享
Vert.x作...
2023年05月25日 -
怎样调整苹果手机的震动强度和时长?
如何调整苹果手...
2023年04月27日 -
如何在宝塔中设置 Nginx 邮件代理
SEO软文:如...
2023年05月08日 -
如何在csgo中开挂
一、什么是开挂...
2023年05月15日