当我打开有权访问的 Amazon S3 对象的链接时,为什么会出现“访问被拒”错误?

上次更新日期:2021 年 4 月 13 日

我有权访问 Amazon Simple Storage Service (Amazon S3) 中的对象。但是,当我打开 Amazon S3 控制台中为该对象提供的 HTTPS 链接时,收到了一条“访问被拒绝”错误消息。如何修复此问题?

解决方案

使用 Amazon S3 控制台下载对象,而不是打开对象的 HTTPS 链接。在下载对象时,请求包含您用于登录 Amazon S3 控制台的凭证。

由于对象的 HTTPS 链接不包含用户凭证,因此,针对对象的请求是匿名的。对于针对非公共对象的匿名请求,Amazon S3 将返回“访问被拒”错误。要在对象请求中包含用户凭证,请考虑设置预签名 URL。

对于访问对象的经过身份验证的请求,保持对象私有并为用户设置预签名 URL,是一种安全最佳做法。但是,如果您的使用案例支持对对象的公共读取访问权限,请修改对象的权限。要设置对对象的公共读取访问权限,请参阅向匿名用户授予只读权限。