1. アクセス・コントロール・リストで S3 バケットを作成し、パブリック・アクセスが出来ない代わりに、ルート・アカウントからのアクセスと現ユーザーからのアクセスが可能な状態にします。
2. バケット・ポリシーを以下のような形式に変更します。以下に説明されている値の決定方法についての詳細は、「特定の IAM ロールへの Amazon S3 バケット・アクセスを制限する方法」を参照してください。
以下は、AWS のエキスパート向けにまとめられた、値を導き出す方法です。
775488040364 AWS アカウント番号
lansa-secure S3 セキュア・バッケト名
AROAI4S5N5QLPZ5QHQIJ2 paas-ec2 のロール ID (aws iam get-role -–role-name ROLE-NAME)
AIDAJFF4TKJHEGHMMDUUQ 管理者の IAM ユーザー ID (aws iam get-user -–user-name USER-NAME)
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::775488040364:role/paas-ec2"
},
"Action": "s3:ListBucket",
"Resource": "arn:aws:s3:::lansa-secure"
},
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::775488040364:role/paas-ec2"
},
"Action": [
"s3:GetObject",
"s3:PutObject",
"s3:DeleteObject"
],
"Resource": "arn:aws:s3:::lansa-secure/*"
},
{
"Effect": "Deny",
"Principal": "*",
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::lansa-secure",
"arn:aws:s3:::lansa-secure/*"
],
"Condition": {
"StringNotLike": {
"aws:userId": [
"AROAI4S5N5QLPZ5QHQIJ2:*",
"AIDAJFF4TKJHEGHMMDUUQ",
"775488040364"
]
}
}
}
]
}
|