Auf dieser Seite wird beschrieben, wie Sie mit dem Organization Policy Service dafür sorgen, dass VM Manager auf allen Compute Engine-Instanzen, einschließlich Google Kubernetes Engine-VMs in einer Organisation, einem Ordner oder einem Projekt, aktiviert ist.
Dieser Leitfaden richtet sich an Sicherheitsteams, die dafür sorgen möchten, dass alle erforderlichen Programme wie Sicherheits- und Monitoring-Agents auf allen Instanzen in einer Organisation, einem Ordner oder einem Projekt ausgeführt werden. Wenn Sie die Konfiguration nur mit der Organisationsrichtlinie erzwingen möchten, folgen Sie dieser Anleitung. Wenn Sie die Konfiguration als Code verwenden möchten, verwenden Sie Config Sync. Mit Config Sync können Sie viele Aspekte Ihrer Cluster konfigurieren und steuern. Es bietet mehr als nur Organisationsrichtlinien.
Machen Sie sich vor dem Lesen dieser Seite mit VM Manager und Resource Manager-Einschränkungen vertraut.
In dieser Anleitung wird beschrieben, wie Sie die Verwendung von VM Manager in allen Projekten einer Organisation oder eines Ordners erzwingen. In dieser Anleitung wird nicht beschrieben, wie Sie VM Manager mit Betriebssystemrichtlinien einrichten und verwenden. Eine Anleitung finden Sie unter Zuweisung von Betriebssystemrichtlinien erstellen.
Informationen zu VM Manager
VM Manager besteht aus Tools zur Verwaltung von Betriebssystemen für eine große Anzahl virtueller Maschinen, auf denen Windows und Linux in der Compute Engine ausgeführt werden. Mit VM Manager können Sie Betriebssystemrichtlinien anwenden, um die auf VMs ausgeführten Programme anzupassen. Sie können beispielsweise eine Richtlinie definieren, um einen Agent auf einer Ressource zu installieren, und diese Richtlinie für mehrere Ressourcen wiederverwenden. VM Manager ist inGoogle Cloud -Projekten standardmäßig deaktiviert.
Sie können den Anwendungsbereich von Richtlinien in VM Manager mithilfe von OSPolicyAssignments
eingrenzen. Damit lassen sich Betriebssystemrichtlinien mithilfe von Selektoren auf bestimmte VMs beschränken. Alle GKE-Knoten-VMs haben beispielsweise das Label goog-gke-node
, das Sie mit einer Zuweisung von Betriebssystemrichtlinien anvisieren können.
Organisationsrichtlinien und VM Manager
Wenn Ihre Google Cloud -Organisation mehrere Hierarchieebenen wie Ordner und Unterordner hat, kann die manuelle Aktivierung von VM Manager für alle diese Projekte unnötigen Verwaltungsaufwand verursachen. Sie können mit dem Organization Policy Service und der Einschränkung constraints/compute.requireOsConfig
festlegen, dass VM Manager in allen Projekten in Ordnern oder einer Organisation auf allen VMs aktiviert sein muss. Die Erzwingung von VM Manager mithilfe einer Organisationsrichtlinie bietet unter anderem folgende Vorteile:
- In allen neuen Projekten wird jedem Projekt und jeder VM das Metadatenlabel
enable-osconfig=TRUE
hinzugefügt. - Wenn jemand versucht, dieses Label zu entfernen oder auf einen anderen Wert als
true
festzulegen, wird die Änderung abgelehnt. - Wenn jemand versucht, eine VM so zu erstellen oder zu aktualisieren, dass der Metadatenschlüssel
enable-osconfig
auf einen anderen Wert alstrue
gesetzt wird, wird diese Änderung abgelehnt.
Hinweise
Führen Sie die folgenden Aufgaben aus, bevor Sie beginnen:
- Aktivieren Sie die Google Kubernetes Engine API. Google Kubernetes Engine API aktivieren
- Wenn Sie die Google Cloud CLI für diese Aufgabe verwenden möchten, müssen Sie die gcloud CLI installieren und dann initialisieren. Wenn Sie die gcloud CLI bereits installiert haben, rufen Sie die neueste Version mit
gcloud components update
ab.
- Sie müssen VM Manager bereits mit Betriebssystemrichtlinien und Zuweisungen von Betriebssystemrichtlinien verwenden, um Agents auf Ihren VMs auszuführen. Eine Anleitung finden Sie unter Zuweisung von Betriebssystemrichtlinien erstellen.
-
Enable the Cloud Resource Manager API, OS Config API APIs.
Beschränkungen
Die Organisationsrichtlinie constraints/compute.requireOsConfig
hat die folgenden Einschränkungen:
- Ressourcen mit bereits vorhandenen Verstößen werden durch die neue Organisationsrichtlinie nicht geändert. Sie können die Metadaten für die Richtlinie manuell oder mit
gcloud
für vorhandene Ressourcen festlegen. - Jeder, der die Berechtigung zum Ändern von Metadaten für Compute Engine-Instanzen im Projekt hat, kann
osconfig-agent
auf der VM deaktivieren, indem er das Metadatenfeldosconfig-disabled-features
festlegt. - Wenn
osconfig-agent
nicht ausgeführt wird, wird die VM im VM Manager-Dashboard als nicht konform angezeigt. Das kann beispielsweise passieren, wenn ein Nutzer den Agent manuell deaktiviert hat.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Administrator für Organisationsrichtlinien (roles/orgpolicy.policyAdmin
) für die Organisation zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Verwalten von Organisationsrichtlinien benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
„compute.requireOsConfig“ für eine Organisation aktivieren
Nachdem Sie VM Manager aktiviert und einen OSPolicyAssignment
für Ihre VMs festgelegt haben, können Sie mit der Organisationsrichtlinie constraints/compute.requireOsConfig
dafür sorgen, dass VM Manager in allen neuen Projekten standardmäßig aktiviert ist. Wie Sie constraints/compute.requireOsConfig
durchsetzen, hängt von der verwendeten API-Version ab.
Organization Policy v2 API
Sie können die constraints/compute.requireOsConfig
-Einschränkung für eineGoogle Cloud -Ressource wie einen Ordner oder eine Organisation mit der gcloud CLI oder der Google Cloud -Konsole erzwingen.
gcloud
Prüfen Sie, ob die Einschränkung
compute.requireOsConfig
noch nicht angewendet wurde:gcloud org-policies describe \ constraints/compute.requireOsConfig \ --organization=ORGANIZATION_ID
Ersetzen Sie
ORGANIZATION_ID
durch Ihre Organisations-ID.Wenn keine Richtlinie festgelegt wurde, gibt dieser Befehl den Fehler
NOT_FOUND
zurück:ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
Wenn die Richtlinie vorhanden ist, wird sie durch den Befehl zurückgegeben. Wenn Sie eine neue Richtlinie anwenden, wird die vorhandene Richtlinie überschrieben, sofern vorhanden.
Erstellen Sie die temporäre Datei
/tmp/policy.yaml
zum Speichern der Richtlinie:name: organizations/ORGANIZATION_ID/policies/constraints/compute.requireOsConfig spec: rules: - enforce: true
Führen Sie den Befehl
set-policy
aus:gcloud org-policies set-policy /tmp/policy.yaml
Prüfen Sie, ob die neue Richtlinie angewendet wird:
gcloud org-policies describe \ constraints/compute.requireOsConfig --effective \ --organization=ORGANIZATION_ID
Die Ausgabe dieses Befehls sieht in etwa so aus:
name: organizations/ORGANIZATION_ID/policies/constraints/compute.requireOsConfig spec: rules: - enforce: true
Console
Rufen Sie in der Google Cloud Console die Seite Organisationsrichtlinien auf.
Wählen Sie in der Projektauswahl das Projekt, den Ordner oder die Organisation aus, für die Sie Organisationsrichtlinien bearbeiten möchten.
Verwenden Sie auf der Seite Organisationsrichtlinien den Filter, um nach
compute.requireOsConfig
zu suchen.Klicken Sie auf den Namen der Richtlinie, um die Seite Richtliniendetails zu öffnen.
Klicken Sie auf Richtlinie verwalten, um die Organisationsrichtlinie für diese Ressource zu aktualisieren.
Wählen Sie auf der Seite Richtlinie bearbeiten die Option Richtlinie der übergeordneten Ressource überschreiben aus.
Wählen Sie Regel hinzufügen aus.
Ändern Sie unter Erzwingung die Erzwingung dieser Organisationsrichtlinie in Aktiviert.
Klicken Sie auf Richtlinie festlegen, um die Richtlinie zu erzwingen.
Resource Manager v1 API
Prüfen Sie, ob die Einschränkung
compute.requireOsConfig
noch nicht angewendet wurde:gcloud resource-manager org-policies describe constraints/compute.requireOsConfig \ --organization ORGANIZATION_ID
Ersetzen Sie
ORGANIZATION_ID
durch Ihre Organisations-ID.Wenn keine Richtlinie festgelegt wurde, gibt dieser Befehl eine unvollständige Richtlinie wie im folgenden Beispiel zurück:
constraint: "constraints/compute.requireOsConfig" etag: BwVJi0OOESU=
Wenn die Richtlinie vorhanden ist, wird sie durch den Befehl zurückgegeben. Wenn Sie eine neue Richtlinie anwenden, wird die vorhandene Richtlinie überschrieben, sofern vorhanden.
Legen Sie die Richtlinie fest, die für die Organisation erzwungen werden soll:
gcloud resource-manager org-policies enable-enforce constraints/compute.requireOsConfig \ --organization ORGANIZATION_ID
Die Ausgabe dieses Befehls sieht in etwa so aus:
booleanPolicy: enforced: true constraint: constraints/compute.requireOsConfig etag: BwVJitxdiwY=
Prüfen Sie, ob die neue Richtlinie angewendet wird:
gcloud resource-manager org-policies describe constraints/compute.requireOsConfig \ --effective \ --organization ORGANIZATION_ID
Die Ausgabe dieses Befehls sieht in etwa so aus:
booleanPolicy: enforced: true constraint: constraints/compute.requireOsConfig
Es kann bis zu 15 Minuten dauern, bis Änderungen an Organisationsrichtlinien vollständig durchgesetzt werden.
Weitere Informationen zu anderen Richtlinien, die Sie anwenden können, oder zum Ändern oder Löschen von Richtlinien finden Sie in der Resource Manager-Dokumentation.
Nächste Schritte
Weitere Informationen zum GKE-Audit-Logging