概要
指定のIPからしかアクセスできないS3バケットポリシーを記載する
※正確なIPを設定しないと、当該バケットにアクセスが不可能となりRootユーザでバケットポリシーを削除する以外のアクセス方法が無くなるため注意する。
バケットポリシー
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "IPAllow",
"Effect": "Deny",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::bucketname/*",
"Condition": {
"NotIpAddress": {
"aws:SourceIp": [
"111.111.111.111/32", # 許可するIPアドレス
"222.222.222.222/32"
]
}
}
}
]
}
appendix
指定IPもしくは指定ロールからのアクセスを許可する場合のバケットポリシー
参考:指定のIAMロールを持ったリソースからしかアクセスできないs3バケットポリシー
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "IPAllow",
"Effect": "Deny",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::bucketname/*",
"Condition": {
"StringNotLike": {
"aws:userid": [
"AROAxxxxxxxxxxxxxxxxx:*", #許可するロールのロールID
"AROAxxxxxxxxxxxxxxxxx:*"
]
},
"NotIpAddress": {
"aws:SourceIp": [
"111.111.111.111/32", # 許可するIPアドレス
"222.222.222.222/32"
]
}
}
}
]
}