Als Organisationsadministrator haben Sie die Aufgabe, Richtlinien für Entwickler zu definieren, die sie bei der Anwendung der Infrastruktur als Code einhalten müssen. Die Richtlinien Ihrer Organisation werden als Richtlinienbibliothek festgelegt. Auf dieser Seite wird gezeigt, wie Sie ein zentrales Richtlinien-Repository erstellen und Einschränkungen hinzufügen.
Hinweis
- Sie benötigen ein leeres Git-Repository zum Speichern der Richtlinienbibliothek Ihrer Organisation.
- Sie müssen Git für eine sichere Verbindung konfigurieren. Wenn sich Ihr Git-Repository beispielsweise auf GitHub befindet, folgen Sie der Anleitung unter Verbindung zu GitHub mit SSH herstellen.
Beispielbibliothek duplizieren
Google bietet ein Beispiel-Repository mit einer Reihe vordefinierter Einschränkungsvorlagen, die Sie für Ihre persönliche Anwendung anpassen können.
Klonen Sie das Beispiel-Repository der Richtlinienbibliothek und duplizieren Sie es in Ihr POLICY_LIBRARY_REPO:
git clone https://github.com/GoogleCloudPlatform/policy-library.git cd policy-library git remote set-url origin POLICY_LIBRARY_REPO git push origin main
Sehen Sie sich die verfügbaren Einschränkungsvorlagen in
policies/templates
an:ls policies/templates
.Wählen Sie die Einschränkungsvorlagen aus, die Sie verwenden möchten. Wählen Sie für dieses Beispiel die Vorlage
gcp_storage_location_v1.yaml
aus. Diese erzwingt den Standort für Cloud Storage-Buckets.Erstellen Sie die YAML-Einschränkungsdateien, die diesen Vorlagen entsprechen, unter
policies/constraints
.Verwenden Sie in Ihrer lokalen Kopie des
policy-library
-Repositorys die folgenden Befehle, um ein Commit für Ihre Änderungen auszuführen und sie per Push zu übertragen:git add --all . git commit -m "Initial commit of policy library constraints" git push -u origin main
Bibliotheksstruktur
Ein Repository für die Richtlinienbibliothek enthält die folgenden Verzeichnisse:
policies/
: Dieses Verzeichnis enthält zwei Unterverzeichnisse:constraints/
: Dieses Verzeichnis ist anfangs leer. Platzieren Sie hier die Einschränkungsdateien.templates/
: Dieses Verzeichnis enthält vordefinierte Einschränkungsvorlagen.
validator/
: Dieses Verzeichnis enthält die.rego
-Dateien und die zugehörigen Unittests. Sie verwenden dieses Verzeichnis nur dann, wenn Sie vorhandene Einschränkungsvorlagen ändern oder neue erstellen möchten. Durch Ausführen vonmake build
wird der Rego-Inhalt in die entsprechenden Dateien mit Einschränkungsvorlagen eingefügt.
Regelmäßige Aktualisierungen
Sie sollten regelmäßig Änderungen aus dem öffentlichen Repository abrufen, da es eventuell neue Vorlagen und Rego-Dateien enthält.
git remote add public https://github.com/GoogleCloudPlatform/policy-library.git
git pull public main
git push origin main
Nächste Schritte
Die Richtlinienbibliothek enthält eine Reihe von Einschränkungsvorlagen und den Ordner samples
mit Beispieleinschränkungen. Informationen zum Schreiben und Verwenden von Einschränkungsvorlagen und -einschränkungen finden Sie unter Terraform-Einschränkungen erstellen oder CAI-Einschränkungen erstellen.