概要
AWSのS3でパブリックバケットを作成したい場合、ブロックパブリックアクセスをオフにしただけでは不十分であり、ブラウザでバケット内のファイルにアクセスしてもAccessDeniedとなってしまう。
原因
バケットをパブリックにするにはブロックパブリックアクセスとバケットポリシーの両方を適切に設定する必要がある。
ブロックパブリックアクセス
「パブリックアクセスをすべて ブロック」のチェックボックスをオフにする。
バケットポリシー
以下のバケットポリシーを設定する。
※ arn:aws:s3:::xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
の部分はバケットARN
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/*"
}
]
}
コメント