临时安全凭证概述
临时安全凭证介绍
当您使用API方式访问华为云时,您可以使用Security Token Service(STS)创建临时安全凭证,并将这些临时安全凭证提供给受信任的用户,用于访问您的华为云资源。临时安全凭证的工作方式与永久访问密钥基本一致,仅存在以下差异:
- 临时安全凭证是短期凭证。临时安全凭证的有效时间配置为几分钟到几小时。一旦临时安全凭证到期,华为云将不再接受这些临时安全凭证进行签名的API请求。
- 临时安全凭证不会进行存储,而是动态生成。临时安全凭证到期前,只要用户仍然拥有使用密钥的权限,就可以请求获取新的临时安全凭证。
- 临时安全凭证包含临时AK/SK和会话令牌security_token,相比于永久访问密钥,在使用时除了使用临时AK/SK对请求签名之外,还需要额外将security_token传入X-Security-Token的Header头。
因此,与永久访问密钥相比,临时安全凭证具有以下优势:
- 不必随应用程序分配或嵌入永久访问密钥。
- 临时安全凭证的生命周期较短,因此相比永久访问密钥更加安全。
临时安全凭证与区域
临时安全凭证由STS生成,STS属于区域级服务,您可以选择任何部署STS区域的终端节点进行STS API调用。建议将调用请求发送到地理位置离您较近的区域,以减少延迟。无论您的临时安全凭证来自于哪个区域,其都会在所有区域内生效。有关更多信息,请参阅地区和终端节点。
临时安全凭证的版本迭代
创建临时安全凭证目前存在两套API,请求路径分别以v3.0和v5开头,即CreateTemporaryAccessKeyByAgency API和AssumeAgency API。这2个API创建出来的临时安全凭证都包含会话令牌security_token,CreateTemporaryAccessKeyByAgency API生成的令牌security_token被称为IAM Security Token,AssumeAgency API生成的令牌security_token被称为STS Security Token。STS Security Token相比IAM Security Token在安全性、权限控制灵活性上更有优势,因为STS Security Token承载了更多的上下文信息,包括但不局限于:绑定的身份策略、调用者的身份信息、会话策略、标签等内容,能表达更加丰富的认证信息,同时也使用了更加安全的加解密策略。因此更建议使用AssumeAgency API生成临时安全凭证,后续内容只介绍AssumeAgency API的使用,CreateTemporaryAccessKeyByAgency API的使用请参见访问密钥管理。
约束与限制
使用临时安全凭证可以访问大多数华为云服务,部分云服务当前并不支持AssumeAgency API生成的临时安全凭证,支持的服务列表请参阅《统一身份认证用户指南(新版)》的“支持身份策略与信任委托的云服务列表”章节。如果您需要使用的云服务当前不支持AssumeAgency AP生成的临时安全凭证,可以切换到CreateTemporaryAccessKeyByAgency API进行使用。