[AWS] S3でブロックパブリックアクセスをオフにしてもAccessDeniedとなる原因と対策

スポンサーリンク

概要

AWSのS3でパブリックバケットを作成したい場合、ブロックパブリックアクセスをオフにしただけでは不十分であり、ブラウザでバケット内のファイルにアクセスしてもAccessDeniedとなってしまう。

原因

バケットをパブリックにするにはブロックパブリックアクセスバケットポリシーの両方を適切に設定する必要がある。

ブロックパブリックアクセス

「パブリックアクセスをすべて ブロック」のチェックボックスをオフにする。

バケットポリシー

以下のバケットポリシーを設定する。
arn:aws:s3:::xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxの部分はバケットARN

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": "*",
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/*"
    }
  ]
}

おすすめ書籍

コメント