当前位置:网站首页>OAuth2图文快速入门
OAuth2图文快速入门
2022-08-04 11:47:00 【LoneWalker、】
活动地址:CSDN21天学习挑战赛
OAuth2是什么?
OAuth 2.0是应用之间彼此访问数据的授权协议,其最终的目的是为了给第三方应用颁发一个有时效性的令牌access_token,第三方应用根据这个access_token就可以去获取用户的相关资源。
OAuth2应用场景
1、系统间授权
比如我打开王者荣耀,它要求我用微信或者qq登录,我登录到微信,然后微信重定向回王者,此时王者荣耀就可以拿到我在微信的用户数据了。
2、保证微服务安全
3、企业内部应用认证授权
比如单点登录
OAuth2授权流程
OAuth2相关概念
令牌:令牌是OAuth2中的核心组件,它代表了一次授权的结果,表示客户端已经被授予它所请求的权限
客户端:是代表资源拥有者访问受保护资源的软件。简单来说OAuth2授权给谁,谁就是OAuth2的客户端。
资源拥有者:是有权将访问权限授权给客户端的主体。
受保护的资源:是能够通过http服务器进行访问,访问时需要OAuth2下发的令牌(token)。
授权服务器:是一个HTTP服务器,它在OAuth2系统中充当中央组件。授权服务器对资源拥有者和客户端进行身份认证,让资源拥有者向客户端授权、为客户端颁发令牌。
授权范围:表示一组访问受保护资源的权限,它界定了客户端获取的权限范围。
刷新令牌:与访问令牌的不同在于,该令牌不会被发送给受保护资源,它只是为了当访问令牌过期后,客户端不必重新发起授权请求,而是用该令牌向授权服务器请求换取一个新的用于获取受保护资源的访问令牌。
总结
博文到这里可能还是过于抽象,我们从实际生活中举例来更好地理解。
比如小区大门和楼栋有门禁系统,进入需要输入密码或刷卡,我是做电商的,快递员经常需要来取件,如果我把密码告诉快递员他就拥有和我一样的权限了,这样肯定是不好的。如果此时有授权机制,快递员想进来需要得到我的授权,我在家授权后,门禁系统生成一个令牌,快递员得到这个令牌三天或一周之内都可以小区和楼栋。
令牌与密码的作用是一样的,都可以进入系统,但是有三点差异。
- 令牌是短期的,到时间会自动失效,无法修改。密码一般长期有效,我不改它就一直可以用。
- 令牌可以被撤销,立即失效。以上例而言,我可以随时取消快递员的令牌。密码一般不允许被他人撤销。
- 令牌有权限范围(scope),比如只能进小区或某个楼栋。密码一般是完整权限。
上面这些设计,保证了令牌既可以让第三方应用获得权限,同时又随时可控,不会危及系统安全。
边栏推荐
猜你喜欢
随机推荐
子查询
到底什么是JS原型
A Survey of Multi-Label Classification under Supervised and Semi-Supervised Learning
COVID-CT新冠肺炎检测(DenseNet网络)
Leetcode - using sequence traversal features first completed 114. The binary tree to the list
网管交换机与非网管交换机如何选择?
TPC藏宝计划IDO自由协议复利模式开发功能分析
backbone核心详解系列——RepVGG
【Qt】解决 “由于找不到Qt5Cored.dll,无法继续执行代码”(亲测有效)
深度学习------pytorch实现cifar10数据集
技术分享| 融合调度系统中的电子围栏功能说明
Move the blog to CSDN
244页pdf!《2022 中国云计算生态蓝皮书》发布
项目管理前景
【目标检测】------yolo:xml和txt文件相互转化
Disc burning steps
七夕还没选好礼物,快送这套美妆秘籍,保准没错~~
你知道吗?那些专属于代码的浪漫~
【目标检测】yolov3特征提取网络------Darknet53网络及pytorch实现
Flutter 使用 json_serializable 解析 JSON 支持泛型