RailsTutorial 13章 4.4 本番環境での画像アップロードでHerokuから
S3に保存しようとしたところ、エラーになりました。
FATAL -- : [69007b15-b490-4a9a-aae5-0cfd178b4b09] FATAL -- : [69007b15-b490-4a9a-aae5-0cfd178b4b09] Excon::Error::Forbidden (Expected(200) <=> Actual(403 Forbidden) excon.error.response app[web.1]: :body => "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Error><Code>AccessDenied</Code><Message>Access Denied</Message>
他の方の記事を参考にバケットポリシーを設定しましたが直りません
https://qiita.com/yukiyukimiyaiwa/items/a9e0103c8342b81f6ac1
S3のパブリックアクセス設定で以下の2つをオフにしたところ、エラーが起きず画像の保存や表示がされました。
・新しいアクセスコントロールリスト (ACL) を介して許可されたバケットとオブジェクトへのパブリックアクセスをブロックする
・任意のアクセスコントロールリスト (ACL) を介して許可されたバケットとオブジェクトへのパブリックアクセスをブロックする
ただし、この設定は
https://teratail.com/questions/164250
によると、
①S3バケットのアクセス権限をパブリックに読み込み・書き込み許可にして試す。
(とても危険なのでためしたらすぐに戻してください)
とあり、セキュリティ上問題があるように思えました。
どう調べればいいでしょうか。
あなたの回答
tips
プレビュー