เผยแพร่ถังใน Amazon S3 [ปิด]


286

ฉันจะตั้งค่ากลุ่มใน Amazon S3 เพื่อให้ไฟล์ทั้งหมดเป็นแบบอ่านอย่างเดียวโดยค่าเริ่มต้นได้อย่างไร


10
ฉันรำคาญคำถามนี้ถูกตั้งค่าสถานะเป็นหัวข้อปิด AWS เป็นสิ่งสำคัญสำหรับโปรแกรมเมอร์ที่จริงจัง ฉันจะเพิ่ม u สามารถใช้คำสั่งซิงค์ CLI กับข้อโต้แย้งเช่นนี้ acl:aws s3 sync ./local-folder-name s3://remote-bucket-name --acl=public-read
จอห์น Vandivier

คำตอบสำหรับโพสต์ที่คล้ายกันนี้อาจช่วยได้: stackoverflow.com/a/23102551/475882
jaxxbo

คำตอบ:


462

คุณสามารถกำหนดนโยบายฝากข้อมูลได้ตามรายละเอียดในโพสต์บล็อกนี้:

http://ariejan.net/2010/12/24/public-readable-amazon-s3-bucket-policy/


ตามคำแนะนำของ @ robbyt สร้างนโยบายฝากข้อมูลด้วย JSON ต่อไปนี้:

{
  "Version": "2008-10-17",
  "Statement": [{
    "Sid": "AllowPublicRead",
    "Effect": "Allow",
    "Principal": { "AWS": "*" },
    "Action": ["s3:GetObject"],
    "Resource": ["arn:aws:s3:::bucket/*" ]
  }]
}

สำคัญ : แทนที่bucketในResourceบรรทัดด้วยชื่อถังของคุณ


เมื่อใช้ AWS CLI อย่างเป็นทางการarn:aws:s3:::bucketจะต้องเพิ่มไปยังResourceอาร์เรย์ (หากไม่มีดังนั้น/*) ฉันหวังว่าสิ่งนี้จะช่วยให้คนอื่นที่กำลังดิ้นรนกับเรื่องนี้เช่นฉัน
silvenon

ความผิดฉันเอง. สิ่งนี้จำเป็นเฉพาะเมื่อคุณวางแผนsyncเท่านั้นไม่ใช่แค่ดูที่ฝากข้อมูล
silvenon

6
เพื่อรองรับการเข้าถึงแบบไม่ระบุชื่อผ่าน boto ของไพ ธ อนนอกเหนือจากการตั้งค่านโยบายนี้ฉันต้องให้Listสิทธิ์พิเศษEveryoneในส่วนคุณสมบัติ> การอนุญาตของที่เก็บข้อมูล
Chris Betti

กฎการเขียนเวอร์ชันคืออะไร ฉันใช้วันที่ปัจจุบัน 2017-11-16 รายงานข้อผิดพลาด: นโยบายต้องมีสตริงเวอร์ชันที่ถูกต้อง
Timothy.Li

1
@ Timothy.Li คุณจำได้ไหมว่าต้องห่อด้วยเครื่องหมายคำพูด? "2017-11-16",
froggomad

57

Amazon จัดทำเครื่องมือสร้างนโยบาย:

https://awspolicygen.s3.amazonaws.com/policygen.html

หลังจากนั้นคุณสามารถป้อนข้อกำหนดของนโยบายสำหรับที่เก็บข้อมูลบนคอนโซล AWS:

https://console.aws.amazon.com/s3/home


นี่เป็นเอกสารอย่างเป็นทางการของ << การใช้นโยบายถังและนโยบายผู้ใช้ >> docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
Timothy.Li

1
ลิงค์ที่ยอดเยี่ยม ไวยากรณ์ซับซ้อนดังนั้นพวกเขาจึงต้องเขียนตัวสร้างมันขึ้นมา
Timbo
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.