In qualità di amministratore dell'organizzazione, devi definire i criteri che gli sviluppatori devono rispettare quando applicano Infrastructure as Code. L'insieme di criteri della tua organizzazione è rappresentato come una libreria di criteri. Questa pagina ti consente di creare un repository di criteri centralizzato e aggiungere vincoli.
Prima di iniziare
- Per archiviare la libreria di criteri dell'organizzazione è necessario un repository Git vuoto.
- Devi configurare Git per connetterti in modo sicuro. Ad esempio, se il tuo repository git si trova su GitHub, puoi seguire la procedura descritta in Connessione a GitHub con SSH.
Duplicare la raccolta di esempio
Google fornisce un repository di esempio che include un insieme di modelli di vincoli predefiniti che puoi modificare per uso personale.
Clona il repository di esempio della libreria di criteri e duplicalo in 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
Esamina i modelli di vincolo disponibili in
policies/templates
:ls policies/templates
Seleziona i modelli di vincolo che vuoi utilizzare. Per questo esempio, scegli
gcp_storage_location_v1.yaml
, che applica la località per i bucket Cloud Storage.Crea i file YAML vincolo corrispondenti a questi modelli in
policies/constraints
.Dall'interno della tua copia locale del repository
policy-library
, utilizza i seguenti comandi per eseguire il commit delle modifiche ed eseguirne il push:git add --all . git commit -m "Initial commit of policy library constraints" git push -u origin main
Struttura della biblioteca
Il repository di una libreria di criteri contiene le seguenti directory:
policies/
- Questa directory contiene due sottodirectory:constraints/
- Inizialmente questa directory è vuota. Posiziona i file dei vincoli qui.templates/
: questa directory contiene modelli di vincolo predefiniti.
validator/
: questa directory contiene i file.rego
e i relativi test delle unità. Non è necessario toccare questa directory a meno che tu non intenda modificare modelli di vincoli esistenti o crearne di nuovi. L'esecuzione dimake build
incorpora i contenuti Rego nei file dei modelli di vincolo corrispondenti.
Aggiornamenti periodici
Periodicamente dovresti eseguire il pull di eventuali modifiche dal repository pubblico, che potrebbe contenere nuovi modelli e file Rego.
git remote add public https://github.com/GoogleCloudPlatform/policy-library.git
git pull public main
git push origin main
Passaggi successivi
La libreria di criteri contiene una serie di modelli di vincoli e una cartella samples
con vincoli di esempio. Consulta Creare vincoli Terraform o Creare vincoli CAI per maggiori dettagli su come scrivere e utilizzare modelli e vincoli di vincolo.