Creazione di una libreria di criteri

In qualità di amministratore dell'organizzazione, devi definire i criteri a cui devono attenersi gli sviluppatori quando applicano l'infrastruttura come codice. L'insieme di criteri della tua organizzazione è rappresentato come una raccolta di criteri. Questa pagina ti aiuta a creare un repository di criteri centralizzato e ad aggiungere vincoli.

Prima di iniziare

  • Devi avere un repository Git vuoto per archiviare la raccolta di criteri della tua organizzazione.
  • Devi configurare Git per la connessione sicura. Ad esempio, se il tuo repository Git si trova su GitHub, puoi seguire la procedura descritta in Connessione a GitHub con SSH.

Duplicare la libreria di esempi

Google fornisce un repository di esempio che include un insieme di modelli di vincoli predefiniti che puoi modificare per uso personale.

  1. 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
    
  2. Esamina i modelli di vincoli disponibili in policies/templates: ls policies/templates

  3. 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.

  4. Crea i file YAML dei vincoli corrispondenti a questi modelli in policies/constraints.

  5. All'interno della tua copia locale del repository policy-library, utilizza i seguenti comandi per eseguire il commit e il push delle modifiche:

    git add --all .
    git commit -m "Initial commit of policy library constraints"
    git push -u origin main
    

Struttura della libreria

Un repository della libreria di norme contiene le seguenti directory:

  • policies/: questa directory contiene due sottodirectory:

    • constraints/: questa directory è inizialmente vuota. Inserisci qui i file di vincolo.
    • templates/: questa directory contiene modelli di vincoli predefiniti.
  • validator/: questa directory contiene i file .rego e i relativi test di unità associati. Non è necessario modificare questa directory, a meno che tu non intenda modificare i modelli di vincoli esistenti o crearne di nuovi. L'esecuzione di make build inserisce in linea i contenuti Rego nei file dei modelli di vincoli corrispondenti.

Aggiornamenti periodici

Periodicamente devi estrarre 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 vincolo e una samples cartella con vincoli di esempio. Leggi Creare vincoli Terraform o Creare vincoli CAI per informazioni dettagliate su come scrivere e utilizzare modelli e vincoli.