申请令牌 - CreateEmbedAuthToken
功能介绍
通过Token Exchange协议获取用户令牌。
URI
POST /v1/app/auth/token
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| Content-Type | 是 | String | 参数解释: 请求体类型。 约束限制: 不涉及。 取值范围: 固定值:application/x-www-form-urlencoded。 默认取值: 不涉及。 |
| X-Cloud-Doc-AppId | 是 | String | 参数解释: APP ID。 约束限制: 不涉及。 取值范围: [1-128]个字符。 默认取值: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| grant_type | 是 | String | 参数解释: 授权类型。 约束限制: 不涉及。 取值范围: urn:ietf:params:oauth:grant-type:token-exchange。 默认取值: 不涉及。 |
| subject_token | 是 | String | 参数解释: IdP 签发的凭证(OIDC id_token / 自签 JWT)。 约束限制: 不涉及。 取值范围: [1-1024]个字符。 默认取值: 不涉及。 |
| subject_token_type | 是 | String | 参数解释: 凭证类型标识。 约束限制: 不涉及。 取值范围: 默认取值: 不涉及。 |
| client_id | 是 | String | 参数解释: APP ID。 约束限制: 不涉及。 取值范围: [1-128]个字符。 默认取值: 不涉及。 |
| client_secret | 是 | String | 参数解释: APP Secret。 约束限制: 不涉及。 取值范围: [1-256]个字符。 默认取值: 不涉及。 |
响应参数
状态码:200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| X-Trace-Id | String | 业务跟踪ID。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| access_token | String | 参数解释: 获取的 access token。 取值范围: [1-1024]个字符。 |
| refresh_token | String | 参数解释: 获取的 refresh token。 取值范围: [1-1024]个字符。 |
| token_type | String | 参数解释: Token类型。 取值范围: |
| expires_in | Long | 参数解释: access token 的有效期,单位:秒。 取值范围: [1-86400]。 |
| scope | String | 参数解释: 授权范围。 取值范围: [0-2048]个字符。 |
状态码:400
| 参数 | 参数类型 | 描述 |
|---|---|---|
| X-Trace-Id | String | 业务跟踪ID。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 错误码。 |
| error_msg | String | 错误描述。 |
状态码:500
| 参数 | 参数类型 | 描述 |
|---|---|---|
| X-Trace-Id | String | 业务跟踪ID。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 错误码。 |
| error_msg | String | 错误描述。 |
请求示例
使用subject_token值为aaa.bbb.ccc的换取用户access_token。
https://{Endpoint}/v1/app/auth/token
{
"grant_type" : "urn:ietf:params:oauth:grant-type:token-exchange",
"subject_token" : "aaa.bbb.ccc",
"subject_token_type" : "urn:ietf:params:oauth:token-type:id_token",
"client_id" : "xxxxxx-yyyy-23",
"client_secret" : "xxxxxxxxxxxxxxxxx"
} 响应示例
状态码:200
{
"access_token" : "aaa.bbb.ccc",
"refresh_token" : "ddd.eee.cfffcc",
"token_type" : "Bearer",
"expires_in" : 7200,
"scope" : "*"
} 状态码:400
{
"error_code" : "KPGE.00001000",
"error_msg" : "Parameter error."
} 状态码
| 状态码 | 描述 |
|---|---|
| 200 | 请求成功。 |
| 400 | 错误响应。 |
| 500 | 错误响应。 |
错误码
请参见错误码。