以下は、A バケットの cfn テンプレートで bucketpolicy を設定する例です。
"mybucketpolicy" : {
"Type" : "AWS::S3::BucketPolicy",
"Properties" : {
"PolicyDocument" : {
"Id" : "MyPolicy",
"Statement" : [ {
"Sid" : "ReadAccess",
"Action" : [ "s3:GetObject" ],
"Effect" : "Allow",
"Resource" : { "Fn::Join" : [
"", [ "arn:aws:s3:::", { "Ref" : "mybucket" } , "/*" ]
] },
"Principal" : {
"AWS" : { "Fn::GetAtt" : [ "mygroup", "Arn" ] }
}
} ]
},
"Bucket" : { "Ref" : "mybucket" }
}
}
}
ポリシーを mybucket に加えて別のバケットに適用したい場合、どうすればよいですか?
やらなくてはいけませんか:
- まったく新しいバケットポリシーを作成する 「mybucketpolicy2」と言ってみましょう。これは上記と非常によく似ていますか?
- 上記の「Statement」配列に、新しいバケット名で項目をもう 1 つ追加するだけですか? はいの場合、これは上記の「バケット」キーと競合しますよね?
- 他の方法?
PS: aws cfn フォーラムで同じ質問をしましたが、aws フォーラムよりも SO の方が早く回答が得られることに気付きました。