OAuth2相关
Posted changfanchangle
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OAuth2相关相关的知识,希望对你有一定的参考价值。
OAuth的,可以理解为【第三方】想取得【用户】在【系统】内的信息,【用户】同意后,【系统】授予【第三方】访问用的【令牌】,在优先的时间内,进行有限的访问。
【第三方】的目的是取得的【系统】内的信息,方法是使用授权用的【令牌】,手段是让【用户】进行授权。
角色划分
英文 | 中文 | 说明 | 备注 |
---|---|---|---|
Third-party application | 第三方应用程序 | 第三者,想要用户存在其他服务器上的信息 | ---- |
HTTP service | HTTP服务提供商 | 即系统,存有用户的信息 | ---- |
Resource Owner | 资源所有者 | 即:用户 | ---- |
User Agent | 用户代理 | 浏览器,客户端 | ---- |
Authorization server | 认证服务器 | 认证用服务器,属于系统的 | ---- |
Resource server | 资源服务器 | 接口请求,处理用接口 | --- |
四种方式
状态 | 简易说明 | 特征 | 备注 |
---|---|---|---|
授权码(authorization-code) | 利用链接跳转的方式,授权码->令牌 | 前后端结合的方式 | 最常用,安全性高 |
隐藏式(implicit) | 利用链接跳转的方式,直接取得令牌 | 纯前端 | 安全性有限,因此,一般有效期是session |
密码式(password) | 用户给出服务器用户名和密码,然后服务器用用户名密码取得令牌 | 基本没见过 | |
客户端凭证(client credentials) | 只是一个身份确认,一般权限比较低 | --- | 对第三方的凭证,感觉上类似于心跳了 |
以授权码为例:
- A站生成一个B站的授权码请求链接(包含A站的回调地址)。发给用户,让用户跳转。
- 用户跳转后,用户在B站进行登录,B站询问用户是否同意授权给A站。
- 用户同意后。B站根据授权码请求链接中的回调地址,对A站的接口进行回调,在回调请求中附带【授权码】
- A站取得【授权码】之后,A站使用【授权码】请求B站,得到【令牌】
- A站使用【令牌】访问A站里,用户的信息。
一些名词
状态 | 说明 | 作用方向 | 备注 |
---|---|---|---|
response_type | 模式,如code标识授权码模式 | 请求授权时 | --- |
redirect_uri | 回调地址 | 请求授权时 | --- |
scope | 授范围,如all | 请求授权时 | --- |
grant_type | 授权方式,如authorization_code,password等 | 取得令牌时 | --- |
以上是关于OAuth2相关的主要内容,如果未能解决你的问题,请参考以下文章
E/TokenRequestor:您的OAuth2相关配置错误,请检查。详细错误:UNREGISTERED_ON_API_CONSOLE