تحميل الكائنات إلى S3 الخاص لا يعمل

بعد إجراء بحث شامل، لم أجد أي دليل حول كيفية رفع الصور إلى S3 مع تعيين ACL خاص.

أواجه سلوكًا غريبًا حيث تعمل النسخ الاحتياطية، لكن رفع الصور لا يعمل.

تمكنت من تحديد المشكلة بأنها تتعلق بتكوين ACL للحاوية (أثبتت أن المشكلة في ACL لأنني أستطيع رفع الملفات باستخدام SDK دون تحديد معلمة ACL). في بعض الحالات، تكون صلاحية “منع الوصول العام” مُفعّلة على مستوى الحساب وليس على مستوى الحاوية، لذا فإن إلغاء تحديد المربع في إعدادات الحاوية لن يحل المشكلة.

لاحظت أن كود إعداد رفع S3 تم تحديثه، وأصبح الآن يتم تعيين ACL بناءً على معلمة معينة. هل هناك طريقة لتمرير هذا الإعداد؟ discourse/lib/file_store/s3_store.rb at tests-passed · discourse/discourse · GitHub

إعجاب واحد (1)

Secure Uploads يصف كيفية تقييد التحميلات على المستخدمين المسجلين. ربما يكون ذلك مفيدًا؟

إعجابَين (2)

لقد جربت ذلك، تُحمَّل الصور ولكنني أحصل على خطأ 500 في لوحة التحكم دون أي تلميح أو سجلات.

@mahcr،

أواجه نفس المشكلة. يمكنني إجراء النسخ الاحتياطي ولكن لا يمكنني تحميل الصور بسبب “الدلو لا يسمح بـ ACLs”.

بالنسبة لـ IAM، قمت بإرفاق سياسة AmazonS3FullAccess، ولكن لا يزال نفس الخطأ.

هل لديك أي حل؟

إعجاب واحد (1)

أواجه نفس المشكلة: النسخ الاحتياطي يعمل ولكن التحميل لا يعمل.

هذا الدليل قديم:

يبدو أن هذا الدليل قيم لجزء شبكة توصيل المحتوى (CDN)، ولكنه ليس الحل الكامل:

حصلت على نفس المشكلة أيضًا. تحميل النسخ الاحتياطي يعمل ولكن تحميل الصور يظهر “الدلو لا يسمح بـ ACLs”
وتم إصلاحه عن طريق تعديل إذن واحد في IAM وإعدادين في الدلو

أولاً، قمت بتغيير الدليل حول إذن IAM من “s3:HeadBucket” إلى “s3:ListBucket” لأن أمازون قالت إن HeadBucket ليس إذنًا صالحًا

ثم اتبعت الدليل ليكون مطابقًا تمامًا كما هو في صفحة الإذن في الدلو

ثم الجزء الأكثر أهمية، تمكين ACLs، يسمى Edit Object Ownership في علامة التبويب Permissions، مع تمكين ACLs وتعيينها إلى object writer، كل شيء على ما يرام الآن

آمل أن تساعدك تجربتي

3 إعجابات