ich eine Web-Anwendung zu entwickeln, und ich habe zur Zeit die folgenden ACL auf die AWS-Konto zugewiesen er seine Daten zugreift:Amazon S3 ACL für Nur-Lese-und Schreib einmal Zugang
{
"Statement": [
{
"Sid": "xxxxxxxxx", // don't know if this is supposed to be confidential
"Action": [
"s3:*"
],
"Effect": "Allow",
"Resource": [
"arn:aws:s3:::cdn.crayze.com/*"
]
}
]
}
aber ich Ich möchte dies etwas restriktiver machen, damit ein Angreifer keine Daten zerstören kann, wenn seine AWS-Anmeldeinformationen jemals kompromittiert wurden.
Aus der Dokumentation, es sieht aus wie ich nur die folgenden Aktionen zulassen möge: s3:GetObject
und s3:PutObject
, aber ich mag speziell auf das Konto nur in der Lage sein, Objekte zu erstellen, die nicht bereits vorhanden ist - dh eine PUT-Anfrage auf einem existierendes Objekt sollte abgelehnt werden. Ist das möglich?
Ich wusste nichts über Sprachtags! Wo sind die aufgelistet? –
Ich denke, der Grund, warum dies nicht unterstützt wird, ist, dass S3 letztendlich konsistent ist, also gibt es keine autoritative "Objekt existiert nicht" Semantik. – jberryman