Ich hatte Probleme mit der ACL vs. Bucket Policy und fand folgendes nützlich.
ACL
Die ACL definiert die in einer einzigen Datei in Ihrem Eimer angebracht Berechtigungen. Die Bucket-Richtlinie ist ein Skript, das die Berechtigungen für einen Ordner oder eine Datei in einem Bucket erläutert. Verwenden Sie die Eimer polcies heißen Verknüpfung zu beschränken, gewähren oder verweigern den Zugriff auf bestimmte oder alle Dateien, beschränken IP-Adresse usw.
Bearbeiten Sie die S3 Bucket Politik
Log in Amazon Web Services, klicken Sie auf S3 und Klicken Sie auf den Bucket-Namen in der linken Spalte. Zeigen Sie das Bucket-Eigenschaftenfenster am unteren Seitenrand an. Klicken Sie auf die Schaltfläche in der unteren rechten Ecke, die "Bucket-Richtlinie bearbeiten" lautet. Dadurch wird ein Leuchtkasten angezeigt, in den Sie das Richtlinienskript einfügen können. Wenn das Skript die Validierung nicht besteht, wird es nicht gespeichert.
Beispielpolitik, die den Zugriff auf alle lesen aktiviert ist (nützlich, wenn der Eimer als Content-Delivery-Netzwerk verwendet wird)
{
"Version": "2008-10-17",
"Id": "",
"Statement": [
{
"Sid": "AddPerm",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::my_bucket_name/*"
}
]
}
Beispielpolitik nicht autorisierte hotlinking (Websites Dritter, um es zum Verlinken) zu verhindern, aber irgend jemand erlauben zum Download der Dateien:
{
"Version":"2008-10-17",
"Id":"preventHotLinking",
"Statement":[ {
"Sid":"1",
"Effect":"Allow",
"Principal": {
"AWS":"*"
},
"Action":"s3:GetObject",
"Resource":"arn:aws:s3:::your.bucket.name/*",
"Condition":{
"StringLike": {
"aws:Referer": [
"http://yourwebsitename.com/*",
"http://www.yourwebsitename.com/*"
]
}
}
}]
}
eine Politik generieren
Richtlinien
Probe Bucket
http://docs.amazonwebservices.com/AmazonS3/latest/dev/index.html?AccessPolicyLanguage_UseCases_s3_a.html
Vergessen, dies jemals zu beantworten. Mein Problem war ein Skript, das ich geschrieben hatte und das die ACL ein paar Minuten später überschrieb. –