本文介绍OSS返回403错误的原因和解决方案。

AccessDenied

  • 错误消息:AccessDenied
  • 问题原因:没有相应的访问权限。
  • 解决方案:请参见OSS权限问题及排查

InvalidAccessKeyId

  • 错误消息
    • The OSS Access Key Id you provided is disabled.
    • The OSS Access Key Id you provided does not exist in our records.
    • The OSS Access Key Id contains non-acceptable characters, which accepts only alphanumeric characters[0-9a-zA-Z] and several special characters[._=]
  • 问题原因:AccessKeyId不存在或已失效。
  • 解决方案:登录阿里云管理控制台的AccessKey管理,确认访问OSS使用的AccessKeyID存在且处于启用状态。

    如果您的AccessKeyID处于禁用状态,请开启。如果您的AccessKeyID不存在请新建,并使用新的AccessKeyID访问OSS。

SignatureDoesNotMatch

  • 错误消息:The request signature we calculated does not match the signature you provided.
  • 问题原因:签名错误。
  • 解决方案:请参见签名常见问题进行排查。

RequestTimeTooSkewed

  • 错误消息:The difference between the request time and the current time is too large.
  • 问题原因:请求发起的时间超过OSS服务器当前时间15分钟。
  • 解决方案:请检查发送请求设备的系统时间,并根据时区调整到正确时间。
    发送请求的机器或设备的系统时间,调整标准如下:
    • OSS的系统时间采用GMT时间,您的设备的系统时间需要调整到GMT时间,或与其相对应的时区时间。GMT是零时区的区时,即世界标准时间。
      • Windows系统查看时区的方法:单击控制面板 > 时钟、语言和区域 > 设置日期和时间

        例如,时区栏的+08:00表示您的设备系统时区是东八区。

      • Linux或Unix系统查看时区的方法:执行date -R查看时间和时区。
        下图中的+0800表示您的设备系统时区是东八区。+0800
    • 支持在多个地域使用OSS。每个地域都使用GMT时间,您发送请求的设备系统时间也是GMT时间。

ImageDamage

  • 错误信息:The image file may be damaged.
  • 问题原因:图片文件有部分信息丢失或损坏,导致无法正常识别或处理。
  • 排查方法:请确保源文件没有损坏,如有损坏请重新上传本地文件。

UserDisable

  • 错误信息:UserDisable
  • 问题原因:账号欠费或者由于安全原因,账号被禁用。
  • 解决方案:请检查账号是否已欠费,或联系技术支持进行安全受限核查。

AccessForbidden

  • 错误信息:CORSResponse: This CORS request is not allowed. This is usually because the evalution of Origin, request method / Access-Control-Request-Method or Access-Control-Requet-Headers are not whitelisted by the resource's CORS spec.
  • 问题原因:没有配置CORS或CORS配置错误。
  • 解决方案:请参见设置跨域访问进行排查。

InvalidObjectState

  • 错误信息:The operation is not valid for the object's state.
  • 问题原因:下载归档类型Object时,以下两种情况会导致报错无效的Object状态。
    • 未提交RestoreObject请求或者上一次提交RestoreObject已超时。
    • 已提交RestoreObject请求,但数据的RestoreObject操作还没有完成。
  • 解决方案:请参见RestoreObject进行排查。