Verwaltete Einschränkungen sind vordefinierte Organisationsrichtlinien, die auf einer modernen Plattform basieren und eine zentrale, programmatische Steuerung Ihrer Compute Engine-Ressourcen ermöglichen. Sie bieten integrierte Unterstützung für Tools für die sichere Einführung wie den Policy Simulator und den Probelauf.
Verwaltete Einschränkungen sind am Präfix compute.managed.* zu erkennen und dienen als direkter Ersatz für die alten compute.*-Einschränkungen.
Vorteile
- Sichere Einführung und Monitoring: Implementieren Sie Richtlinien mit vollständigen Tools, schnellerer Änderungskontrolle und schrittweiser Bereitstellung mithilfe von Simulations- und Probelauffunktionen.
- Einheitliches Logging: Erzwingt Einheitlichkeit bei Logging und Fehlermeldungen, was das zentrale Monitoring vereinfacht und Audits optimiert.
Übernahme von Richtlinien
Organisationsrichtlinien, die Sie für eine Ressource festlegen, werden von den untergeordneten Elementen dieser Ressource in der Ressourcenhierarchie übernommen. Wenn Sie beispielsweise eine Richtlinie für einen Ordner erzwingen, erzwingt Cloud de Confiance by S3NS die Richtlinie für alle Projekte in diesem Ordner.
Preise
Der Organisationsrichtliniendienst, einschließlich vordefinierter (Legacy-), verwalteter und benutzerdefinierter Organisationsrichtlinien, wird kostenlos angeboten.
Hinweis
-
Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben.
Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Cloud de Confiance by S3NS Dienste und APIs überprüft. Zur Ausführung von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei Compute Engine authentifizieren:
Wählen Sie den Tab aus, der Ihrer geplanten Verwendung der Beispiele auf dieser Seite entspricht:
Console
Wenn Sie über die Cloud de Confiance Console auf Cloud de Confiance by S3NS Dienste und APIs zugreifen, müssen Sie die Authentifizierung nicht einrichten.
gcloud
-
Installieren Sie die Google Cloud CLI und melden Sie sich dann mit Ihrer föderierten Identität in der gcloud CLI an. Nach der Anmeldung initialisieren Sie die Google Cloud CLI mit dem folgenden Befehl:
gcloud init
-
- Legen Sie eine Standardregion und -zone fest.
REST
Wenn Sie die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, verwenden Sie die Anmeldedaten, die Sie der gcloud CLI bereitstellen.
Installieren Sie die Google Cloud CLI und melden Sie sich dann mit Ihrer föderierten Identität in der gcloud CLI an.
Weitere Informationen finden Sie in der Dokumentation zur Cloud de Confiance -Authentifizierung unter Für die Verwendung von REST authentifizieren.
- Sie müssen Ihre Organisations-ID kennen.
- Installieren Sie die gcloud CLI, falls noch nicht geschehen, und initialisieren Sie sie mit dem Befehl
gcloud init. - Legen Sie ein Standardprojekt für Ihre Tests fest.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Verwalten von Organisationsrichtlinien mit verwalteten Einschränkungen benötigen:
- Administrator für Organisationsrichtlinien (
roles/orgpolicy.policyAdmin) für die Organisationsressource -
So testen Sie die Einschränkungen:
Compute Instance Admin (v1) (
roles/compute.instanceAdmin.v1) für das Projekt
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Verwalten von Organisationsrichtlinien mit verwalteten Einschränkungen erforderlich sind. Maximieren Sie den Abschnitt Erforderliche Berechtigungen, um die notwendigen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind für die Verwaltung von Organisationsrichtlinien mit verwalteten Einschränkungen erforderlich:
-
orgpolicy.constraints.list -
orgpolicy.policies.create -
orgpolicy.policies.delete -
orgpolicy.policies.list -
orgpolicy.policies.update -
orgpolicy.policy.get -
orgpolicy.policy.set -
Zum Testen der Einschränkungen benötigen Sie folgende Rollen:
compute.instances.createfür das Projekt- Zum Erstellen der VM mit einem benutzerdefinierten Image:
compute.images.useReadOnlyfür das Image - Zum Erstellen der VM mit einem Snapshot:
compute.snapshots.useReadOnlyfür den Snapshot - Zum Erstellen der VM mit einer Instanzvorlage:
compute.instanceTemplates.useReadOnlyfür die Instanzvorlage - Zum Zuweisen eines Legacy-Netzwerks zur VM:
compute.networks.usefür das Projekt - Zum Festlegen einer statische IP-Adresse für die VM:
compute.addresses.usefür das Projekt - Zum Zuweisen einer externen IP-Adresse zur VM bei Verwendung eines Legacy-Netzwerks:
compute.networks.useExternalIpfür das Projekt - Zum Angeben eines Subnetzes für die VM:
compute.subnetworks.usefür das Projekt oder für das ausgewählte Subnetz - Zum Zuweisen einer externen IP-Adresse zur VM, wenn Sie ein VPC-Netzwerk verwenden:
compute.subnetworks.useExternalIpfür das Projekt oder für das ausgewählte Subnetz - Zum Festlegen von Metadaten der VM-Instanz für die VM:
compute.instances.setMetadatafür das Projekt - Zum Festlegen von Tags für die VM:
compute.instances.setTagsfür die VM - Zum Festlegen von Labels für die VM:
compute.instances.setLabelsfür die VM - Zum Festlegen eines Dienstkontos, das die VM verwenden soll:
compute.instances.setServiceAccountfür die VM - Zum Erstellen eines neuen Laufwerks für die VM:
compute.disks.createfür das Projekt - Zum Anhängen eines vorhandenen Laufwerks im Lese- oder Lese-/Schreibmodus:
compute.disks.usefür das Laufwerk - Um ein vorhandenes Laufwerk im Lesemodus anzuhängen:
compute.disks.useReadOnlyfür das Laufwerk
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Verfügbare verwaltete Einschränkungen
Die folgenden verwalteten Einschränkungen für Organisationsrichtlinien sind für Compute Engine verfügbar:
Hierarchische Metadatenauswertung
Verwaltete Einschränkungen, die auf vordefinierten Metadatenschlüsseln wie OS Login oder Serial Port Access basieren, unterstützen die hierarchische Auswertung. Wenn Compute Engine diese Einschränkungen auswertet, werden Metadatenwerte geprüft, die auf VM-Instanz-, Projekt- oder Zonenebene festgelegt sind.
Wenn Sie Metadatenwerte auf Projekt- oder Zonenebene festlegen, können Sie VM-Instanzen im großen Maßstab verwalten. Die Erzwingung von Einschränkungen erfolgt jedoch nur bei API-Aufrufen zum Erstellen oder Aktualisieren von VM-Instanzen. Änderungen an Projekt- oder zonenbezogenen Metadaten wirken sich daher nur dann auf die Einhaltung von Einschränkungen einer VM-Instanz aus, wenn diese Instanz erstellt oder aktualisiert wird.
Metadatenbasierte Einschränkungen und Ebenen
| Einschränkung | Metadatenschlüssel | Hierarchieebenen für Metadaten |
|---|---|---|
compute.managed.disableSerialPortAccess |
serial-port-enable |
Projekt, zonal, Instanz |
compute.managed.requireOsLogin |
enable-oslogin |
Projekt, zonal, Instanz |
compute.managed.disableGuestAttributesAccess |
enable-guest-attributes |
Projekt, zonal, Instanz |
compute.managed.requireOsConfig |
enable-osconfig |
Projekt, zonal, Instanz |
compute.managed.disallowGlobalDns |
VmDnsSetting |
Projekt, Instanz |
Sichere Einführung: Der Richtlinienlebenszyklus
Um Dienstunterbrechungen zu vermeiden, wenn Sie nach und nach neue Einschränkungen implementieren, empfiehlt Google, verwaltete Einschränkungen so zu implementieren:
Analyse mit Policy Simulator
Bevor Sie eine Richtlinie erzwingen, können Sie mit dem Policy Simulator sehen, welche vorhandenen Ressourcen gegen die Richtlinie verstoßen. Gehen Sie so vor:
Rufen Sie in der Cloud de Confiance Console die Seite Organisationsrichtlinien auf.
Suchen Sie in der Filterleiste nach der Einschränkung und klicken Sie dann auf den Namen der Einschränkung, um die Seite Richtliniendetails aufzurufen.
Klicken Sie auf Änderungen testen, um einen Simulationsbericht zu erstellen.
Es kann einige Stunden dauern, bis Änderungen an hierarchischen Metadaten im Simulationsbericht für Einschränkungen bei VM-Metadateneinstellungen angezeigt werden.
Sehen Sie sich den Bericht an, um nicht konforme Ressourcen neu zu konfigurieren oder Ausnahmen zu beantragen.
Mit Probelauf validieren
Im Probelaufmodus werden Verstöße in Cloud Logging protokolliert, es werden jedoch keine Einschränkungen erzwungen.
Verwenden Sie den Befehl gcloud org-policies set-policy, um eine Einschränkung zu testen:
Erstellen Sie eine YAML-Datei für die Richtlinie (z. B.
dry-run-policy.yaml) mit einemdryRunSpec:name: projects/PROJECT_ID/policies/compute.managed.requireOsLogin dryRunSpec: rules: - enforce: trueErsetzen Sie
PROJECT_IDdurch Ihre Projekt-ID.Wenden Sie die Richtlinie an:
gcloud org-policies set-policy dry-run-policy.yaml
Vollständige Durchsetzung
Nachdem Sie Ihre Richtlinie simuliert und getestet haben, können Sie sie für eine Ressource erzwingen. Es kann bis zu 15 Minuten dauern, bis Richtlinienänderungen in allenCloud de Confiance by S3NS -Systemen wirksam werden.
Erzwingung von Einschränkungen testen
Nachdem Sie eine Richtlinie festgelegt haben, können Sie die Durchsetzung mit der gcloud CLI prüfen. So testen Sie beispielsweise die Einschränkung compute.managed.requireOsLogin:
Vorhandene Richtlinien auflisten, um die Konfiguration zu bestätigen:
gcloud org-policies list --project=PROJECT_IDErzwingungsrichtlinie mit einer YAML-Datei anwenden:
gcloud org-policies set-policy enforce_managed_constraint.yamlPrüfen Sie die Erzwingung durch Aufrufen einer Mutations-API. Der Versuch, eine VM-Instanz mit nicht konformen Metadaten zu erstellen, sollte fehlschlagen:
gcloud compute instances create VM_NAME \ --machine-type=MACHINE_TYPE \ --image-family=IMAGE_FAMILY \ --image-project=IMAGE_PROJECT \ --metadata=enable-oslogin=falseErsetzen Sie Folgendes:
VM_NAMEist der Name für die neue VM-Instanz.MACHINE_TYPE: Ein gültiger Maschinentyp, z. B.e2-micro.IMAGE_FAMILY: Eine gültige Image-Familie, z. B.debian-11.IMAGE_PROJECT: Das Projekt der Image-Familie, z. B.debian-cloud.
Lesen Sie die Fehlermeldung. Sie sollten eine Ablehnung mit der spezifischen Einschränkung sehen, die verletzt wurde:
ERROR: (gcloud.compute.instances.create) Could not fetch resource: - Operation denied by org policy: [constraints/compute.managed.requireOsLogin]
Bedingte Ausnahmen mit Tags
Mit Tags können Sie Ausnahmen für bestimmte Ressourcen basierend auf geschäftlichen Anforderungen gewähren. In diesem Beispiel verwenden wir ein Tag namens osLoginOptional, um Ressourcen zu identifizieren, die von der OS Login-Anforderung ausgenommen sind. Wenn Sie dieses Tag mit dem Wert true an eine Ressource binden, erlaubt die Organisationsrichtlinie, dass diese bestimmte Ressource ohne aktiviertes OS Login vorhanden ist, auch wenn die Richtlinie für den Rest Ihrer Umgebung weiterhin streng durchgesetzt wird.
So gewähren Sie eine Ausnahme mithilfe von Tags:
Tag erstellen: Verwenden Sie die gcloud CLI, um einen Tag-Schlüssel und einen Tag-Wert zu erstellen.
Erstellen Sie den Tag-Schlüssel:
gcloud resource-manager tags keys create osLoginOptional \ --parent=organizations/ORGANIZATION_IDErstellen Sie den Tag-Wert:
gcloud resource-manager tags values create true \ --parent=organizations/ORGANIZATION_ID/tagKeys/osLoginOptional
Ersetzen Sie
ORGANIZATION_IDdurch Ihre Organisations-ID.Binden Sie das Tag an eine Ressource. Wenn Sie ein Projekt von der Einschränkung
compute.managed.requireOsLoginausnehmen möchten, binden Sie das TagosLoginOptional=truemit demgcloud resource-manager tags bindings create-Befehl an das Projekt:gcloud resource-manager tags bindings create \ --tag-value=ORGANIZATION_ID/osLoginOptional/true \ --parent=//cloudresourcemanager.googleapis.com/projects/PROJECT_ID \ --location=globalErsetzen Sie
ORGANIZATION_IDdurch Ihre Organisations-ID undPROJECT_IDdurch die ID des Projekts, das Sie ausnehmen möchten.Informationen zum Binden von Tags an andere Ressourcen finden Sie unter Tag an eine Ressource binden.
Richtlinie aktualisieren: Erstellen oder aktualisieren Sie die YAML-Datei für Ihre Richtlinie (z. B.
policy.yaml), um die bedingte Regel einzufügen.name: projects/PROJECT_ID/policies/compute.managed.requireOsLogin spec: rules: - condition: expression: "resource.matchTag('ORGANIZATION_ID/osLoginOptional', 'true')" enforce: false - enforce: trueErsetzen Sie Folgendes:
PROJECT_ID: Ihre Projekt-ID.ORGANIZATION_ID: Ihre Organisations-ID.
Richtlinie anwenden: Verwenden Sie den folgenden gcloud CLI-Befehl, um die Konfiguration zu aktivieren:
gcloud org-policies set-policy policy.yaml
Migration von alten Einschränkungen
Beachten Sie bei der Migration, dass verwaltete Beschränkungen das Verhalten von Legacy-Richtlinien verbessern, aber nicht genau replizieren. Verwaltete Einschränkungen bieten eine höhere Vorhersagbarkeit, da nur bei API-Anfragen, mit denen Ressourcen erstellt oder geändert werden, nach Verstößen gesucht wird. Wenn eine Anfrage gegen eine Einschränkung verstößt, schlägt der API-Aufruf mit einem eindeutigen Fehler fehl. Das unterscheidet sich von den alten Richtlinien, die in verschiedenen Phasen eines Vorgangs erzwungen oder als Ressourcenattribute verwendet werden konnten, was das Erzwingungsverhalten weniger vorhersehbar machte.
Wenn Sie von einer alten compute.*-Einschränkung zu einer modernen compute.managed.*-Einschränkung wechseln, gehen Sie so vor, um eine unbeabsichtigte Verschärfung der Einschränkungen zu vermeiden:
- Entdecken: Identifizieren Sie die neue Alternative zur verwalteten Beschränkung.
- Analysieren und validieren: Verwenden Sie den Policy Simulator und den Probelauf wie oben beschrieben.
- Verwaltete Einschränkung erzwingen: Wenden Sie die neue verwaltete Einschränkung zusammen mit der alten an.
- So löschen Sie Legacy-Richtlinien:
- Rufen Sie in der Cloud de Confiance -Konsole das Asset Inventory auf und filtern Sie nach
orgpolicy.Policyund dem Namen der alten Einschränkung, um alle Richtlinien zu ermitteln, in denen die alte Einschränkung verwendet wird. - Löschen Sie alle Richtlinien, in denen die alte Einschränkung verwendet wird. Wenn Sie eine Richtlinie löschen, wird sie für diese Einschränkung auf das von Google verwaltete Standardverhalten zurückgesetzt.
- Rufen Sie in der Cloud de Confiance -Konsole das Asset Inventory auf und filtern Sie nach
Nächste Schritte
- Weitere Informationen zu den grundlegenden Konzepten und Vorteilen des Dienstes finden Sie unter Einführung in den Organisationsrichtliniendienst.
- Eine detaillierte Anleitung zum Erstellen und Verwalten von Richtlinien finden Sie in der Resource Manager-Dokumentation.
- Vollständige Liste der Einschränkungen, die für alle Cloud de Confiance by S3NS Dienste verfügbar sind
- Informationen zur Verwendung des Policy Simulators für die erweiterte Wirkungsanalyse Ihrer Organisationsrichtlinien