跳转至

2.1.1 授权说明


1. 场景简述

第三方APP通过调用supOS平台提供的 supOS Server API 相关接口获取数据,因为涉及到数据隐私,所以在使用前必须获得OAuth 2.0的授权。

supOS平台采用OAuth 2.0作为授权协议,目前提供两种方式认证:客户端模式、授权码模式。

2 客户端模式

1. 获取Access Token

URL

GET /oauth2/client/v1/accessToken
Parameters

Type Name Description Schema
Query appid
required
第三方用户唯一凭证;
appid是APP的唯一标识
string
Query grantType
required
授权类型,此值固定为 client_credential string
Query secret
required
第三方用户唯一凭证密钥,即appsecret;
appid是APP的密钥
string
在supOS操作系统中,通过APP设计器创建APP之后就会生成一个appid和secret,它们相当于supOS鉴权登录的用户名和密码,请妥善保存。

Responses

HTTP Code Description Schema
200 如果成功返回,即可在返回包中获取到 Access Token ResponseSuccess
400 常规的错误 GeneralError
2. refreshToken 获取 AccessToken
当accessToken过期后,可以使用 refreshToken 换取新的 accessToken 访问 supOS Server API 接口数据。

URL

GET /oauth2/client/v1/refreshToken
Parameters

Type Name Description Schema
Query refreshToken
required
刷新密码 string

Responses

HTTP Code Description Schema
200 如果成功返回,即可在返回包中获取到 Access Token ResponseSuccess
400 常规的错误 GeneralError

3 授权码模式

1. 获取authorizeCode

URL

GET /oauth2/code/v1/authorize
Parameters

Type Name Description Schema
Query appid
required
申请账户登录成功后,分配给应用的appid string
Query redirectUri
required
成功授权后的回调地址 string
Query responseType
required
授权类型,此值固定为“code” string
Query scope
optional
授权的列表 string
Query state
optional
client端的状态值 string
  • redirectUri 是成功授权后的回调地址,指的是APP用户发起请求时,所传的回调地址参数;
  • APP用户在完成授权之后,会跳转到 redirectUri ,并带上临时授权码code;
  • APP用户通过临时授权码code调用接口获取accessToken。

Responses

HTTP Code Description Schema
200 如果成功返回,即可在返回包中获取到 Access Token No Content
400 常规的错误 GeneralError
2. 获取Access Token

URL

GET /oauth2/code/v1/accessToken
Parameters

Type Name Description Schema
Query appid
required
申请账户登录成功后,分配给应用的appid string
Query code
required
授权码模式获取的 authorizeCode string
Query grantType
required
授权类型,此值固定为 authorization_code string
Query logoutUri
optional
APP登出链接;
当supOS用户登出注销之后,同时调用此链接地址登出注销APP用户信息
string
Query secret
optional
第三方用户唯一凭证密钥,即appsecret;
appid是APP的密钥
string
在supOS操作系统中,通过APP设计器创建APP之后就会生成一个appid和secret,它们相当于supOS鉴权登录的用户名和密码,请妥善保存。

Responses

HTTP Code Description Schema
200 如果成功返回,即可在返回包中获取到 Access Token ResponseSuccess
400 常规的错误 GeneralError
3. 通过 refreshToken 获取 AccessToken
当accessToken过期后,可以使用 refreshToken 换取新的 accessToken 访问 supOS Server API 接口数据。

URL

GET /oauth2/code/v1/refreshToken
Parameters

Type Name Description Schema
Query refreshToken
required
刷新密码 string

Responses

HTTP Code Description Schema
200 如果成功返回,即可在返回包中获取到 Access Token ResponseSuccess
400 常规的错误 GeneralError
4. 获取当前supOS登录的用户名

URL

GET /oauth2/v1/{accessToken}/username
Parameters

Type Name Description Schema
Query accessToken
required
string

Responses

Type Name Description Schema
Query userName 用户名 string