5

我在使用 Amazon S3 时收到拒绝访问错误,但不知道原因。

我的设置如下:

STATIC_URL = 'http://s3.amazonaws.com/%s/' % AWS_STORAGE_BUCKET_NAME

什么会导致访问被拒绝错误?我已经验证我的密钥是正确的。

4

1 回答 1

7

您在上面显示的 URL 将解析为 S3 中的存储桶。为了使用这样的 URL 成功访问该存储桶,存储桶的权限必须授予对该存储桶的“公共读取”访问权限。此外,存储桶中的每个对象或文件也必须授予“公共读取”访问权限。

您是否希望任何人都可以读取存储桶和存储桶中的所有内容?如果是这样,请确保正确设置了权限。但是请注意,向存储桶本身授予“公共读取”权限将允许任何人列出存储桶的内容。这通常是不必要的,可能应该避免。

另请注意,密钥(我假设您的意思是您的 AWS 访问密钥和秘密密钥)仅在您通过 API 访问 S3 时适用。如果您只是通过浏览器使用 URL 访问它,则不会在请求中使用凭据。

于 2012-11-01T13:29:52.587 回答