1. 接口描述
接口请求域名: sts.tencentcloudapi.com 。
本接口(AssumeRoleWithSAML)用于根据 SAML 断言申请角色临时访问凭证。
注意:当使用签名方法 V3 调用本接口时,请求头无须传入 X-TC-Token, 但 Authorization 需要传入值 SKIP。
默认接口请求频率限制:200次/秒。
注意:当使用签名方法 V3 调用本接口时,请求头无须传入 X-TC-Token, 但 Authorization 需要传入值 SKIP。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
Action | 是 | String | 公共参数,本接口取值:AssumeRoleWithSAML。 |
Version | 是 | String | 公共参数,本接口取值:2018-08-13。 |
Region | 是 | String | 公共参数,详见产品支持的 地域列表。 |
SAMLAssertion | 是 | String | base64 编码的 SAML 断言信息 示例值:c2FtbC***Rpb24= |
PrincipalArn | 是 | String | 扮演者访问描述名 示例值:qcs::cam::uin/7989***:saml-provider/OneLogin |
RoleArn | 是 | String | 角色访问描述名 示例值:qcs::cam::uin/7989***:roleName/OneLogin-Role |
RoleSessionName | 是 | String | 会话名称 示例值:test |
DurationSeconds | 否 | Integer | 指定临时访问凭证的有效期,单位:秒,默认 7200 秒,最长可设定有效期为 43200 秒 示例值:1800 |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
Credentials | Credentials | 对象里面包含 Token,TmpSecretId,TmpSecretKey 三元组 |
ExpiredTime | Integer | 临时访问凭证的过期时间,返回 Unix 时间戳,精确到秒 示例值:1543914376 |
Expiration | String | 临时访问凭证的过期时间,以 ISO8601 格式的 UTC 时间表示 示例值:2018-12-04T09:06:16Z |
RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 SAML 断言申请角色临时访问凭证
SAML 断言申请角色临时访问凭证
输入示例
POST / HTTP/1.1
Host: sts.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: AssumeRoleWithSAML
<公共请求参数>
{
"RoleArn": "qcs::cam::uin/798950673:roleName/OneLogin-Role",
"PrincipalArn": "qcs::cam::uin/798950673:saml-provider/OneLogin",
"SAMLAssertion": "c2FtbCBhc3NlcnRpb24=",
"RoleSessionName": "test"
}
输出示例
{
"Response": {
"Credentials": {
"Token": "1siMD***5ue",
"TmpSecretId": "AKID****H58",
"TmpSecretKey": "q95K****yoh"
},
"ExpiredTime": 1543914376,
"Expiration": "2018-12-04T09:06:16Z",
"RequestId": "4daec797-9cd2-4f09-9e7a-7d4c43b2a74c"
}
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: GitHub Gitee
- Tencent Cloud SDK 3.0 for Java: GitHub Gitee
- Tencent Cloud SDK 3.0 for PHP: GitHub Gitee
- Tencent Cloud SDK 3.0 for Go: GitHub Gitee
- Tencent Cloud SDK 3.0 for Node.js: GitHub Gitee
- Tencent Cloud SDK 3.0 for .NET: GitHub Gitee
- Tencent Cloud SDK 3.0 for C++: GitHub Gitee
- Tencent Cloud SDK 3.0 for Ruby: GitHub Gitee
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
错误码 | 描述 |
---|---|
InternalError.DbError | DB错误。 |
InternalError.EncryptError | 加密失败。 |
InternalError.GetAppIdError | 获取appid错误。 |
InternalError.GetRoleError | 获取角色失败。 |
InternalError.GetSeedTokenError | 获取token失败。 |
InternalError.IllegalRole | 角色非法。 |
InternalError.PbSerializeError | pb打包失败。 |
InternalError.SystemError | 系统内部错误,如网络错误。 |
InternalError.UnknownError | 未知错误。 |
InvalidParameter.AccountNotAvaliable | 账号不存在或不可用。 |
InvalidParameter.ExtendStrategyOverSize | 扩展策略过大。 |
InvalidParameter.GrantOtherResource | 越权访问资源。 |
InvalidParameter.OverLimit | 超过频率限制。 |
InvalidParameter.OverTimeError | 过期时间超过阈值。 |
InvalidParameter.ParamError | 参数错误。 |
InvalidParameter.PolicyTooLong | 策略过长。 |
InvalidParameter.ResouceError | 策略资源六段式错误。 |
InvalidParameter.StrategyFormatError | 策略语法错误。 |
InvalidParameter.StrategyInvalid | 非法策略。 |
InvalidParameter.TempCodeNotAvaliable | 临时Code无效。 |
RequestLimitExceeded | 请求的次数超过了频率限制。 |
ResourceNotFound.RoleNotFound | 账号对应的角色不存在。 |
UnauthorizedOperation | 未授权操作。 |