Standardmäßig haben alle Google Cloud-Projekte nur einen Nutzer: den ursprünglichen Projektersteller. Bis ein Nutzer als Projektmitglied hinzugefügt oder an eine bestimmte Ressource gebunden wird, hat kein anderer Nutzer Zugriff auf das Projekt und damit auf Compute Engine-Ressourcen. Auf dieser Seite wird gezeigt, wie Sie Ihrem Projekt neue Nutzer hinzufügen und wie Sie die Zugriffssteuerung für Ihre Compute Engine-Ressourcen mit Identity and Access Management (IAM) festlegen.
Informationen zum Bereitstellen des Zugriffs auf Anwendungen, die auf Ihren Compute Engine-Instanzen ausgeführt werden, finden Sie unter So wird Autorisierung bestimmt.
Zugriffssteuerungsoptionen für Nutzer
Um Nutzern die Möglichkeit zu geben, Ihre Compute Engine-Ressourcen zu erstellen und zu verwalten, können Sie Nutzer als Teammitglieder zu Ihrem Projekt oder zu bestimmten Ressourcen hinzufügen und ihnen Berechtigungen mithilfe von IAM-Rollen erteilen.
Teammitglieder können einzelne Nutzer mit gültigem Google-Konto sowie Google-Gruppen, Dienstkonten oder Google Workspace-Domains sein. Wenn Sie einem Projekt oder einer Ressource ein Teammitglied hinzufügen, geben Sie an, welche Rollen Sie dem Mitglied zuweisen möchten. IAM bietet drei Arten von Rollen: Vordefinierte Rollen, einfache Rollen und benutzerdefinierte Rollen.
Ressourcen übernehmen die Richtlinien ihrer übergeordneten Ressourcen in der Ressourcenhierarchie von Google Cloud. Die effektiven Richtlinien für eine Ressource sind die Kombination aus den für die Ressource festgelegten Richtlinien und den von ihrem übergeordneten Element übernommenen Richtlinien.
Vordefinierte Compute Engine-Rollen
Mit vordefinierten Rollen gewähren Sie bestimmte zusammengehörige Berechtigungen. Compute Engine bietet folgende vordefinierte Rollen:
Rollentitel | Leistungsspektrum | Zielnutzer |
---|---|---|
Compute Engine-Image-Nutzer |
Berechtigung, Images aus einem anderen Projekt aufzulisten und zu verwenden. Gewähren Sie einem Mitglied diese Rolle zusammen mit einer weiteren, damit das Mitglied Images aus einem anderen Projekt verwenden kann, um eine neue Ressource zu erstellen. Sie können beispielsweise diese Rolle und die Rolle "Instanzadministrator" zuweisen, damit ein Mitglied Images aus einem anderen Projekt verwenden kann, um VM-Instanzen und persistente Festplatten zu erstellen. Wenn Sie verwaltete Instanzgruppen erstellen oder Deployment Manager zum Erstellen von VM-Instanzen verwenden, müssen Sie dem Google APIs-Dienstkonto des Projekts möglicherweise diese Rolle zuweisen, bevor Sie Images aus anderen Projekten nutzen können. |
|
Compute Engine-Instanzadministrator (v1) |
Vollständige Kontrolle über Compute Engine-Instanzen, Instanzgruppen, Laufwerke, Snapshots und Images. Lesezugriff auf alle Compute Engine-Netzwerkressourcen. Wenn das Mitglied VM-Instanzen verwaltet, die für die Ausführung als Dienstkonto konfiguriert sind, müssen Sie auch die Rolle |
|
Compute Engine-Administrator |
Vollständige Kontrolle über alle Compute Engine-Ressourcen Wenn der Nutzer VM-Instanzen verwaltet, die für die Ausführung als Dienstkonto konfiguriert sind, müssen Sie ihm auch die Rolle |
|
Compute Engine-Netzwerkadministrator |
Berechtigungen zum Erstellen, Ändern und Löschen von Netzwerkressourcen mit Ausnahme von Firewallregeln und SSL-Zertifikaten. Durch die Rolle "Netzwerkadministrator" wird Lesezugriff auf Firewallregeln, SSL-Zertifikate und Instanzen gewährt, um ihre sitzungsspezifischen IP-Adressen anzeigen zu können. Mit der Rolle "Netzwerkadministrator" können Mitglieder keine Instanzen erstellen, starten, beenden oder löschen. |
Netzwerkadministratoren |
Compute Engine-Sicherheitsadministrator |
Berechtigungen zum Erstellen, Ändern und Löschen von Firewallregeln und SSL-Zertifikaten. |
Sicherheitsadministratoren |
Compute Engine-Load-Balancer-AdministratorBeta |
Berechtigungen zum Erstellen, Ändern und Löschen von Load-Balancern und zugehörigen Ressourcen. |
Lastenausgleichsmodul-Administratoren |
Compute Engine-Dienstkontonutzer |
Berechtigung zum Erstellen von Instanzen, die Dienstkonten verwenden, und Berechtigung zum Hinzufügen eines Laufwerks und Festlegen von Metadaten für eine Instanz, die bereits zur Ausführung als Dienstkonto konfiguriert wurde. Sie sollten diese Rolle nicht allein zuweisen, da sie keine Berechtigungen für die Compute Engine API gewährt. Weisen Sie daher einem Mitglied diese Rolle und eine weitere zu, beispielsweise die des Instanzadministrators. |
|
Compute Engine-Betrachter |
Lesezugriff zum Abrufen und Auflisten von Compute Engine-Ressourcen, aber ohne die Möglichkeit, die in ihnen gespeicherten Daten zu lesen. Ein Konto mit dieser Rolle könnte beispielsweise zwar alle Festplatten in einem Projekt inventarisieren, aber keinerlei Daten auf diesen Festplatten lesen. |
Systemadministratoren |
Compute Engine-Netzwerknutzer |
Berechtigungen für die Verwendung eines Shared VPC-Netzwerks. Gewähren Sie diese Rolle insbesondere Dienstinhabern, die Ressourcen im Hostprojekt verwenden müssen. Nach der Gewährung können Dienstinhaber Subnetzwerke und Netzwerke verwenden, die zum Hostprojekt gehören. Beispielsweise kann ein Netzwerknutzer eine VM-Instanz erstellen, die zu einem freigegebenen VPC-Hostnetzwerk gehört, ohne jedoch im Hostprojekt neue Netzwerke löschen oder erstellen zu können. |
|
Compute Engine-Netzwerkbetrachter |
Lesezugriff auf alle Netzwerkressourcen. Wenn Sie beispielsweise Software verwenden, die Ihre Netzwerkkonfiguration überprüft, können Sie dem Dienstkonto dieser Software die Rolle "Netzwerkbetrachter" zuweisen. |
|
Compute Engine-Storage-AdministratorBeta |
Berechtigungen zum Erstellen, Ändern und Löschen von Laufwerken, Images und Snapshots. Wenn Ihr Unternehmen beispielsweise einen Mitarbeiter für die Verwaltung von Images hat und dieser nicht die Bearbeiterrolle haben soll, gewähren Sie seinem Konto die Rolle "Storage-Administrator". |
|
Administrator für freigegebene Compute Engine-VPC |
Berechtigungen zum Verwalten freigegebener VPC-Hostprojekte, insbesondere die Aktivierung der Hostprojekte und die Verknüpfung von Dienstprojekten mit dem Netzwerk des Hostprojekts. Diese Rolle kann nur auf Organisationsebene gewährt werden. |
Projektersteller |
Eine Liste der API-Methoden, für die eine Rolle Berechtigungen gewährt, finden Sie in der Dokumentation Compute Engine-IAM-Rollen.
Matrix vordefinierter Rollen
Die folgende Tabelle enthält einen vollständigen Vergleich der Rechte aller Compute Engine-Rollen.
Voraussetzung | Instanzadministrator (v1) | Image-Nutzer | Netzwerknutzer | Netzwerkbetrachter | Netzwerkadministrator | Sicherheitsadministrator | Storage-Administrator | Administrator für freigegebene VPC | Compute-Administrator | Compute-Betrachter | Load-Balancer-Administrator |
---|---|---|---|---|---|---|---|---|---|---|---|
Erstellen oder Löschen von VM-Instanzen | * | ||||||||||
Herstellen von SSH-Verbindungen zu VM-Instanzen | * | * | |||||||||
Auflisten oder Abrufen von VM-Instanzen | |||||||||||
Erstellen oder Löschen von Images, Festplatten, Snapshots | |||||||||||
Auflisten oder Abrufen von Images | |||||||||||
Erstellen oder Löschen von Instanzgruppen | * | ||||||||||
Auflisten oder Abrufen von Instanzgruppen | |||||||||||
Erstellen und Verwalten von Lastenausgleichsmodulen | |||||||||||
Erstellen und Verwalten von VPNs | |||||||||||
Anzeigen von Netzwerk-/Subnetzwerkressourcen | |||||||||||
Anzeigen von Firewallregeln | |||||||||||
Erstellen und Verwalten von Firewalls und SSL-Zertifikaten |
für Firewalls, für SSL-Zertifikate |
||||||||||
Erstellen und Verwalten von freigegebenen VPC-Hostprojekten | |||||||||||
Verwenden von Netzwerken und Subnetzwerken in einem freigegebenen VPC-Hostprojekt | |||||||||||
Erstellen und Verwalten von Netzwerken und Subnetzwerken |
*Wenn die VM-Instanz als Dienstkonto ausgeführt werden kann, müssen Sie auch die Rolle „Dienstkontonutzer“ zuweisen.
Eine Liste der API-Methoden, für die eine Rolle Berechtigungen gewährt, finden Sie in der Dokumentation Compute Engine-IAM-Rollen.
Einfache IAM-Rollen
Die einfachen IAM-Rollen sind den Legacy-Rollen Projektinhaber, Bearbeiter und Betrachter direkt zugeordnet. Sie sollten möglichst immer vordefinierte Rollen zuweisen. Wenn IAM noch nicht unterstützt wird, müssen Sie eventuell eine einfache Rolle verwenden, um die korrekten Berechtigungen zu gewähren.
Rollentitel | Berechtigungen |
---|---|
Owner |
Alle Betrachter- und Bearbeiterberechtigungen sowie die Möglichkeit, die Abrechnungseinstellungen zu ändern, die Zugriffssteuerung zu verwalten und Projekte zu löschen. |
Editor |
Alle Betrachterberechtigungen sowie die Möglichkeit, Ressourcen zu erstellen, zu ändern und zu löschen. |
Viewer |
Leseberechtigungen für alle Ressourcen; keine Berechtigung zum Ändern von Ressourcen. |
Weitere Informationen zu einfachen Rollen finden Sie in der Dokumentation zu einfachen Rollen.
Wenn vordefinierte oder einfache Rollen Ihren Anforderungen nicht entsprechen, können Sie benutzerdefinierte Rollen erstellen.
IAM-Richtlinien für Compute Engine-Ressourcen
Sie können Zugriff auf Compute Engine-Ressourcen wie VM-Instanzen, Images und Laufwerke durch direkte Verknüpfung der IAM-Richtlinien mit diesen Ressourcen gewähren. Mit einer IAM-Richtlinie können Sie IAM-Rollen auf diesen Ressourcen anstatt oder zusätzlich zur Rollenverwaltung auf Projektebene verwalten. So können Sie den Grundsatz der geringsten Berechtigung flexibel anwenden. Hierbei gewähren Sie Zugriff nur auf bestimmte Ressourcen, die Mitbearbeiter für ihre Arbeit benötigen.
Mit IAM-Richtlinien für Compute Engine-Ressourcen können Organisationen:
- Nutzern Zugriff auf eine bestimmte Teilmenge von Ressourcen gewähren. Beispiel: Alice muss eine Teilmenge von Instanzen in einem Projekt verwalten. Mit IAM-Richtlinien auf Instanzebene können Sie ihr dann nur für diese Instanzen die Rolle
compute.instanceAdmin.v1
zuweisen. Wenn Sie Alice die gleiche Rolle im Projekt zuweisen, ist sie berechtigt, alle Instanzen im Projekt zu ändern. - Zulassen, dass Administratoren Zugriff gewähren. Administratoren können anderen Personen Zugriff auf Instanzen, Laufwerke und Images gewähren, ohne dass sie dafür Projektinhaber mit umfangreichen Berechtigungen sein müssen. Beispiel: Bob ist ein Entwickler, dem die Rolle
compute.storageAdmin
für ein bestimmtes Image zugewiesen wurde. Er kann dieses Image mit seinen Teamkollegen teilen und ihnen dafür die Rollecompute.imageUser
für das Image zuweisen. Ohne IAM-Richtlinien für Compute Engine-Ressourcen kann Bob dieses Image nicht mit seinen Teammitgliedern teilen. Dafür müsste er Projektinhaber werden, da er die IAM-Richtlinie des Projekts ändern müsste.
Ressourcen erben auch die Richtlinien der ihnen übergeordneten Ressourcen. Wenn Sie auf Projektebene eine Richtlinie festlegen, wird sie von allen untergeordneten Ressourcen übernommen. Die geltende Richtlinie für eine Ressource ist die Kombination aus der für diese Ressource festgelegten Richtlinie und der Richtlinie, die von weiter oben in der Hierarchie übernommen wird. Weitere Informationen finden Sie unter IAM-Richtlinienhierarchie.
Organisationsrichtlinien
Wenn Sie Google Workspace-Mitglied sind, kann Ihr Projekt Teil einer Organisationsressource sein. Eine Organisationsressource ist der Superknoten in der Ressourcenhierarchie von Google Cloud und eng mit einem Google Workspace-Konto verknüpft. Sobald eine Organisationsressource für eine Google Workspace-Domain erstellt wurde, gehören ihr alle Google Cloud-Projekte an, die von Mitgliedern der Domain erstellt wurden.
Eine Organisation kann Organisationsrichtlinien implementieren. Diese beschränken die zugelassenen Konfigurationen innerhalb der gesamten Google Cloud-Ressourcenhierarchie. Für Compute Engine können Sie die folgenden Richtlinien einrichten:
- Interaktiven Zugriff auf die serielle Konsole deaktivieren
- Zugriff auf externe IP-Adressen für VM-Instanzen deaktivieren
- Für Projektmitglieder verfügbare Image-Projekte einschränken
Zum Festlegen von Organisationsrichtlinien muss Ihnen die Rolle orgpolicy.policyAdmin
in der Organisation gewährt worden sein.
Sie können auch projektspezifische Überschreibungen einrichten, falls Sie Ausnahmen von der Richtlinie machen möchten.
Weitere Informationen über Organisationen finden Sie in der Dokumentation zu Organisationen.
Weitere Informationen über Organisationsrichtlinien finden Sie in der Dokumentation zu Organisationsrichtlinien.
Nutzern SSH-Zugriff auf VM-Instanzen gewähren
Wenn Sie einem Nutzer die Möglichkeit geben möchten, mithilfe von SSH eine Verbindung zu einer VM-Instanz herzustellen, ohne Compute Engine-Ressourcen zu verwalten, fügen Sie dem Projekt den öffentlichen Schlüssel des Nutzers hinzu oder fügen Sie den öffentlichen Schlüssel eines Nutzers zu einer spezifischen Instanz hinzu. So können Sie es vermeiden, einen Nutzer als Projektmitglied hinzuzufügen, ihm jedoch Zugriff auf bestimmte Instanzen gewähren.
In der Übersicht über SSH-Schlüssel erfahren Sie mehr über SSH und das Verwalten von SSH-Schlüsseln.
Wenn Sie einem Projektmitglied die Rolle roles/compute.instanceAdmin.v1
gewähren, kann das Mitglied automatisch mithilfe von SSH eine Verbindung zu Instanzen herstellen, solange die Instanz nicht für die Ausführung als Dienstkonto eingerichtet ist. Wenn die Instanz für die Ausführung als Dienstkonto eingerichtet ist, müssen Sie auch die Rolle roles/iam.serviceAccountUser
zuweisen, bevor das Mitglied eine Verbindung zur Instanz herstellen kann.
Wenn Sie ein Mitglied als Projektinhaber oder -bearbeiter hinzufügen, erhält es automatisch auch SSH-Zugriff auf VM-Instanzen im Projekt.
Zugriffssteuerung für Anwendungen, die auf VM-Instanzen laufen
Wenn Sie Anwendungscodes auf Instanzen ausführen und sich die Anwendung bei anderen Google Cloud APIs authentifizieren muss, erstellen Sie Dienstkonten und weisen diesen Dienstkonten bestimmte IAM-Rollen zu, um sich in Ihrem Namen bei anderen Google Cloud APIs zu authentifizieren. Ein Dienstkonto ist ein besonderes Konto ohne Anmeldedaten und eignet sich deshalb sehr gut für Interaktionen zwischen Servern.
In der Dokumentation zu Dienstkonten erfahren Sie mehr darüber.
Verwaltete Arbeitslastidentitäten für Compute Engine-Arbeitslasten
Sie können die automatische Bereitstellung und die Lebenszyklusverwaltung von X.509-Zertifikaten von Certificate Authority Service (CA Service) mithilfe verwalteter Arbeitslastidentitäten einrichten. Verwaltete Zertifikate für Arbeitslastidentitäten werden von CA Service ausgestellt, einem hochverfügbaren, skalierbaren Google Cloud-Dienst, mit dem Sie die Bereitstellung, Verwaltung und Sicherheit von CA-Diensten vereinfachen und automatisieren können. und behalten die Kontrolle über Ihre privaten Schlüssel.
Mit verwalteten Arbeitslastidentitäten können Sie von Compute Engine pro VM mTLS profitieren. Pro VM mTLS verwendet X.509-Zertifikate, die beim Erstellen einer VM ausgestellt werden. Diese mTLS-Zertifikate werden automatisch rotiert, sodass Sie sich keine Gedanken mehr über die Verwaltung der Zertifikate machen müssen.
Verwaltete Arbeitslastidentitäten bieten eine Grundlage für die gegenseitige authentifizierte und verschlüsselte Kommunikation zwischen zwei Compute Engine-VMs. Wenn Sie beispielsweise verwaltete Arbeitslastidentitäten verwenden, kommuniziert Dienst A, der in einer VM ausgeführt wird, mit Dienst B, der in einem anderen ausgeführt wird, über einen verschlüsselten Kanal, der mit mTLS eingerichtet wird.
Informationen zum Konfigurieren von verwalteten Arbeitslastidentitäten finden Sie unter Arbeitslasten über mTLS bei anderen Arbeitslasten authentifizieren.
Nächste Schritte
- Nutzer als Teammitglieder hinzufügen
- Weitere Informationen zu IAM-Rollen
- Weitere Informationen zum Hinzufügen und Entfernen von SSH-Schlüsseln
- Weitere Informationen zu Dienstkonten