获取联邦认证unscoped token(OpenID Connect ID token方式) - CreateUnscopedTokenWithIdToken
功能介绍
该接口可以用于通过OpenID Connect ID token方式获取联邦认证unscoped token。Unscoped token不能用来鉴权,您需要使用unscoped token通过接口获取联邦用户的临时访问密钥和securitytoken获取临时访问密钥和securitytoken,后续使用获取到的临时访问密钥和securitytoken作为凭证访问云服务。
该接口可以使用全局区域的Endpoint和其他区域的Endpoint调用。IAM的Endpoint请参见:地区和终端节点。
调试
您可以在API Explorer中调试该接口。
授权信息
当前API调用无需策略权限。
URI
POST /v3/OS-FEDERATION/identity_providers/{idp_id}/protocols/{protocol_id}/auth
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
idp_id | 是 | String | 身份提供商名称。 |
protocol_id | 是 | String | 协议id。 |
请求参数
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
Authorization | 是 | String | OpenID Connect身份提供商的ID Token,格式为Bearer {ID Token}。 |
响应参数
状态码为 201 时:
参数 | 参数类型 | 描述 |
|---|---|---|
X-Subject-Token | String | 签名后的Token。 |
参数 | 参数类型 | 描述 |
|---|---|---|
object | 获取的token详情。 |
参数 | 参数类型 | 描述 |
|---|---|---|
expires_at | String | 过期时间。 说明: UTC时间,格式为YYYY-MM-DDTHH:mm:ss.ssssssZ,日期和时间戳格式参照ISO-8601,如:2023-06-28T08:56:33.710000Z。 |
methods | Array of strings | token获取方式,联邦认证默认为mapped。 |
issued_at | String | 生成时间。 说明: UTC时间,格式为YYYY-MM-DDTHH:mm:ss.ssssssZ,日期和时间戳格式参照ISO-8601,如:2023-06-28T08:56:33.710000Z。 |
object | 用户详情。 | |
Array of objects | 角色/策略详情。 | |
Array of objects | catalog详情。 |
请求示例
获取联邦认证unscoped token(OpenID Connect ID token方式)。
POST https://{address}/v3/OS-FEDERATION/identity_providers/{idp_id}/protocols/{protocol_id}/auth 响应示例
状态码为 201 时:
创建成功。
{
"token" : {
"expires_at" : "2018-03-13T03:00:01.168000Z",
"methods" : [ "mapped" ],
"issued_at" : "2018-03-12T03:00:01.168000Z",
"user" : {
"OS-FEDERATION" : {
"identity_provider" : {
"id" : "idptest"
},
"protocol" : {
"id" : "oidc"
},
"groups" : [ {
"name" : "admin",
"id" : "45a8c8f..."
} ]
},
"domain" : {
"id" : "063bb260a480...",
"name" : "IAMDomain"
},
"name" : "FederationUser",
"id" : "suvmgvUZc4PaCOEc..."
}
}
} 状态码为 400 时:
参数无效。
{
"error" : {
"code" : 400,
"message" : "Request parameter 'idp id' is invalid.",
"title" : "Bad Request"
}
} 状态码为 401 时:
认证失败。
{
"error" : {
"code" : 401,
"message" : "The request you have made requires authentication.",
"title" : "Unauthorized"
}
} 状态码为 403 时:
没有操作权限。
{
"error" : {
"code" : 403,
"message" : "You are not authorized to perform the requested action.",
"title" : "Forbidden"
}
} 状态码为 404 时:
未找到相应资源。
{
"error" : {
"code" : 404,
"message" : "Could not find %(target)s: %(target_id)s.",
"title" : "Not Found"
}
} 状态码为 500 时:
系统内部异常。
{
"error" : {
"code" : 500,
"message" : "An unexpected error prevented the server from fulfilling your request.",
"title" : "Internal Server Error"
}
} 状态码
状态码 | 描述 |
|---|---|
201 | 创建成功。 |
400 | 参数无效。 |
401 | 认证失败。 |
403 | 没有操作权限。 |
404 | 未找到相应资源。 |
500 | 系统内部异常。 |
错误码
请参见错误码。

