我有一台需要将文件夹与S3同步的Windows机器。
我试试
application.cfc
收到错误“调用PutObject操作时发生客户端错误(AccessDenied):访问被拒绝”
同一目录的s3 rm 和 s3 cp 工作正常。
我拥有以下权限:
"C:\Program Files\amazon\AWSCLI\aws.exe" s3 sync components
s3://test/MyTest/ --acl public-read --
cache-control "public, must-revalidate, proxy-revalidate, max-age=1800"
答案 0 :(得分:4)
您需要执行以下所有操作:
不仅要使用PutObject,还要进行S3同步工作,使用此政策:
{
"Version": "2012-10-17",
"Statement": [
{
"Resource": [
"arn:aws:s3:::YOUR_BUCKET_NAME/*"
],
"Sid": "Stmt1464826210000",
"Effect": "Allow",
"Action": [
"s3:DeleteObject",
"s3:GetBucketLocation",
"s3:GetObject",
"s3:ListBucket",
"s3:PutObject"
]
}
]
}
答案 1 :(得分:3)
同步文件还需要READ权限,因为AWS Command-Line Interface (CLI)需要查看现有文件以确定它们是否已存在或已被修改。
因此,您还需要授予ListBucket
权限。
如果您使用aws s3 cp
代替aws s3 sync
,则不需要这样做。