文档中心>安全凭证服务>API文档>STS相关接口>获取联合身份临时访问凭证

获取联合身份临时访问凭证

最近更新时间:2025-09-12 03:29:25

我的收藏

1. 接口描述

接口请求域名: sts.tencentcloudapi.com 。

使用说明

  1. 返回一组临时身份访问凭证,包含token和获取该身份的临时密钥;

  2. 当您需要将当前账号下的部分权限和资源临时委托给第三方(如合作伙伴、外包团队),且希望避免下发永久密钥时,调用此接口;

  3. 临时身份的权限为:当前调用账号的权限和输入参数 Policy 权限的交集;

  4. 此接口仅支持永久密钥调用。

典型场景

  1. 代理应用程序集中申请临时访问凭证,下发给企业网络内的其他分布式终端应用。例如:终端应用上传文件到COS。

  2. 将指定资源临时委托给第三方代理。例如:申请临时访问凭证,分发给企业外部团队,仅允许查看某个存储桶,有效期结束后权限自动回收。

最佳实践

  1. 临时访问凭证在有效期内(Expiration)都可以使用,建议在有效期内重复使用,避免业务请求该接口频率达到上限被限频;

  2. 授予临时访问凭证权限的CAM策略,建议严格遵循最小权限原则;

  3. 建议不要使用主账号永久密钥,对该接口进行调用。

默认接口请求频率限制:600次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:GetFederationToken。
Version String 公共参数,本接口取值:2018-08-13。
Region String 公共参数,详见产品支持的 地域列表
Name String 您可以自定义调用方英文名称,由字母组成。
示例值:readOnly
Policy String 注意:
1、策略语法参照 CAM 策略语法
2、策略中不能包含 principal 元素。
3、该参数需要做urlencode,服务端会对该字段做urldecode, 并按处理后Policy授予临时访问凭证权限,请按规范传入参数。
示例值:%7B%22version%22%3A%222.0%22%2C%22statement%22%3A%5B%7B%22effect%22%3A%22allow%22%2C%22action%22%3A%22sts%3AAssumeRole%22%2C%22resource%22%3A%22%2A%22%7D%5D%7D
DurationSeconds Integer 指定临时证书的有效期,单位:秒,默认1800秒,主账号最长可设定有效期为7200秒,子账号最长可设定有效期为129600秒。
示例值:1800

3. 输出参数

参数名称 类型 描述
Credentials Credentials 临时访问凭证
ExpiredTime Integer 临时访问凭证有效的时间,返回 Unix 时间戳,精确到秒
示例值:1686664553
Expiration String 临时访问凭证有效的时间,以 iso8601 格式的 UTC 时间表示
注意:此字段可能返回 null,表示取不到有效值。
示例值:2023-06-13T13:55:53Z
RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 获取临时访问凭证

授权临时访问凭证具有以下权限:
{"version":"2.0","statement":[{"effect":"allow","action":["name/cos:PutObject"],"resource":["qcs::cos:ap-beijing:uid/123456:prefix//123456/bucketA/*"]}]}

注意,因为GET请求需要给所有参数做urlencode,所以下面示例中的Policy参数是做了两次urlencode的结果。

输入示例

https://sts.tencentcloudapi.com/?Action=GetFederationToken
&Name=SUN
&Policy=%257B%2522version%2522%3A%25222.0%2522%2C%2522statement%2522%3A%255B%257B%2522effect%2522%3A%2522allow%2522%2C%2522action%2522%3A%255B%2522name%2Fcos%3APutObject%2522%255D%2C%2522resource%2522%3A%255B%2522qcs%3A%3Acos%3Aap-beijing%3Auid%2F123456%3Aprefix%2F%2F123456%2FbucketA%2F%2A%2522%255D%257D%255D%257D
&<公共请求参数>

输出示例

{
    "Response": {
        "Credentials": {
            "Token": "kTRt***",
            "TmpSecretId": "AKID***",
            "TmpSecretKey": "Eo28***"
        },
        "Expiration": "2023-06-14T05:06:57Z",
        "ExpiredTime": 1686719217,
        "RequestId": "59a5e07e-4147-4d2e-a808-dca76ac5b3fd"
    }
}

5. 开发者资源

腾讯云 API 平台

腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

API Inspector

用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码 描述
InternalError.DbError DB错误。
InternalError.EncryptError 加密失败。
InternalError.GetAppIdError 获取appid错误。
InternalError.GetSeedTokenError 获取token失败。
InternalError.SystemError 系统内部错误,如网络错误。
InvalidParameter.AccountNotAvaliable 账号不存在或不可用。
InvalidParameter.ExtendStrategyOverSize 扩展策略过大。
InvalidParameter.GrantOtherResource 越权访问资源。
InvalidParameter.OverTimeError 过期时间超过阈值。
InvalidParameter.ParamError 参数错误。
InvalidParameter.PolicyTooLong 策略过长。
InvalidParameter.ResouceError 策略资源六段式错误。
InvalidParameter.StrategyFormatError 策略语法错误。
InvalidParameter.StrategyInvalid 非法策略。
InvalidParameter.TempCodeNotAvaliable 临时Code无效。
ResourceNotFound.RoleNotFound 账号对应的角色不存在。
UnauthorizedOperation 未授权操作。
UnsupportedOperation 操作不支持。