Amazon S3の指定IPのみファイルを公開するメモ。
アクセス許可 → ブロックパブリックアクセス(バケット設定)の「編集」をクリック。
パブリックアクセスをすべてブロックのチェックをOFF。
これだけでは公開されないので、バケットポリシーの「編集」をクリック。
バケットポリシーを設定 → 「変更の保存」をクリック。今回は、Amazon S3からオブジェクトを取得するためのアクセス許可と指定のIPだけのアクセス許可を付与。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Statement1",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::バケット名/*"
},
{
"Sid": "IP",
"Effect": "Deny",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::バケット名/*",
"Condition": {
"NotIpAddress": {
"aws:SourceIp": "許可したいIP"
}
}
}
]
}
アクセス権限が公開になっているのを確認。IP制限をした場合は公開の表示にはならない。
設定したIPからURLに直接アクセスするとファイルが表示されます。指定IP以外はファイルが表示されません。
- 参考文献
Amazon S3