Zugriffssteuerung für Ordner mit IAM

Google Cloud bietet mit der Identitäts- und Zugriffsverwaltung (Identity and Access Management, IAM) die Möglichkeit, bestimmten Google Cloud-Ressourcen detaillierte Zugriffsrechte zuzuweisen und den unerwünschten Zugriff auf andere Ressourcen zu verhindern. Durch IAM haben Sie die Möglichkeit, das Prinzip der geringsten Berechtigung anzuwenden und somit nur den notwendigen Zugriff auf Ihre Ressourcen zu gewähren.

Mit IAM können Sie kontrollieren, wer (Nutzer) welchen Zugriff (Rollen) auf welche Ressourcen hat, indem Sie IAM-Richtlinien festlegen. Durch sie werden einem Nutzer bestimmte Rollen zugewiesen, mit denen wiederum gewisse Berechtigungen verknüpft sind.

Auf dieser Seite werden die IAM-Rollen auf Ordnerebene verfügbar sind und wie IAM erstellt und verwaltet wird Richtlinien für Ordner, die die Cloud Resource Manager API verwenden Eine genaue Beschreibung von IAM finden Sie in der IAM-Dokumentation. Lesen Sie insbesondere den Abschnitt Zugriff gewähren, ändern und aufheben.

Übersicht über die IAM-Rollen für Ordner

Um Ihnen das Konfigurieren Ihrer IAM-Rollen zu erleichtern, finden Sie in der Tabelle unten Folgendes:

  • Die aktivierbaren Aktionstypen
  • Die für diese Aktionen erforderlichen Rollen
  • Die Ressourcenebene, auf der die Rollen angewendet werden sollen
Aktionstypen Erforderliche Rollen Ressourcenebene
Ordner in der Organisationsressource verwalten Ordneradministrator Organisationsressource
Einen Ordner und alle darin enthaltenen Projekte und Ordner verwalten Ordneradministrator Spezieller Ordner
IAM-Richtlinien eines Ordners aufrufen und verwalten Ordner-IAM-Administrator Spezieller Ordner
Neue Ordner erstellen Ordnerersteller Übergeordnete Ressource für den Speicherort der neuen Ordner
Ordner und Projekte verschieben Ordnerverschieber Übergeordnete Ressource für den Speicherort des ursprünglichen und neuen Ordners
Projekt in einen neuen Ordner verschieben Projektbearbeiter oder Projektinhaber Übergeordnete Ressource für den Speicherort des ursprünglichen und neuen Projekts
Ordner löschen Ordnerbearbeiter oder Ordneradministrator Spezieller Ordner

Best Practices für die Verwendung von IAM-Rollen und Berechtigungen mit Ordnern

Beachten Sie beim Zuweisen von IAM-Rollen und Berechtigungen für Ordner Folgendes:

  • Verwenden Sie wenn möglich Gruppen, um Hauptkonten zu verwalten.
  • Verwenden Sie möglichst wenig einfache Rollen wie Inhaber, Bearbeiter und Betrachter. Verwenden Sie stattdessen gemäß dem Prinzip der geringsten Berechtigung vordefinierte Rollen.
  • Weisen Sie für die Verwaltung des gesamten Ordners Berechtigungen auf Ordnerebene zu, die von den Projekten automatisch übernommen werden. Gewähren Sie beispielsweise der Abteilungsadministratorgruppe die Rolle Ordneradministrator für den Ordner. Sie können den Netzwerkadministratoren, die abteilungsübergreifende Berechtigungen benötigen, die Rolle Netzwerkadministrator für den Ordner zuweisen.
  • Erwägen Sie vor dem Verschieben einer Ressource aus einem Ordner sorgfältig, welche Berechtigungen sich ändern könnten. Andernfalls werden möglicherweise Anwendungen oder Workflows unterbrochen, die diese Berechtigungen für die jeweilige Ressource benötigen.
  • Planen und testen Sie die Ressourcenhierarchie eingehend, bevor Sie Produktionsprojekte in Ordner verschieben. Sie haben beispielsweise die Möglichkeit, vorab einen Testordner unter Ihrer Organisationsressource anzulegen und einen Prototyp der geplanten Hierarchie zu erstellen.
  • Wenn Sie einem Nutzer auf Ordnerebene eine Rolle zuweisen, erhält der Nutzer diese Rolle auch für jede Ressource unter diesem Ordner. Wenn Sie beispielsweise einem Nutzer die Compute Admin-Rolle (roles/compute.admin) für einen Ordner erteilen, hat dieser Nutzer die vollständige Kontrolle über alle Compute Engine-Ressourcen in jedem Projekt in diesem Ordner.

Grundlegendes zu Ordnerrollen und -berechtigungen

Standardrollen

Wenn Sie einen Ordner erstellen, erhalten Sie automatisch die Rollen Ordner-Admin und Ordner-Editor, damit Sie als Ersteller volle Kontrolle haben. Im Folgenden finden Sie die Berechtigungen, die diese Rollen bieten. Diese Standardrollen können wie gewohnt in einer IAM-Richtlinie geändert werden.

Vordefinierte Rollen verwenden

Rolle Berechtigungen

(roles/resourcemanager.folderAdmin)

Alle verfügbaren Berechtigungen zum Arbeiten mit Ordnern

Ressourcen auf der niedrigsten Ebene, für die Sie diese Rolle zuweisen können:

  • Ordner

essentialcontacts.*

  • essentialcontacts.contacts.create
  • essentialcontacts.contacts.delete
  • essentialcontacts.contacts.get
  • essentialcontacts.contacts.list
  • essentialcontacts.contacts.send
  • essentialcontacts.contacts.update

iam.policybindings.*

  • iam.policybindings.get
  • iam.policybindings.list

orgpolicy.constraints.list

orgpolicy.policies.list

orgpolicy.policy.get

resourcemanager.folders.*

  • resourcemanager.folders.create
  • resourcemanager.folders.createPolicyBinding
  • resourcemanager.folders.delete
  • resourcemanager.folders.deletePolicyBinding
  • resourcemanager.folders.get
  • resourcemanager.folders.getIamPolicy
  • resourcemanager.folders.list
  • resourcemanager.folders.move
  • resourcemanager.folders.searchPolicyBindings
  • resourcemanager.folders.setIamPolicy
  • resourcemanager.folders.undelete
  • resourcemanager.folders.update
  • resourcemanager.folders.updatePolicyBinding

resourcemanager.hierarchyNodes.*

  • resourcemanager.hierarchyNodes.createTagBinding
  • resourcemanager.hierarchyNodes.deleteTagBinding
  • resourcemanager.hierarchyNodes.listEffectiveTags
  • resourcemanager.hierarchyNodes.listTagBindings

resourcemanager.projects.createPolicyBinding

resourcemanager.projects.deletePolicyBinding

resourcemanager.projects.get

resourcemanager.projects.getIamPolicy

resourcemanager.projects.list

resourcemanager.projects.move

resourcemanager.projects.searchPolicyBindings

resourcemanager.projects.setIamPolicy

resourcemanager.projects.updatePolicyBinding

(roles/resourcemanager.folderIamAdmin)

Berechtigungen zur Verwaltung von „allow”-Richtlinien für Ordner

Ressourcen auf der niedrigsten Ebene, für die Sie diese Rolle zuweisen können:

  • Ordner

iam.policybindings.*

  • iam.policybindings.get
  • iam.policybindings.list

resourcemanager.folders.createPolicyBinding

resourcemanager.folders.deletePolicyBinding

resourcemanager.folders.get

resourcemanager.folders.getIamPolicy

resourcemanager.folders.searchPolicyBindings

resourcemanager.folders.setIamPolicy

resourcemanager.folders.updatePolicyBinding

(roles/resourcemanager.folderCreator)

Berechtigung zum Durchsuchen der Hierarchie und zum Erstellen von Ordnern

Ressourcen auf der niedrigsten Ebene, für die Sie diese Rolle zuweisen können:

  • Ordner

essentialcontacts.contacts.get

essentialcontacts.contacts.list

orgpolicy.constraints.list

orgpolicy.policies.list

orgpolicy.policy.get

resourcemanager.folders.create

resourcemanager.folders.get

resourcemanager.folders.list

resourcemanager.projects.get

resourcemanager.projects.list

(roles/resourcemanager.folderEditor)

Berechtigung zum Ändern von Ordnern und zum Anzeigen der „allow”-Richtlinie eines Ordners

Ressourcen auf der niedrigsten Ebene, für die Sie diese Rolle zuweisen können:

  • Ordner

essentialcontacts.contacts.get

essentialcontacts.contacts.list

orgpolicy.constraints.list

orgpolicy.policies.list

orgpolicy.policy.get

resourcemanager.folders.delete

resourcemanager.folders.get

resourcemanager.folders.getIamPolicy

resourcemanager.folders.list

resourcemanager.folders.searchPolicyBindings

resourcemanager.folders.undelete

resourcemanager.folders.update

resourcemanager.projects.get

resourcemanager.projects.list

(roles/resourcemanager.folderMover)

Berechtigung zum Verschieben von Projekten und Ordnern in eine übergeordnete Organisation oder einen übergeordneten Ordner und aus dieser bzw. diesem

Ressourcen auf der niedrigsten Ebene, für die Sie diese Rolle zuweisen können:

  • Ordner

resourcemanager.folders.move

resourcemanager.projects.move

(roles/resourcemanager.folderViewer)

Berechtigung zum Abrufen eines Ordners und zur Auflistung der Ordner und Ressourcen unter einer Ressource

Ressourcen auf der niedrigsten Ebene, für die Sie diese Rolle zuweisen können:

  • Ordner

essentialcontacts.contacts.get

essentialcontacts.contacts.list

orgpolicy.constraints.list

orgpolicy.policies.list

orgpolicy.policy.get

resourcemanager.folders.get

resourcemanager.folders.list

resourcemanager.projects.get

resourcemanager.projects.list

Benutzerdefinierte Rollen erstellen

Zusätzlich zu den vordefinierten Rollen, die in diesem Thema beschrieben werden, können Sie auch Benutzerdefinierte Rollen, bei denen es sich um Sammlungen von die Sie an Ihre Bedürfnisse anpassen. Beachten Sie die folgenden Punkte, wenn Sie eine benutzerdefinierte Rolle für die Verwendung mit Resource Manager erstellen:
  • Berechtigungen zum Auflisten und Abrufen, z. B. resourcemanager.projects.get/list, sollten immer als Paar von Berechtigungen zugewiesen werden.
  • Wenn Ihre benutzerdefinierte Rolle die folders.list und folders.get enthält sollte es auch projects.list und projects.get enthalten.
  • Beachten Sie, dass einem Nutzer mit der Berechtigung setIamPolicy für Organisations-, Ordner- und Projektressourcen auch alle anderen Berechtigungen erteilt werden. Überlegen Sie sorgfältig, ob dies nötig ist.

Rollen zum Durchsuchen von Ordnern gewähren

Listenberechtigungen ermöglichen das Durchsuchen von Ordnern. Die zwei Arten von Listenberechtigungen, müssen in der Regel gewährt werden: resourcemanager.folders.list, womit Nutzer dürfen Ordner unter einer Ressource auflisten, und resourcemanager.projects.list, Damit können Nutzer nach Projekten in einer Organisationsressource oder einem Ordner suchen. Der Organisationsadministrator verfügt über beide Berechtigungen. Für Nutzer, denen die Rolle Organisationsadministrator nicht gewährt wurde, gilt Folgendes:

  • resourcemanager.folders.list kann über die Rollen Ordnerbetrachter und Ordnerbearbeiter gewährt werden.
  • resourcemanager.projects.list kann über die Rollen Betrachter und Durchsucher gewährt werden.

Damit Organisationsressourcenhauptkonten die gesamte Hierarchie der Organisationsressourcen durchsuchen können, sollten die Listenberechtigungen auf Ebene der Organisationsressource gewährt werden.

Rollen zum Erstellen von Ordnern gewähren

Nutzern, die Ordner erstellen sollen, muss die Rolle Ordnerersteller für eine Ressource in der Hierarchie oberhalb der Ebene gewährt werden, auf der der Ordner erstellt werden soll. Es ist hilfreich, zusätzlich zur Berechtigung, Ordner zu erstellen, auch die zum Durchsuchen zu gewähren, damit die Nutzer zu der Stelle in der Hierarchie navigieren können, an der der Ordner angelegt wird. Weitere Informationen zu Berechtigungen zum Durchsuchen finden Sie im vorherigen Abschnitt.

Die Rolle Ordnerersteller gewährt einem Nutzer keine Berechtigung zum Löschen eines Ordners. Wenn ein Nutzer einen Ordner erstellt, wird ihm jedoch automatisch die Rolle Ordnerbearbeiter zugewiesen. Mit der Rolle Ordnerbearbeiter können Ordner gelöscht werden.

Rollen für Ordnerverschiebungen zuweisen

Damit Nutzer einen Ordner von einer übergeordneten Ressource in eine andere verschieben können, benötigen sie für die alte und neue übergeordnete Ressource oder einen gemeinsamen Ancestor die Rolle Ordnerverschieber.

Rollen für Projektverschiebungen zuweisen

Um ein Projekt in einen Ordner zu verschieben, benötigen Nutzer für das Projekt die Rolle Projektbearbeiter oder Projektinhaber und für die übergeordnete Quell- und Zielressource die Rolle Projektverschieber.

Dies unterscheidet sich geringfügig von den Anforderungen für die Verschiebung eines nicht Unternehmensinhabers. Projekt in die Organisationsressource übertragen. Dort benötigen Nutzer die Rolle Projektbearbeiter. oder Projektinhaber für das Projekt und die Rolle Projektersteller für der Organisationsressource.

Ordnerspezifische Rollen zum Erstellen von Projekten gewähren

Um Projekte erstellen zu können, müssen Nutzer über die Rolle Projektersteller verfügen. Es kann hilfreich sein, Nutzern nur das Anzeigen und Erstellen von Projekten in einem Ordner zu ermöglichen und ihnen nicht die Berechtigung zur Erstellung von Projekten in der gesamten Organisation zu gewähren.

So gewähren Sie ordnerspezifische Berechtigungen:

  1. Gewähren Sie dem Nutzer die Rolle Organisationsbetrachter auf Organisationsknotenebene (z. B. "domain.com").
  2. Erstellen Sie einen neuen Ordner.
  3. Fügen Sie den Nutzer auf Ordnerebene zur IAM hinzu und gewähren Sie ihm die Rollen Ordnerbetrachter und Projektersteller.

Dadurch kann der Nutzer Projekte in seinem Ordner erstellen, ohne ihnen dies zu erlauben Sichtbarkeit für jedes Projekt in der übergeordneten Organisationsressource.