mahcr
(Mariano Alvarez)
1
大規模な調査を行いましたが、プライベート ACL で S3 に画像をアップロードする方法に関するガイドは見つかりませんでした。
バックアップは正常に動作するものの、画像のアップロードだけが奇妙な動作を示しています。
この問題はバケットの ACL に起因することを特定しました(ACL フラグを指定せずに SDK でファイルをアップロードできるため、問題が ACL であることが証明されています)。場合によっては、「パブリックアクセスのブロック」設定がバケットレベルではなくアカウントレベルで設定されているため、バケット設定のチェックボックスを無効化しても機能しません。
S3 アップロード設定のコードが更新され、現在はパラメータに基づいて ACL が設定されていることに気づきました。この設定を下方へ伝達する方法はありますか?discourse/lib/file_store/s3_store.rb at tests-passed · discourse/discourse · GitHub
「いいね!」 1
pfaffman
(Jay Pfaffman)
2
Secure Uploads では、ログインユーザーにアップロードを制限する方法について説明されています。これが役立つかもしれませんか?
「いいね!」 2
mahcr
(Mariano Alvarez)
3
それを実行しましたが、画像はアップロードされるものの、ダッシュボードで500エラーが発生し、原因もログも何もありません。
shawnngtq
(Shawn Ng)
4
@mahcr 様
私も同じ問題に直面しています。バックアップはできますが、「バケットがACLを許可していません」というエラーのため画像をアップロードできません。
IAMについては、AmazonS3FullAccess ポリシーをアタッチしましたが、エラーは解消されません。
何か解決策はありますでしょうか?
「いいね!」 1
seong
(Seong-Young Her)
5
同じ問題が発生しています。バックアップは機能しますが、アップロードは機能しません。
このガイドは古くなっています:
このガイドはCDNの部分には役立ちそうですが、完全な解決策ではありません:
私も同じ問題が発生しました。バックアップのアップロードは機能しますが、画像のアップロードでは「バケットでACLが許可されていません」と表示されます。
IAMの権限を1つとバケットの設定を2つ変更することで解決しました。
まず、IAM権限に関するガイドの「s3:HeadBucket」を「s3:ListBucket」に変更しました。Amazonによると、HeadBucketは有効な権限ではないとのことです。
次に、ガイドに従ってバケットの権限ページと全く同じように設定しました。
そして最も重要な部分、ACLを有効にすることです。これは権限タブの「オブジェクト所有権の編集」と呼ばれています。ACLを有効にし、「オブジェクトライター」に設定すると、すべて正常に機能するようになりました。
私の経験がお役に立てば幸いです。
「いいね!」 3