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 da 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 una 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 del vincolo corrispondenti a questi modelli in policies/constraints.

  5. Dall'interno della copia locale del repository policy-library, usa 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 criteri contiene le seguenti directory:

  • policies/: questa directory contiene due sottodirectory:

    • constraints/: questa directory è inizialmente vuota. Inserisci qui i file dei vincoli.
    • templates/: questa directory contiene modelli di vincoli predefiniti.
  • validator/ - Questa directory contiene i file .rego e i test delle unità associati. Non è necessario toccare questa directory, a meno che tu non voglia 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 dei criteri contiene una serie di modelli di vincolo e un samples cartella con vincoli di esempio. Letto Crea vincoli Terraform o Crea vincoli CAI per maggiori dettagli su come scrivere e utilizzare modelli e vincoli di vincolo.