我有一个政策在我的桶上宣布:
{
"Sid": "Policy 1",
"Effect": "Allow",
"Principal": "*",
"Action": [
"s3:DeleteObject",
"s3:GetObject",
"s3:PutObject"
],
"Resource": "arn:aws:s3:::<bucket_name>/*",
"Condition": {
"StringLike": {
"aws:Referer": "http://example.com/*"
}
}
}
我声明了一个条件aws:Referer因为我希望只从某个域访问对象。从我的节点API,我添加s3对象作为内部下载的附件。
this.response.attachment(Key)
this.body = request(Location, { encoding: null })
但是,它总会产生“Unhandled rejection StatusCodeError:403”。该文件可以上传到S3存储桶,我可以获取该对象。问题在于这个部分需要下载。我尝试删除策略中的条件,下载工作正常。我的存储桶政策可能会出现什么问题?