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. Zum Aufrufen der Methode
projects.topics.publish
der Pub/Sub API benötigen Sie beispielsweise 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 sehr weit gefasste Rollen, die es bereits vor der Einführung von IAM gab. Sie wurden ursprünglich als einfache Rollen bezeichnet. Sie können einfache Rollen verwenden, um Hauptkonten umfassenden Zugriff auf Google Cloud-Ressourcen zu 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:
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.
Ordnerbezogene oder organisationsspezifische Berechtigungen können nicht in Rollen auf Projektebene aufgenommen werden, da auf der Projektebene keine Aktionen ausgefü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 in der Google Cloud-Ressourcenhierarchie immer über Projekten. Daher können Sie nie eine Berechtigung verwenden, die Sie auf Projektebene erhalten haben, um auf Ordner oder Organisationen zuzugreifen. Daher sind ordner- und organisationsspezifische Berechtigungen (z. B. resourcemanager.folders.list
) für benutzerdefinierte Rollen auf Projektebene nicht wirksam.
Wann werden benutzerdefinierte Rollen verwendet?
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 neue Berechtigungen, Features oder Dienste zu Google Cloud hinzugefügt werden. 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 Situationen empfiehlt es sich jedoch, 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 Beschrä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 in Ihrer Organisation bis zu 300 benutzerdefinierte Rollen auf Organisationsebene 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 gemeinsam angegeben werden. Wenn Sie beispielsweise eine Zulassungsrichtlinie aktualisieren möchten, müssen Sie die Richtlinie 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 wurden für bestimmte Aufgaben entwickelt und enthalten alle Berechtigungen, die Sie zum Ausführen dieser Aufgaben benötigen. Anhand dieser Rollen können Sie feststellen, welche Berechtigungen in der Regel zusammen gewährt werden. Mit diesen Informationen können Sie dann effektive benutzerdefinierte Rollen erstellen.
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 Überlegungen in jeder Phase des Lebenszyklus einer benutzerdefinierten Rolle beschrieben. Mit diesen Informationen können Sie bestimmen, wie Sie Ihre benutzerdefinierten Rollen erstellen und verwalten.
Erstellung
Wenn Sie eine benutzerdefinierte Rolle erstellen, wählen Sie eine ID, einen Titel und eine Beschreibung aus, mit denen Sie die Rolle identifizieren können:
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 nicht innerhalb einer Organisation oder eines Projekts 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 können Sie eine neue benutzerdefinierte Rolle mit derselben ID in derselben Organisation oder demselben 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, aber wir empfehlen, eindeutige und aussagekräftige Titel zu verwenden, um Ihre Rollen besser unterscheiden zu können. Außerdem sollten Sie im Rollennamen angeben, ob die Rolle auf Organisationsebene oder auf Projektebene erstellt wurde.
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.
Beachten 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.
Einführung
Benutzerdefinierte Rollen enthalten eine Startphase als Teil der Metadaten der Rolle. 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, dass Sie Startphasen 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
Dabei sind Sie für die Verwaltung benutzerdefinierter Rollen verantwortlich. Dies umfasst die Aktualisierung von Rollen, wenn sich die Verantwortlichkeiten Ihrer Nutzer ändern, sowie das Aktualisieren von Rollen, damit Nutzer auf neue Funktionen zugreifen können, die zusätzliche Berechtigungen erfordern.
Wenn Sie Ihre benutzerdefinierte Rolle auf vordefinierten Rollen basieren, prüfen Sie diese vordefinierten Rollen regelmäßig auf Berechtigungsänderungen. Wenn Sie diese Änderungen verfolgen, können Sie entscheiden, wann und wie Sie Ihre benutzerdefinierte Rolle aktualisieren. Möglicherweise stellen Sie fest, dass eine vordefinierte Rolle mit Berechtigungen für die Verwendung einer neuen Vorschaufunktion aktualisiert wurde. Sie können diese Berechtigungen auch Ihrer benutzerdefinierten Rolle hinzufügen.
Damit Sie leichter erkennen können, welche vordefinierten Rollen überwacht werden sollen, empfehlen wir, im Beschreibungsfeld der benutzerdefinierten Rolle alle vordefinierten Rollen aufzulisten, auf denen die benutzerdefinierte Rolle basiert. Die Google Cloud Console erledigt dies automatisch, wenn Sie mit der Google Cloud Console eine benutzerdefinierte Rolle anhand vordefinierter 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.
Wird deaktiviert
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.