客户端凭证模式
OAuth 2.0 中的客户端凭证模式,适用于服务端之间的授权(无用户参与)。客户端(如应用服务器)直接向授权服务器提交 “客户端 ID + 客户端密钥”,验证通过后获取访问令牌,凭令牌访问受保护资源(如 API 接口)。流程简单,无用户交互,核心用于机器间的后台授权。该模式支持使用任意员工的id进行访问接口。
# 请求说明
请求方式:POST + application/json
请求路径:https://${填入所在云的域名}/oauth2.0/token?thirdTraceId=${随机字符串}
注意!!!本接口需要缓存至少6600秒,在6650秒-7200秒之间应重新调用本接口刷新token,否则在7200秒后会token过期,请求失败,建议根据错误码[20016]增加重试策略
# 请求参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| appId | String | 是 | 自建应用的 appId |
| appSecret | String | 是 | 自建应用的 appSecret |
| permanentCode | String | 是 | 永久授权码 |
| grantType | String | 是 | 授权模式,固定值为:app_secret |
# 请求示例
{
"appId": "FSAID_xxxxx",
"permanentCode": "3F9xxxxxCA5",
"appSecret": "e4d0xxxxxdff",
"grantType": "app_secret"
}
# 返回参数
| 参数 | 必须 | 说明 |
|---|---|---|
| openUserId | 是 | 用户的 openUserId |
| accessToken | 是 | 授权凭证 token,有效期两个小时 |
| expiresIn | 是 | 过期时间 |
| appId | 是 | 自建应用的 appId |
| ea | 是 | 企业账号 |
# 返回示例
{
"openUserId": "FSCID_xxxxxxx",
"accessToken": "BCxxxxxDF2",
"expiresIn": 7084,
"appId": "FSAID_xxxxx",
"ea": "fxxxx1",
"errorCode": 0,
"errorMessage": "success",
"traceId": "E-O.fxxxxx6b"
}