使用STS临时访问凭证访问OSS时提示“The OSS Access Key Id you provided does not exist in our records”错误

问题描述

通过STS服务给其他用户颁发一个临时访问凭证,在使用临时访问凭证在规定时间内访问OSS资源时,提示“The OSS Access Key Id you provided does not exist in our records”错误。

问题原因

使用STS临时访问凭证访问OSS时发生该报错的原因如下:

  • AccessKeyID禁用或不存在。
  • 临时访问凭证已过期,过期后自动失效。

解决方案

  1. 登录阿里云控制台的AccessKey 管理
  2. 检查访问OSS使用的AccessKeyID是否存在,并查看其状态。
    • 如果您的AccessKeyID处于禁用状态,请开启。
    • 如果您的AccessKeyID不存在请创建,并使用新的AccessKeyID访问OSS。
  3. 如果您的AccessKeyID为开启状态,请查看代码中设置的临时访问凭证的有效时间。如果已过期,请使用临时访问密钥(AccessKeyId和AccessKeySecret)向App服务器申请新的临时访问凭证。具体操作请参见使用STS临时访问凭证访问OSS中的步骤五:获取临时访问凭证
    说明
    • 临时访问凭证有效时间单位为秒,最小值为900,最大值以当前角色设定的最大会话时间为准。详情请参见设置角色最大会话时间
    • 有关角色会话名称roleSessionName的命名规范,请参见AssumeRole

相关文档

适用于

  • 对象存储OSS