プライベートS3へのオブジェクトのアップロードが機能しません

After doing a big research, I’ve not found any guide to upload images to S3 with private ACL.

I’m experiencing a weird behavior where the backups work but not uploadimg of images.

I narrowed the issue down to a problem with ACL of the bucket (I proved that the problem is the ACL since I’m able to upload file using the sdk without specifing the ACL flag). In some cases the “block access to public” permission are set at account level and not bucket level so deactivating the checkbox in the bucket config won’t work.

I noticed that the S3 upload config code was updated, and now the ACL is set based on a param, is there away to pass that config down? discourse/s3_store.rb at tests-passed · discourse/discourse · GitHub

「いいね!」 1

Secure Media Uploads describes how to limit uploads to logged in users. Perhaps that will help?

「いいね!」 2

I tried that, images get uploaded but I get a 500 error in the dashboard with no clue, no logs

@mahcr

私も同じ問題に直面しています。バックアップはできますが、「バケットがACLを許可していません」というエラーのため画像をアップロードできません。

IAMについては、AmazonS3FullAccess ポリシーをアタッチしましたが、エラーは解消されません。

何か解決策はありますでしょうか?

「いいね!」 1

同じ問題が発生しています。バックアップは機能しますが、アップロードは機能しません。

このガイドは古くなっています:

このガイドはCDNの部分には役立ちそうですが、完全な解決策ではありません:

私も同じ問題が発生しました。バックアップのアップロードは機能しますが、画像のアップロードでは「バケットでACLが許可されていません」と表示されます。
IAMの権限を1つとバケットの設定を2つ変更することで解決しました。

まず、IAM権限に関するガイドの「s3:HeadBucket」を「s3:ListBucket」に変更しました。Amazonによると、HeadBucketは有効な権限ではないとのことです。

次に、ガイドに従ってバケットの権限ページと全く同じように設定しました。

そして最も重要な部分、ACLを有効にすることです。これは権限タブの「オブジェクト所有権の編集」と呼ばれています。ACLを有効にし、「オブジェクトライター」に設定すると、すべて正常に機能するようになりました。

私の経験がお役に立てば幸いです。

「いいね!」 3