Auf dieser Seite werden IAM-Rollen (Identity and Access Management) beschrieben, die Sammlungen von IAM-Berechtigungen sind.
Eine Rolle enthält eine Reihe von Berechtigungen, mit denen Sie bestimmte Aktionen für Google Cloud-Ressourcen vornehmen können. Wenn Sie Hauptkonten Berechtigungen erteilen möchten, einschließlich Nutzern, Gruppen und Dienstkonten, weisen Sie den Hauptkonten Rollen zu.
Hinweis
- Machen Sie sich mit den grundlegenden Konzepten von IAM vertraut.
Rollentypen
Es gibt drei Arten von Rollen in IAM:
- Einfache Rollen, zu denen die Rollen "Inhaber", "Bearbeiter" und "Betrachter" gehören und die es schon vor der Einführung von IAM gab.
- Vordefinierte Rollen, die detaillierten Zugriff auf einen bestimmten Dienst bieten und von Google Cloud verwaltet werden.
- Benutzerdefinierte Rollen, die detaillierten Zugriff gemäß einer vom Nutzer angegebenen Liste von Berechtigungen bieten.
Mit einer der folgenden Methoden können Sie ermitteln, ob eine Berechtigung in einer einfachen, vordefinierten oder benutzerdefinierten Rolle enthalten ist:
Rufen Sie die Rolle in der Google Cloud Console auf.
Führen Sie den Befehl
gcloud iam roles describe
aus.Rufen Sie die Rolle mit der entsprechenden REST API-Methode ab:
- Für vordefinierte Rollen verwenden Sie
roles.get()
. - Für benutzerdefinierte Rollen auf Projektebene verwenden Sie
projects.roles.get()
. - Für benutzerdefinierte Rollen auf Organisationsebene verwenden Sie
organizations.roles.get()
.
- Für vordefinierte Rollen verwenden Sie
Nur für einfache und vordefinierte Rollen: Suchen Sie in der Berechtigungsreferenz, ob die Berechtigung von der Rolle gewährt wird.
Nur für vordefinierte Rollen: In den vordefinierten Rollenbeschreibungen können Sie sehen, welche Berechtigungen die Rolle enthält.
Rollenkomponenten
Jede Rolle besteht aus folgenden Komponenten:
- Titel: Ein für Menschen lesbarer Name für die Rolle. Der Rollentitel wird verwendet, um die Rolle in der Google Cloud Console zu identifizieren.
Name: Eine Kennung für die Rolle in einem der folgenden Formate:
- Vordefinierte Rollen:
roles/SERVICE.IDENTIFIER
- Benutzerdefinierte Rollen auf Projektebene:
projects/PROJECT_ID/roles/IDENTIFIER
- Benutzerdefinierte Rollen auf Organisationsebene:
organizations/ORG_ID/roles/IDENTIFIER
Der Rollenname wird verwendet, um die Rolle in Richtlinien zulassen zu identifizieren.
- Vordefinierte Rollen:
ID: Eine eindeutige Kennung für die Rolle. Bei einfachen und vordefinierten Rollen entspricht die ID dem Rollennamen. Bei benutzerdefinierten Rollen ist die ID alles, was hinter
roles/
im Rollennamen steht.Beschreibung: Eine für Menschen lesbare Beschreibung der Rolle.
Phase: Die Phase der Rolle im Startlebenszyklus, z. B.
ALPHA
,BETA
oderGA
. Weitere Informationen zu Startphasen finden Sie unter Testen und bereitstellen.Berechtigungen: Die in der Rolle enthaltenen Berechtigungen. Mit Berechtigungen werden Hauptkonten autorisiert, bestimmte Aktionen auf Google Cloud-Ressourcen durchzuführen. Wenn Sie einem Hauptkonto eine Rolle zuweisen, erhält das Hauptkonto alle Berechtigungen in der Rolle.
Berechtigungen haben folgendes Format:
SERVICE.RESOURCE.VERB
Mit der Berechtigung
compute.instances.list
kann ein Nutzer zum Beispiel die Compute Engine-Instanzen auflisten, die ihm gehören. Mitcompute.instances.stop
können Nutzer eine VM beenden.Berechtigungen stehen normalerweise, aber nicht immer, im Verhältnis 1:1 zu den REST-Methoden. Das bedeutet, dass jedem Google Cloud-Dienst eine Berechtigung für jede vorhandene REST-Methode zugewiesen ist. Der Aufrufer benötigt die zugehörige Berechtigung, um eine Methode aufzurufen. Wenn Sie beispielsweise die Methode
projects.topics.publish
der Pub/Sub API aufrufen möchten, benötigen Sie die Berechtigungpubsub.topics.publish
.ETag Eine Kennung für die Version der Rolle, um zu verhindern, dass sich gleichzeitige Aktualisierungen gegenseitig überschreiben. Einfache und vordefinierte Rollen haben immer das ETag
AA==
. ETags von benutzerdefinierten Rollen ändern sich jedes Mal, wenn Sie die Rollen ändern.
Einfache Rollen
Einfache Rollen sind Rollen mit sehr weitreichenden Berechtigungen, die es schon vor der Einführung von IAM gab. Sie wurden ursprünglich als einfache Rollen bezeichnet. Mit einfachen Rollen können Sie Hauptkonten umfassenden Zugriff auf Google Cloud-Ressourcen gewähren.
Wenn Sie einem Hauptkonto eine einfache Rolle zuweisen, erhält das Hauptkonto alle Berechtigungen in der einfachen Rolle. Sie erhalten auch alle Berechtigungen, die Dienste für Hauptkonten mit einfachen Rollen bereitstellen, z. B. Berechtigungen, die durch Konvergenzwerte von Cloud Storage und Spezielle Gruppenmitgliedschaft in BigQuery gewonnen werden.
In der folgenden Tabelle sind die Berechtigungen zusammengefasst, die die einfachen Rollen Nutzern in allen Google Cloud-Diensten gewähren:
Einfache Rollen | Berechtigungen |
---|---|
Betrachter (roles/viewer ) |
Berechtigungen für schreibgeschützte Aktionen, die sich nicht auf den Status auswirken, z. B. das Anzeigen (aber nicht das Ändern) vorhandener Ressourcen oder Daten. Eine Liste der Berechtigungen in der Rolle „Betrachter“ finden Sie in den Rollendetails in der Google Cloud Console: |
Bearbeiter (roles/editor ) |
Alle Berechtigungen des Betrachters sowie Berechtigungen für Aktionen, durch die der Status geändert wird, z. B. Ressourcen ändern Mit den Berechtigungen in der Rolle "Bearbeiter" können Sie Ressourcen für die meisten Google Cloud-Dienste erstellen und löschen. Die Rolle „Bearbeiter“ enthält jedoch keine Berechtigungen zum Ausführen aller Aktionen für alle Dienste. Weitere Informationen dazu, wie Sie prüfen können, ob eine Rolle die erforderlichen Berechtigungen hat, finden Sie auf dieser Seite unter Rollentypen. Eine Liste der Berechtigungen in der Rolle "Bearbeiter" finden Sie in den Rollendetails in der Google Cloud Console: |
Inhaber (roles/owner ) |
Alle Editor-Berechtigungen plus Berechtigungen für Aktionen wie die folgenden:
Die Rolle „Inhaber“ enthält nicht alle Berechtigungen für alle Google Cloud-Ressourcen. Sie enthält beispielsweise keine Berechtigungen zum Ändern Ihrer Cloud Billing-Zahlungsinformationen oder zum Erstellen von IAM-Ablehnungsrichtlinien. Eine Liste der Berechtigungen in der Rolle "Inhaber" finden Sie in den Rollendetails der Google Cloud Console: |
Sie können einfache Rollen mit der Google Cloud Console, der API und der gcloud CLI zuweisen. Wenn Sie einem Nutzer jedoch außerhalb Ihrer Organisation die Rolle „Inhaber“ für ein Projekt zuweisen möchten, müssen Sie die Google Cloud Console verwenden, nicht die gcloud CLI. Wenn Ihr Projekt nicht zu einer Organisation gehört, müssen Sie die Google Cloud Console zum Erteilen der Rolle „Inhaber“ verwenden.
Eine Anleitung finden Sie unter Zugriff gewähren, ändern und entziehen.
Vordefinierte Rollen
Zusätzlich zu den einfachen Rollen bietet IAM weitere vordefinierte Rollen, die detaillierten Zugriff auf bestimmte Google Cloud-Ressourcen ermöglichen. Vordefinierte Rollen werden von Google erstellt und verwaltet. Google aktualisiert seine Berechtigungen bei Bedarf automatisch, z. B. wenn Google Cloud neue Features oder Dienste hinzufügt.
Sie können demselben Nutzer auf jeder Ebene der Ressourcenhierarchie mehrere Rollen zuweisen. Zum Beispiel kann ein Nutzer die Rollen "Compute-Netzwerkadministrator" und "Logbetrachter" für ein Projekt und auch die Rolle "Pub/Sub-Publisher" für ein Pub/Sub-Thema in diesem Projekt haben. Informationen zum Auflisten der in einer Rolle enthaltenen Berechtigungen finden Sie unter Rollenmetadaten abrufen.
Informationen zur Auswahl der am besten geeigneten vordefinierten Rollen finden Sie unter Vordefinierte Rollen auswählen.
Eine Liste der vordefinierten Rollen finden Sie in der Rollenreferenz.
Benutzerdefinierte Rollen
Mit IAM können Sie auch benutzerdefinierte IAM-Rollen erstellen. Mit benutzerdefinierten Rollen können Sie das Prinzip der geringsten Berechtigung erzwingen und damit den Hauptkonten in Ihrer Organisation nur die Berechtigungen erteilen, die sie benötigen.
Benutzerdefinierte Rollen werden vom Nutzer definiert und ermöglichen die Zusammenstellung von einer unterstützten Berechtigung oder von mehreren, je nach Ihren speziellen Anforderungen. Wenn Sie eine benutzerdefinierte Rolle erstellen, müssen Sie eine Organisation oder ein Projekt auswählen. Anschließend können Sie die benutzerdefinierte Rolle für die Organisation oder das Projekt sowie für alle Ressourcen innerhalb dieser Organisation oder des Projekts zuweisen.
Sie können eine benutzerdefinierte Rolle nur innerhalb des Projekts oder der Organisation zuweisen, in der Sie sie erstellt haben. Sie können keine benutzerdefinierten Rollen für andere Projekte oder Organisationen oder für Ressourcen innerhalb anderer Projekte oder Organisationen zuweisen.
Eine benutzerdefinierte Rolle erstellen Sie, indem Sie eine oder mehrere der unterstützen IAM-Berechtigungen kombinieren.
Unterstützte Berechtigungen
Sie können viele, aber nicht alle IAM-Berechtigungen in benutzerdefinierte Rollen aufnehmen. Jede Berechtigung hat eine der folgenden Unterstützungsstufen zur Verwendung in benutzerdefinierten Rollen:
Unterstützungsstufe | Beschreibung |
---|---|
SUPPORTED |
Die Berechtigung wird in benutzerdefinierten Rollen vollständig unterstützt. |
TESTING |
Google testet die Berechtigung, um ihre Kompatibilität mit benutzerdefinierten Rollen zu prüfen. Sie können die Berechtigung zwar in benutzerdefinierte Rollen einfügen, es kann aber zu unerwartetem Verhalten kommen. Nicht für die Produktion empfohlen. |
NOT_SUPPORTED |
Die Berechtigung wird in benutzerdefinierten Rollen nicht unterstützt. |
Eine benutzerdefinierte Rolle auf Organisationsebene kann alle IAM-Berechtigungen enthalten, die in benutzerdefinierten Rollen unterstützt werden. Eine benutzerdefinierte Rolle auf Projektebene kann alle unterstützten Berechtigungen enthalten, außer Berechtigungen, die nur auf Organisations- oder Ordnerebene verwendet werden können.
Ordner- und organisationsspezifische Berechtigungen können nicht in Rollen auf Projektebene aufgenommen werden, da sie keine Wirkung haben, wenn sie auf Projektebene gewährt werden. Das liegt daran, dass Ressourcen in Google Cloud hierarchisch organisiert sind. Berechtigungen werden über die Ressourcenhierarchie übernommen, d. h. sie sind für die Ressource und alle Nachfolgerelemente dieser Ressource wirksam. Organisationen und Ordner befinden sich jedoch immer über Projekten in der Google Cloud-Ressourcenhierarchie. Daher können Sie eine Berechtigung, die Sie auf Projektebene erhalten haben, nie für den Zugriff auf Ordner oder Organisationen verwenden. Daher sind ordner- und organisationsspezifische Berechtigungen (z. B. resourcemanager.folders.list
) für benutzerdefinierte Rollen auf Projektebene nicht wirksam.
Wann sollten benutzerdefinierte Rollen verwendet werden?
In den meisten Fällen sollten Sie vordefinierte Rollen anstelle von benutzerdefinierten Rollen verwenden können. Vordefinierte Rollen werden von Google verwaltet und automatisch aktualisiert, wenn Google Cloud neue Berechtigungen, Funktionen oder Dienste hinzufügt. Benutzerdefinierte Rollen werden dagegen nicht von Google verwaltet. Wenn Google Cloud neue Berechtigungen, Features oder Dienste hinzufügt, werden Ihre benutzerdefinierten Rollen nicht automatisch aktualisiert.
In folgenden Fällen kann es jedoch sinnvoll sein, eine benutzerdefinierte Rolle zu erstellen:
- Ein Hauptkonto benötigt eine Berechtigung, aber jede vordefinierte Rolle mit dieser Berechtigung enthält auch Berechtigungen, die das Hauptkonto nicht benötigt und nicht haben sollte.
- Mit Rollenempfehlungen können Sie zu weit gefasste Rollenzuweisungen durch geeignete Rollenzuweisungen ersetzen. In einigen Fällen erhalten Sie möglicherweise eine Empfehlung zum Erstellen einer benutzerdefinierten Rolle.
Beachten Sie außerdem die folgenden Einschränkungen:
- Benutzerdefinierte Rollen können bis zu 3.000 Berechtigungen enthalten. Außerdem beträgt die maximale Gesamtgröße von Titel, Beschreibung und Berechtigungsnamen für eine benutzerdefinierte Rolle 64 KB.
Die Anzahl der benutzerdefinierten Rollen, die Sie erstellen können, ist begrenzt:
- Sie können bis zu 300 benutzerdefinierte Rollen auf Organisationsebene in Ihrer Organisation erstellen.
- Sie können in jedem Projekt in Ihrer Organisation bis zu 300 benutzerdefinierte Rollen auf Projektebene erstellen.
Berechtigungen und Abhängigkeiten
Einige Berechtigungen sind nur gültig, wenn sie zusammen gewährt werden. Wenn Sie beispielsweise eine Zulassungsrichtlinie aktualisieren möchten, müssen Sie sie lesen, bevor Sie sie ändern und schreiben können. Daher benötigen Sie für die Aktualisierung einer Zulassungsrichtlinie fast immer die Berechtigung getIamPolicy
für den jeweiligen Dienst und Ressourcentyp sowie die Berechtigung setIamPolicy
.
Damit Ihre benutzerdefinierten Rollen tatsächlich wirksam sind, können Sie benutzerdefinierte Rollen anhand vordefinierter Rollen mit ähnlichen Berechtigungen erstellen. Vordefinierte Rollen sind für bestimmte Aufgaben konzipiert und enthalten alle Berechtigungen, die Sie für die Ausführung dieser Aufgaben benötigen. Anhand dieser Rollen können Sie sehen, welche Berechtigungen in der Regel zusammen gewährt werden. Anhand dieser Informationen können Sie dann effektive benutzerdefinierte Rollen entwerfen.
Weitere Informationen zum Erstellen einer benutzerdefinierten Rolle anhand einer vordefinierten Rolle finden Sie unter Benutzerdefinierte Rollen erstellen und verwalten.
Lebenszyklus benutzerdefinierter Rollen
In den folgenden Abschnitten werden wichtige Aspekte in jeder Phase des Lebenszyklus einer benutzerdefinierten Rolle beschrieben. Anhand dieser Informationen können Sie benutzerdefinierte Rollen erstellen und verwalten.
Erstellung
Wählen Sie beim Erstellen einer benutzerdefinierten Rolle eine ID, einen Titel und eine Beschreibung aus, die die Rolle eindeutig identifizieren:
Rollen-ID: Die Rollen-ID ist eine eindeutige Kennung für die Rolle. Sie kann bis zu 64 Byte lang sein sowie alphanumerische Zeichen in Groß- und Kleinschreibung, Unterstriche und Punkte enthalten. Sie können eine Rollen-ID innerhalb einer Organisation oder eines Projekts nicht wiederverwenden.
Rollen-IDs können nicht geändert werden. Wählen Sie sie daher sorgfältig aus. Sie können eine benutzerdefinierte Rolle löschen, aber erst nach Abschluss des 44-tägigen Löschvorgangs eine neue benutzerdefinierte Rolle mit derselben ID in derselben Organisation oder im selben Projekt erstellen. Weitere Informationen zum Löschprozess finden Sie unter Benutzerdefinierte Rolle löschen.
Rollentitel: Der Rollentitel wird in der Liste der Rollen in der Google Cloud Console angezeigt. Der Titel muss nicht eindeutig sein, wir empfehlen jedoch, eindeutige und aussagekräftige Titel zu verwenden, um Ihre Rollen besser voneinander abzugrenzen. Außerdem sollten Sie im Rollennamen angeben, ob es sich um eine Rolle auf Organisations- oder auf Projektebene handelt.
Rollentitel können bis zu 100 Byte lang sein sowie alphanumerische Zeichen in Groß- und Kleinschreibung und Symbole enthalten. Sie können den Rollentitel jederzeit ändern.
Rollenbeschreibung: Die Rollenbeschreibung ist ein optionales Feld, in dem Sie zusätzliche Informationen zu einer Rolle angeben können. Sie können beispielsweise den Zweck der Rolle, das Datum, an dem eine Rolle erstellt oder geändert wurde, sowie alle vordefinierten Rollen angeben, auf denen die benutzerdefinierte Rolle basiert. Beschreibungen können bis zu 300 Byte lang sein sowie alphanumerische Zeichen in Groß- und Kleinschreibung und Symbole enthalten.
Berücksichtigen Sie beim Erstellen benutzerdefinierter Rollen auch die Berechtigungsabhängigkeiten.
Weitere Informationen zum Erstellen einer benutzerdefinierten Rolle anhand einer vordefinierten Rolle finden Sie unter Benutzerdefinierte Rollen erstellen und verwalten.
Starten
Benutzerdefinierte Rollen umfassen eine Startphase als Teil der Rollenmetadaten. Die häufigsten Startphasen für benutzerdefinierte Rollen sind ALPHA
, BETA
und GA
. Diese Phasen der Einführung sind informativ. Damit können Sie nachvollziehen, ob jede Rolle für den Einsatz bereit ist. Eine weitere übliche Startphase ist DISABLED
. In dieser Startphase können Sie benutzerdefinierte Rollen deaktivieren.
Wir empfehlen, die Startphasen zu verwenden, um die folgenden Informationen über die Rolle zu vermitteln:
EAP
oderALPHA
: Die Rolle wird noch entwickelt oder getestet oder enthält Berechtigungen für Google Cloud-Dienste oder -Funktionen, die noch nicht öffentlich sind. Sie ist noch nicht für die allgemeine Verwendung bereit.BETA
: Die Rolle wurde nur eingeschränkt getestet oder enthält Berechtigungen für Google Cloud-Dienste oder -Funktionen, die nicht allgemein verfügbar sind.GA
: Die Rolle wurde umfassend getestet und alle Berechtigungen gelten für Google Cloud-Dienste oder -Funktionen, die allgemein verfügbar sind.DEPRECATED
: Die Rolle wird nicht mehr verwendet.
Informationen zum Ändern der Startphase einer Rolle finden Sie unter Vorhandene benutzerdefinierte Rolle bearbeiten.
Wartung
Sie sind für die Verwaltung benutzerdefinierter Rollen verantwortlich. Dazu gehört auch, Rollen zu aktualisieren, wenn sich die Aufgaben Ihrer Nutzer ändern, sowie Rollen zu aktualisieren, damit Nutzer auf neue Funktionen zugreifen können, für die zusätzliche Berechtigungen erforderlich sind.
Wenn Sie Ihre benutzerdefinierte Rolle auf vordefinierten Rollen basieren lassen, empfehlen wir, diese vordefinierten Rollen regelmäßig auf Berechtigungsänderungen zu prüfen. Wenn Sie diese Änderungen im Blick behalten, können Sie besser entscheiden, wann und wie Sie Ihre benutzerdefinierte Rolle aktualisieren sollten. Angenommen, Sie stellen fest, dass eine vordefinierte Rolle mit Berechtigungen für die Verwendung einer neuen Funktion in der Vorabversion aktualisiert wurde. Sie möchten diese Berechtigungen auch Ihrer benutzerdefinierten Rolle hinzufügen.
Damit Sie leichter sehen können, welche vordefinierten Rollen überwacht werden sollen, empfehlen wir, alle vordefinierten Rollen, auf denen Ihre benutzerdefinierte Rolle basiert, im Beschreibungsfeld der benutzerdefinierten Rolle aufzulisten. Die Google Cloud Console führt dies automatisch aus, wenn Sie mit der Google Cloud Console eine benutzerdefinierte Rolle basierend auf vordefinierten Rollen erstellen.
Weitere Informationen zum Aktualisieren der Berechtigungen und Beschreibungen einer benutzerdefinierten Rolle finden Sie unter Vorhandene benutzerdefinierte Rolle bearbeiten.
Im Änderungsprotokoll für Berechtigungen sehen Sie, welche Rollen und Berechtigungen kürzlich geändert wurden.
Deaktivieren
Wenn Sie nicht mehr möchten, dass Hauptkonten in Ihrer Organisation eine benutzerdefinierte Rolle verwenden, können Sie die Rolle deaktivieren. Ändern Sie die Startphase zu DISABLED
, um die Rolle zu deaktivieren.
Deaktivierte Rollen werden weiterhin in Ihren IAM-Richtlinien angezeigt und können Hauptkonten zugewiesen werden, haben aber keine Auswirkungen.
Informationen zum Deaktivieren einer benutzerdefinierten Rolle finden Sie unter Benutzerdefinierte Rolle deaktivieren.
Nächste Schritte
- Hauptkonten IAM-Rollen zuweisen
- Geeignete vordefinierte Rollen auswählen
- Weitere Informationen über benutzerdefinierte Rollen
- Verwenden Sie die Richtlinien-Fehlerbehebung, um zu verstehen, warum ein Nutzer Zugriff auf eine Ressource hat oder nicht oder über die Berechtigung zum Aufrufen einer API verfügt.