Projekte

Auf dieser Seite wird die Beziehung zwischen Projekten der Google Cloud Platform Console und Cloud Storage-Ressourcen beschrieben. Weitere allgemeine Informationen über Projekte der Google Cloud Platform Console finden Sie unter Projekte in der Übersicht über die Google Cloud Platform.

Was ist ein Projekt?

Ein Projekt dient zur Organisation all Ihrer Google Cloud Platform-Ressourcen. Ein Projekt umfasst mehrere Nutzer und APIs sowie Abrechnungs-, Authentifizierungs- und Überwachungseinstellungen für diese APIs. So befinden sich in einem Projekt beispielsweise alle Ihre Cloud Storage-Buckets und -Objekte sowie die Nutzerberechtigungen für den Zugriff darauf. Sie können mit einem Projekt arbeiten oder mehrere erstellen und sie für die Organisation Ihrer Google Cloud Platform-Ressourcen, einschließlich Ihrer Cloud Storage-Daten, in logische Gruppen verwenden.

In welchen Fällen sollte ein Projekt angegeben werden?

In den meisten Fällen müssen Sie kein Projekt angeben, wenn Sie in Cloud Storage Aktionen durchführen. In den folgenden Fällen sollten Sie allerdings entweder die Projekt-ID oder die Projektnummer angeben.

Console

  • Wenn Sie Cloud Storage mit der GCP Console verwenden, besteht automatisch eine Zuordnung zu einem Projekt. Sie können über das Drop-down-Menü am oberen Rand des Fensters der GCP Console zwischen Projekten wechseln.

  • Wenn Sie zum ersten Mal auf einen Bucket zugreifen, für den Sender bezahlt aktiviert ist, werden Sie aufgefordert, ein Projekt auszuwählen, über das Anfragen abgerechnet werden sollen. Nachträglich können Sie das Abrechnungsprojekt ändern. Dazu klicken Sie im Bucket über der Liste der Objekte auf die Schaltfläche Projekt ändern.

gsutil

  • Bei den Befehlen gsutil mb, gsutil ls und gsutil kms ist die Angabe eines Projekts erforderlich, wenn kein Standardprojekt festgelegt wurde. Wenn Sie kein Standardprojekt festgelegt haben oder ein anderes Projekt nutzen möchten, verwenden Sie zur Angabe des Projekts das Flag -p. Bei anderen gsutil-Befehlen ist die Angabe eines Projekts nicht erforderlich.

  • Verwenden Sie das Flag -u zusammen mit einer Projekt-ID, um das Projekt anzugeben, über das der Zugriff auf den Bucket abgerechnet werden soll. Dies ist beim Zugriff auf einen Bucket erforderlich, für den Sender bezahlt aktiviert wurde. Ansonsten ist es optional.

JSON API

  • Die Methoden zum Auflisten von Buckets und zum Einfügen von Buckets erfordern die Angabe eines Projekts. Das Projekt wird wie im folgenden Beispiel als Parameter in der Anfrage-URL gesendet:

    GET https://www.googleapis.com/storage/v1/b?project=[PROJECT_ID]
  • Verwenden Sie wie im folgenden Beispiel den Abfrageparameter "userProject" zusammen mit einer Projekt-ID, um ein Projekt für die Abrechnung des Zugriffs auf einen Bucket anzugeben:

    GET https://www.googleapis.com/storage/v1/b?userProject=[PROJECT_ID]

    Dieser Abfrageparameter ist beim Zugriff auf einen Bucket erforderlich, für den Sender bezahlt aktiviert wurde. Andernfalls ist er optional.

XML API

  • Geben Sie ein Projekt an, wenn Sie Buckets auflisten und einfügen. Das Projekt, das diesen XML API-Anfragen zugeordnet ist, wird wie im folgenden Beispiel im HTTP-Header x-goog-project-id angegeben:

    x-goog-project-id: [PROJECT_ID]

    Bei anderen XML API-Anfragen oder wenn Sie für den interoperablen Zugriff ein Standardprojekt festgelegt haben, ist der Header optional.

  • Verwenden Sie zum Angeben eines Projekts zur Abrechnung des Zugriffs auf einen Bucket wie im folgenden Beispiel den Header "x-goog-user-project" zusammen mit einer Projekt-ID:

    x-goog-user-project: [PROJECT_ID]

    Dieser Header ist beim Zugriff auf einen Bucket erforderlich, für den Sender bezahlt aktiviert wurde. Andernfalls ist er optional.

Projektmitglieder und -berechtigungen

Sie können für jedes Projekt die Identitäts- und Zugriffsverwaltung nutzen, um Teammitglieder hinzuzufügen, die Ihr Projekt verwalten und an diesem arbeiten können. Diese ermöglicht es Ihnen, jedem Teammitglied eine Rolle oder mehrere Rollen zuzuweisen: Unterschiedliche Rollen verfügen über Berechtigungen, die es einem Mitglied erlauben, innerhalb eines Projekts verschiedene Dinge zu tun.

Obwohl viele dieser Rollen sowohl auf Projektebene (sie sind somit für alle Buckets in dem Projekt gültig) als auch auf Bucket-Ebene (sie sind somit nur für einen einzelnen Bucket gültig) festgelegt werden können, gibt es auch mehrere Rollen, die nur auf ein Projekt anwendbar sind. Diese Rollen sind einfache Rollen. Einfache Rollen haben die folgenden Attribute für Cloud Storage:

Rolle Systeminternes Verhalten Modifizierbares Verhalten
roles/viewer Mitglieder mit dieser Rolle können Buckets im Projekt auflisten sowie HMAC-Schlüssel im Projekt auflisten und abrufen.
  • Mitgliedern mit dieser Rolle wird als Gruppe die Rolle roles/storage.legacyBucketReader für alle Buckets im Projekt gewährt.
  • Mitglieder mit dieser Rolle haben die Rolle READER in der Access Control List für Standardobjekte, die jedem Bucket im Projekt zugeordnet ist.
  • Mitgliedern mit dieser Rolle wird als Gruppe die Rolle roles/storage.legacyObjectReader für alle Buckets im Projekt gewährt, bei deren Erstellung Nur Bucket-Richtlinie aktiviert war.
roles/editor Mitglieder mit dieser Rolle können Buckets im Projekt auflisten, erstellen und löschen, außerdem erhalten Sie vollständige Kontrolle über HMAC-Schlüssel im Projekt.
  • Mitgliedern mit dieser Rolle wird als Gruppe die Rolle roles/storage.legacyBucketOwner für alle Buckets im Projekt gewährt.
  • Mitglieder mit dieser Rolle haben die Rolle OWNER in der Access Control List für Standardobjekte, die jedem Bucket im Projekt zugeordnet ist.
  • Mitgliedern mit dieser Rolle wird als Gruppe die Rolle roles/storage.legacyObjectOwner für alle Buckets im Projekt gewährt, bei deren Erstellung Nur Bucket-Richtlinie aktiviert war.
roles/owner Mitglieder mit dieser Rolle können Buckets im Projekt auflisten, erstellen und löschen, außerdem erhalten Sie vollständige Kontrolle über HMAC-Schlüssel im Projekt. Im Allgemeinen können Mitglieder mit roles/owner auf der Google Cloud Platform administrative Aufgaben wie die Änderung der Rolle eines Mitglieds für das Projekt oder die Änderung der Abrechnungseinstellungen übernehmen.
  • Mitgliedern mit dieser Rolle wird als Gruppe die Rolle roles/storage.legacyBucketOwner für alle Buckets im Projekt gewährt.
  • Mitglieder mit dieser Rolle haben die Rolle OWNER in der Access Control List für Standardobjekte, die jedem Bucket im Projekt zugeordnet ist.
  • Mitgliedern mit dieser Rolle wird als Gruppe die Rolle roles/storage.legacyObjectOwner für alle Buckets im Projekt gewährt, bei deren Erstellung Nur Bucket-Richtlinie aktiviert war.

Eine Liste der Rollen, die für Cloud Storage verfügbar sind, finden Sie unter Cloud Storage-IAM-Rollen.

Eine Anleitung, wie Sie Mitgliedern auf Projektebene Rollen zuteilen und diese ansehen sowie entfernen, finden Sie unter IAM mit Projekten verwenden.

Wie aus der Spalte Modifizierbares Verhalten oben ersichtlich, können Projektteammitglieder abgesehen von den Berechtigungen, die ihnen bereits aufgrund der einfachen IAM-Rollen gewährt werden, weitere Zugriffsrechte haben. Diese zusätzlichen Zugriffsrechte sind auf zwei Quellen zurückzuführen:

  • Auf Buckets angewendete IAM-Rollen: Wenn ein Nutzer einen Bucket erstellt, werden hierfür standardmäßig IAM-Rollen zugewiesen. Sie können diese Zugriffsrechte nach Erstellung des Buckets bearbeiten.

  • Auf Objekte angewendete Access Control Lists (ACLs): Wenn ein Nutzer ein Objekt erstellt, wird auf dieses Objekt eine ACL angewendet. Die ACL kann entweder explizit festgelegt oder standardmäßig angewendet werden. In beiden Fällen wird mit der ACL konkret der Zugriff auf das erstellte Objekt gewährt.

Beachten Sie, dass Sie in beiden Fällen sowohl einzelnen Nutzern als auch allen Inhabern einer einfachen Rolle Zugriff gewähren können. Darüber hinaus kann die Zugriffsberechtigung umfassender sein als die allgemeine Berechtigung des Nutzers für das Projekt. Sie kann jedoch keine weiteren Einschränkungen haben.

Dienstkonten

Mit Dienstkonten können Anwendungen GCP-Ressourcen und -Dienste authentifizieren und darauf zugreifen. Beispielsweise können Sie ein Dienstkonto erstellen, mit dem Ihre Compute Engine-Instanzen auf Objekte zugreifen, die in Cloud Storage-Buckets gespeichert sind.

Dienstkonten werden innerhalb eines Projekts erstellt und haben eine eindeutige E-Mail-Adresse, die sie identifiziert. Während die meisten Dienstkonten von einem Nutzer erstellt und verwaltet werden, gibt es auch Dienstkonten, die automatisch von GCP-Diensten erstellt und verwaltet werden. Cloud Storage erstellt ein solches Dienstkonto mit einer E-Mail-Adresse im folgenden Format:

service-[PROJECT_NUMBER]@gs-project-accounts.iam.gserviceaccount.com

Dabei ist [PROJECT_NUMBER] die Projektnummer des Projekts, zu dem das Dienstkonto gehört.

Anwendungsmöglichkeiten mit Cloud Storage

Die folgenden Funktionen verwenden Cloud Storage-Dienstkonten:

Beispiele für mögliche Aktionen von Cloud Storage-Dienstkonten, die Cloud Storage-Ressourcen verwenden:

Weitere Informationen

Hat Ihnen diese Seite weitergeholfen? Teilen Sie uns Ihr Feedback mit:

Feedback geben zu...