将Amazon S3存储桶连接到其他服务器 - IAM
问题描述:
我试图通过存储桶策略将Amazon S3连接到其他服务。将Amazon S3存储桶连接到其他服务器 - IAM
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {"arn:aws:iam::ACCOUNT-ID:user/augmen",
}
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation",
"s3:GetObject"
],
"Resource": ["arn:aws:s3:::rajatv.input",
"arn:aws:s3:::rajatv.input/*"]
}
]
}
仍然得到这样的错误:
- 该策略包含无效的Json
- 无效桶语法
- 没有资源
答
看来你想给桶访问特定的IAM用户。如果是这样,最好的方法是自己在IAM用户上放置一个策略,以便权限仅适用于他们。
此策略将授予存储桶访问权限给任何具有IAM策略的用户。要添加它,去给用户,添加内嵌政策:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "PermitBucketAccess",
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation",
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::rajatv.input",
"arn:aws:s3:::rajatv.input/*"
]
}
]
}
斗策略,这是适用于桶本身,是最适合用来授予访问大家,而一个IAM策略是最好的用于授予特定IAM用户,组和角色的权限。
答
委托人都需要有这样的格式:
"Principal": {"AWS": ["arn:aws:iam::ACCOUNT-ID-WITHOUT-HYPHENS:root"]},
我试过这个,但错误:缺少必填字段主体? – Swap
将其添加到IAM用户(通过内嵌策略) - 而不是桶策略。因为它附加到用户,它不需要一个委托人。 –