我正在尝试使我的整个S3存储桶可访问特定用户,但是当我尝试添加策略时:
{
"Id": "Policy1504234405196",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1505369345344",
"Action": [
"s3:GetObject",
"s3:PutObject"
],
"Effect": "Allow",
"Resource": "arn:aws:s3:::testhjh/*",
"Principal": {
"AWS": [
"arn:aws:iam::3164343231:user/testdfs"
]
}
}
]
}
错误:策略的动作无效。
请我建议我上述政策出了什么问题?
如果您想授予特定用户或一组用户(例如系统管理员)的访问权限,则请勿使用Bucket Policy 。
而不是直接向IAM用户分配权限。
例如,您可以将此策略添加到IAM中的testdfs
用户:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowGetPut",
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:PutObject"
],
"Resource": [
"arn:aws:s3::: testhjh/*"
]
}
]
}
这可以使水桶策略清洁程序,如果用户离开您的组织,则更容易清理。
(如果您想知道策略有什么问题,那可能是Id
字段。)