pQu*_*123 1 amazon-s3 amazon-web-services
这是我所做的:
1) 向 IAM 用户添加了以下策略:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:*"
],
"Resource": "arn:aws:s3:::bucket-name"
}
] }
Run Code Online (Sandbox Code Playgroud)
2)我使用 aws-cli 作为该用户登录
3)运行以下命令:
aws s3 sync ./dist s3://bucket-name/ --delete
Run Code Online (Sandbox Code Playgroud)
我得到了一堆这样的:
调用 PutObject 操作时发生错误 (AccessDenied):拒绝访问
奇怪的是,这工作正常:
aws s3api list-objects --bucket bucket-name
Run Code Online (Sandbox Code Playgroud)
这意味着我的政策在某种程度上起作用了......
提前致谢
pQu*_*123 11
好的,我想通了。政策必须是:
[
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:*"
],
"Resource": [
"arn:aws:s3:::bucket-name",
"arn:aws:s3:::bucket-name/*"
]
}
]
}
]
Run Code Online (Sandbox Code Playgroud)
注意资源的差异。基本上,存储桶本身被视为与其内部对象不同的资源。
| 归档时间: |
|
| 查看次数: |
9647 次 |
| 最近记录: |