9

Ich versuche, anonymen (oder nur von meiner Anwendungen Domain) Lesezugriff für Dateien in meinem Bucket zu ermöglichen.Zulassen des öffentlichen Lesezugriffs auf einen GCS-Bucket?

Beim Versuch, die Dateien zu lesen bekomme ich

`` `

<Error> 
    <Code>AccessDenied</Code> 
    <Message>Access denied.</Message> 
    <Details> 
     Anonymous users does not have storage.objects.get access to object. 
    </Details> 
</Error> 

` ``

Ich habe versucht, eine Domäne mit den Berechtigungen Objekt Standard hinzufügen in dem Google-Cloud-Dialog Konsole. Das gibt mir den Fehler "Eine Ihrer Berechtigungen ist ungültig. Stellen Sie sicher, dass Sie eine autorisierte ID oder eine E-Mail für die Gruppen und Benutzer und eine Domäne für die Domänen eingeben"

Ich habe auch in die ACL für den Bucket gemacht public-read. Mein einziges Problem dabei ist, dass es mein Eigentum über den Eimer entfernt. Ich muss diese Inhaberschaft haben, da ich das Hochladen von einer bestimmten Google Access-ID zulassen möchte.

Antwort

18

Sie können gsutil verwenden, um neue Objekte, die im Bucket erstellt wurden, öffentlich lesbar zu machen, ohne Ihre Eigentumsrechte zu entfernen. Um neue Objekte zu machen in den Eimer erstellt öffentlich lesbar:

gsutil defacl ch -u AllUsers:R gs://yourbucket

Wenn Sie vorhandene Objekte in den Eimer, die Sie wollen öffentlich lesbar machen, können Sie ausführen:

gsutil acl ch -u AllUsers:R gs://yourbucket/**

+0

Danke . Was ist mit der Beschränkung auf eine Domain? –

+0

Sie können Domänen verwenden: siehe "gsutil help acl ch". Siehe insbesondere den Abschnitt: Gruppen können auch als vollständige Domain angegeben werden, wie in "-g my-company.com:r" –

Verwandte Themen