7

Ich versuche, Dateien in einen Bucket auf Google Cloud Storage hochzuladen, aber ich habe Probleme herauszufinden, wie ich es einrichten kann, damit es öffentlich schreibbar und lesbar ist. Mit anderen Worten, ich möchte vom Benutzer keine Authentifizierung verlangen müssen, um in den Bucket zu laden. Kennt jemand die Schritte, um zu folgen?Wie richte ich einen öffentlichen Google Cloud Storage-Bucket ein?

Ich würde auch gerne wissen, was ich an meine Anfrage Header anhängen müssen, um Dateien in diesen Eimer hochzuladen. Ich benutze den iOS-API-Client, aber wenn jemand weiß, was die rohen Header sind, kann ich wahrscheinlich von dort aus herausfinden, wie man es in iOS macht. Im Moment bin ich mit nur folgende zusätzliche Header: x-goog-project-id

Antwort

10

Für Ihre erste Frage, können Sie Ihre Öffentlichkeit Ihre neue uploaded Objekte mit dem folgenden Befehl machen, dass die gsutil acl syntax verwendet:

gsutil defacl ch -u allUsers:R gs://<bucket> 

Jetzt Sie brauchen Zugang zu geben zu diesem Eimer an alle mit dem Befehl zu schreiben:

gsutil acl ch -u allUsers:O gs://<bucket> 

In Bezug auf Ihre andere Frage, ich bin nicht vertraut mit iOS, aber Sie können an der Unterseite des this page und UPL gehen oad ein Objekt und Sie sehen die HTTP-Anfrage, die Sie in Ihrem Code verwenden können.

Auch gibt es Google API Client Library for Objetive-C und es scheint, dass mit dieser Bibliothek können Sie Google Cloud Storage as per these files verwalten.

Ich hoffe es hilft.

2

Bitte erwägen Sie die Verwendung signierter URLs (https://developers.google.com/storage/docs/accesscontrol#Signed-URLs), anstatt Ihren Bucket öffentlich beschreibbar zu machen. Ein öffentlich beschreibbarer Bucket kann eine Öffnung für verschiedene Formen des Missbrauchs sein und dazu führen, dass Sie eine überraschend hohe Rechnung erhalten, wenn Ihr Bucket von jemandem im Internet entdeckt wird, der dann große Datenmengen dorthin hochlädt.

+0

Ich beabsichtige vollständig signierte URLs zu verwenden, aber für den Moment möchte ich nur einen Proof-of-Concept funktionieren lassen, ohne etwas übermäßig komplexes implementieren zu müssen. –

Verwandte Themen