0002-00000002

问题描述

STS请求中的AccessKey ID不存在。

问题原因

  • 您发起了STS请求,但是所用的AccessKey ID不正确。

  • 您使用了正确的AccessKey来发起基于RAM用户的认证请求,但是在请求中误加了SecurityToken参数,导致被OSS判断为STS请求,且所提供的AccessKey ID不是STS服务返回的临时访问凭证中的AccessKey ID,进而导致错误。

  • AccessKey ID已过期。

问题示例

  • 您希望通过STS的方式进行请求的签名认证,但是所用的AccessKey ID是RAM用户的AccessKey ID,不是STS服务返回的临时凭证中的AccessKey ID。

  • 您希望通过RAM用户的方式进行认证,但是请求URL中包含了security-token字段或在请求头中包含了x-oss-security-token字段,导致被OSS判断为STS请求。

  • 您使用了STS返回的AccessKey ID对OSS发起请求,但是AccessKey ID已过期。

解决方案

  • 如果希望采用STS的认证方式,需要确认所使用的AccessKey ID与STS服务所返回的临时凭证中的AccessKey ID保持一致。具体操作,请参见使用STS临时访问凭证访问OSS

  • 如果希望采用RAM用户的认证方式,则需要保证调用SDK请求函数或发起URL签名请求时,不提交Security Token参数。即URL参数中不能包括security-token字段,且请求头中也不能包含x-oss-security-token字段。具体操作,请参见使用RAM用户访问密钥发起请求

  • 请求STS重新获取临时访问凭证。具体操作,请参见使用STS临时访问凭证访问OSS