初めに
AWS初心者向けハンズオン中に遭遇。
Amazon S3の特定のオブジェクトにおいて、オブジェクトURLをクリックしたところ画像のようなエラーが発生した。
検証ツールで確認すると403エラー(閲覧禁止)が発生していることが分かる
解消法
原因はS3のアクセス権限。以下2点を実施することで解消できた。
1.ブロックパブリックアクセス(バケット設定)を編集
2.バケットポリシーを編集
JSONを記載して変更の保存押下。バケット内のすべてのオブジェクトがパブリックに読み取り可能になる。
JSON
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "PublicReadGetObject",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::*yourbacket*/*"
}
]
}
オブジェクトURLを押下すると、今度はエラーなく画面が表示されることを確認できた。
今回は練習なので全てのオブジェクトがパブリックに読み取りできるようにしたが、セキュリティ面を考えるとあまり良くないかもしれない。
最後に
ハンズオンと同じ手順で進めても途中で詰まったりエラーが出ることがある。
そのような時は過去のドキュメントやChatGPTを使用して早く問題解決できるよう取り組みたい。