2017-11-02 2 views
0

ich AWS CLI bin mit ACL-Richtlinie auf ein Objekt in S3 anzuwenden, ist dies der Befehl, den ichS3api CLI-Befehl Ausgabe Put

aws verwendet haben s3api put-Objekt-acl --bucket XXXX XXXX --key --acl eimer Inhaber-full-Steuerung --grant ablesbare uri = http://acs.amazonaws.com/groups/global/AllUsers

Dieser Befehl im Gegenzug einen Fehler gibt

einen Fehler (INVALIDREQUEST) aufgetreten ist, wenn der PutObjectAcl Betrieb Aufruf: Festlegen sowohl Canned ACLs und Header Grants ist nicht erlaubt

Wie man sowohl Dosen als auch Header Grants auf ein Objekt anwenden kann?

Ich versuchte nur Canned ACL erstes Mal geben (aws s3api put-Objekt-acl --bucket XXXX XXXX --key --acl eimerinhaberVoll Kontrolle) und angewandt, aber wenn ich lief das zweite Mal (aws s3api put-object-acl --bucket XXXX --key XXXX --grant-read uri = http://acs.amazonaws.com/groups/global/AllUsers durch Ausschließen der vordefinierten ACL) und einschließlich der Änderungen der Header Grants wurden außer Kraft gesetzt. Es war nur Header Grants

enthalten Können Sie mir bitte zu diesem Thema helfen?

Antwort

0

Sie können das nicht tun, entweder müssen Sie vordefinierte ACL oder Header-Grants verwenden. Sie können die E-Mail-Adresse des Bucket-Eigentümers angeben, um die vollständige Kontrolle zu gewähren, und anderen Lesezugriff gewähren.

Ich meine, einschließlich der Bucket Besitzer Details führen Sie den Befehl etwas wie unten, wie in AWS Dokumentation Beispiel angegeben.

aws s3api put-objekt-acl --bucket MyBucket --key file.txt --grant-volle-steuern emailaddress = user1 @ beispiel.com, emailaddress = user2 @ example.com --grant-read uri = http://acs.amazonaws.com/groups/global/AllUsers

Siehe den Hinweis in der AWS-Dokumentation.

Hinweis Sie können entweder eine gespeicherte ACL verwenden oder Zugriffsberechtigungen explizit angeben. Du kannst nicht beides.

https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPUT.html

+0

Dank Usman. Scheint so, als könnten wir es nur von Konsole aus nicht von CLI machen. Ja, ich konnte beide nicht beide. – Momooo