Übersicht über die Zugriffssteuerung

Sie können festlegen, wer Zugriff auf Ihre Cloud Storage-Buckets und -Objekte hat und welche Zugriffsebene die betreffenden Nutzer haben.

Sie haben die Wahl zwischen einheitlichem und detailliertem Zugriff

Wenn Sie einen Bucket erstellen, sollten Sie entscheiden, ob Sie Berechtigungen mit einheitlichem oder detailliertem Zugriff anwenden möchten.

  • Einheitlich (empfohlen): Mit dem einheitlichen Zugriff auf Bucket-Ebene können Sie Berechtigungen allein mit Identity and Access Management (IAM) verwalten. IAM wendet Berechtigungen auf alle Objekte an, die im Bucket enthalten sind, oder auf Gruppen von Objekten mit gemeinsamen Namenspräfixen. IAM ermöglicht Ihnen auch die Verwendung von Features, die bei der Arbeit mit ACLs nicht verfügbar sind, z. B. verwaltete Ordner, IAM Conditions, domaineingeschränkte Freigabe und Mitarbeiteridentitätsföderation.

  • Detailliert: Mit dieser Option können Sie IAM und Access Control Lists (ACLs) gemeinsam zur Verwaltung von Berechtigungen verwenden. ACLs sind ein herkömmliches Zugriffssteuerungssystem für Cloud Storage, das für die Interoperabilität mit Amazon S3 entwickelt wurde. Mit ACLs können Sie den Zugriff auch für jedes einzelne Objekt festlegen.

    Da Sie für einen differenzierten Zugriff zwei verschiedene Zugriffssteuerungssysteme koordinieren müssen, erhöht sich die Wahrscheinlichkeit, dass Daten unbeabsichtigt offengelegt werden. Außerdem ist die Prüfung, wer Zugriff auf Ressourcen hat, komplizierter. Insbesondere, wenn Sie Objekte haben, die vertrauliche Daten enthalten, z. B. personenidentifizierbare Daten, empfehlen wir, diese Daten in einem Bucket mit aktiviertem einheitlichen Zugriff auf Bucket-Ebene zu speichern.

IAM-Berechtigungen mit ACLs verwenden

Cloud Storage bietet Ihnen zwei Systeme, um Nutzern die Berechtigung zum Zugriff auf Ihre Buckets und Objekte zu erteilen: IAM und Access Control Lists (ACLs). Diese Systeme sind parallel aktiv – wenn Sie einem Nutzer Zugriff auf eine Cloud Storage-Ressource gewähren möchten, muss die Berechtigung nur von einem der Systeme erteilt werden. Wenn die IAM-Richtlinie Ihres Buckets beispielsweise nur einigen wenigen Nutzern das Lesen von Objektdaten im Bucket erlaubt, aber eines der Objekte im Bucket eine ACL hat, die es öffentlich lesbar macht, dann ist dieses spezielle Objekt der Öffentlichkeit zugänglich.

In den meisten Fällen ist IAM die empfohlene Methode zum Steuern des Zugriffs auf Ihre Ressourcen. IAM steuert die Berechtigungen überall in Google Cloud und ermöglicht Ihnen, Berechtigungen auf Bucket- und Projektebene zu erteilen. Sie sollten IAM für alle Berechtigungen verwenden, die für mehrere Objekte in einem Bucket gelten, um die Risiken einer unbeabsichtigten Offenlegung von Daten zu reduzieren. Wenn Sie nur IAM verwenden möchten, aktivieren Sie den einheitlichen Zugriff auf Bucket-Ebene, um ACLs für alle Cloud Storage-Ressourcen zu verbieten.

ACLs steuern die Berechtigungen nur für Cloud Storage-Ressourcen und haben eingeschränkte Berechtigungsoptionen. Sie ermöglichen Ihnen jedoch, Berechtigungen für einzelne Objekte zu gewähren. Sie möchten ACLs wahrscheinlich für die folgenden Anwendungsfälle verwenden:

  • Zugriff auf einzelne Objekte in einem Bucket anpassen
  • Daten von Amazon S3 migrieren

Zusätzliche Optionen für die Zugriffssteuerung

Neben IAM und ACLs stehen die folgenden Tools zur Verfügung, um den Zugriff auf Ihre Ressourcen zu steuern:

Signierte URLs (Abfragestringauthentifizierung)

Verwenden Sie signierte URLs, um über eine von Ihnen erstellte URL zeitlich begrenzten Lese- oder Schreibzugriff auf ein Objekt zu gewähren. Jeder, mit dem Sie diese URL teilen, kann für eine von Ihnen festgelegte Dauer auf das Objekt zugreifen, unabhängig davon, ob er ein Google-Konto besitzt.

Sie können signierte URLs zusätzlich zu IAM und ACLs verwenden. Sie können beispielsweise mit IAM nur wenigen Personen Zugriff auf einen Bucket gewähren und dann eine signierte URL erstellen, mit der andere auf eine bestimmte Ressource im Bucket zugreifen können.

Informationen zum Erstellen signierter URLs:

Signierte Richtliniendokumente

Verwenden Sie signierte Richtliniendokumente, um anzugeben, was in einen Bucket hochgeladen werden kann. Richtliniendokumente bieten im Vergleich zu signierten URLs eine umfassendere Kontrolle über die Größe und die Art von Inhalten sowie über andere Uploadeigenschaften und können von Websiteinhabern verwendet werden, um Besuchern das Hochladen von Dateien in Cloud Storage zu ermöglichen.

Zusätzlich zu IAM und ACLs können Sie signierte Richtliniendokumente verwenden. Mit IAM können Sie Personen in Ihrer Organisation beispielsweise erlauben, Objekte hochzuladen. Anschließend können Sie ein signiertes Richtliniendokument erstellen, mit dem Websitebesucher nur Objekte hochladen können, die bestimmte Kriterien erfüllen.

Firebase-Sicherheitsregeln

Verwenden Sie Firebase-Sicherheitsregeln, um eine genaue, attributbasierte Zugriffssteuerung für mobile Apps und Webanwendungen mithilfe der Firebase SDKs für Cloud Storage zu gewähren. Beispielsweise können Sie festlegen, wer Objekte herunter- oder hochladen darf, wie groß ein Objekt sein darf oder wann ein Objekt heruntergeladen werden darf.

Verhinderung des öffentlichen Zugriffs

Verwenden Sie die Verhinderung des öffentlichen Zugriffs, um den öffentlichen Zugriff auf Ihre Buckets und Objekte einzuschränken. Wenn Sie die Verhinderung des öffentlichen Zugriffs aktivieren, haben Nutzer, die über allUsers und allAuthenticatedUsers Zugriff erhalten, keinen Zugriff auf Daten.

Zugriffsbeschränkungen für Anmeldedaten

Verwenden Sie eine Zugriffsgrenze für Anmeldedaten, um die Berechtigungen zu begrenzen, die für ein OAuth 2.0-Zugriffstoken verfügbar sind. Definieren Sie hierfür zuerst eine Zugriffsgrenze für Anmeldedaten, die angibt, auf welche Buckets das Token zugreifen kann, sowie eine Obergrenze für die Berechtigungen, die für den Bucket verfügbar sind. Sie können dann ein OAuth 2.0-Zugriffstoken erstellen und es gegen ein neues Zugriffstoken eintauschen, das die Zugriffsgrenze für die Anmeldedaten berücksichtigt.

Nächste Schritte