A には、パブリック読み取りポリシーが設定されたバケットがあります。ここで、一部の IP アドレスからのみアクセスできるように、一部のオブジェクトへのアクセスを制限したいと考えています。これは可能ですか?
CloudFrontも追加する予定です。各オブジェクトで同じ設定を維持するにはどうすればよいですか?
ありがとう!
A には、パブリック読み取りポリシーが設定されたバケットがあります。ここで、一部の IP アドレスからのみアクセスできるように、一部のオブジェクトへのアクセスを制限したいと考えています。これは可能ですか?
CloudFrontも追加する予定です。各オブジェクトで同じ設定を維持するにはどうすればよいですか?
ありがとう!
S3 バケット ポリシーを使用できます。ただし、個々のファイルではなく、バケット内の個々のフォルダーに適用されます。次のようなポリシーを使用できます。
{
"Version": "2008-10-17",
"Id": "testPolicy",
"Statement": [
{
"Sid": "1",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::bucketname/subfolder/subfolder2/*",
"Condition": {
"IpAddress": {
"aws:SourceIp": [
"xxx.xxx.xxx.xxx/xx",
"xxx.xxx.xxx.xxx/xx"
]
}
}
}
]
}
バケット名とフォルダー名、および IP を使用します。
注:最初に本番以外のバケットで試してください。