Utilizzo dei vincoli

Questa guida spiega come creare una policy dell'organizzazione con un determinato vincolo. I vincoli utilizzati negli esempi di questa pagina non sono vincoli effettivi, ma campioni generalizzati a scopo didattico.

Per saperne di più sui vincoli e sui problemi che risolvono, consulta l'elenco di tutti i vincoli del servizio Policy dell'organizzazione.

Prima di iniziare

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per gestire le policy dell'organizzazione, chiedi all'amministratore di concederti il ruolo IAM Amministratore policy dell'organizzazione (roles/orgpolicy.policyAdmin) nell'organizzazione. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Delegare l'amministrazione delle policy dell'organizzazione

Per delegare l'amministrazione dei criteri dell'organizzazione a un'altra entità, aggiungi una condizione all'associazione di ruolo:

"bindings": [
  {
    "role": "roles/orgpolicy.policyAdmin",
    "members": [
      "PRINCIPAL_1",
      "PRINCIPAL_2"
    ],
    "condition": {
      "title": "TITLE",
      "description": "DESCRIPTION",
      "expression": "resource.matchTag('TAG_KEY', 'TAG_VALUE')"
    }
  }
]

Sostituisci quanto segue:

  • PRINCIPAL_1,PRINCIPAL_2: un elenco di soggetti a cui vuoi delegare il ruolo di amministratore delle policy dell'organizzazione.

  • TITLE: il titolo dell'espressione condizionale, ad esempio "Amministratore delle norme dell'organizzazione per gli ambienti di sviluppo".

  • DESCRIPTION: una descrizione facoltativa per l'espressione.

  • TAG_KEY: il nome con spazio dei nomi della chiave tag, ad esempio 123456789012/environment.

  • TAG_VALUE: il nome del valore tag. Il ruolo viene concesso solo per le risorse a cui è associato questo tag, ad esempio development.

Per ulteriori informazioni sull'utilizzo delle condizioni nelle policy di autorizzazione, consulta la panoramica delle condizioni IAM.

Utilizzare le regole di elenco in un criterio dell'organizzazione

Puoi impostare un criterio dell'organizzazione sulla risorsa dell'organizzazione che utilizza regole di elenco per negare l'accesso a un servizio specifico. La seguente procedura descrive come impostare un criterio dell'organizzazione utilizzando Google Cloud CLI. Per istruzioni su come visualizzare e impostare le policy dell'organizzazione utilizzando la console Google Cloud , consulta Creazione e gestione delle policy.

I criteri dell'organizzazione che utilizzano regole di elenco non possono avere più di 500 valori consentiti o negati individuali e non possono superare i 32 KB. Se viene creato o aggiornato un criterio dell'organizzazione in modo che contenga più di 500 valori o superi le dimensioni di 32 KB, non può essere salvato correttamente e la richiesta restituirà un errore.

Configura l'applicazione sulla risorsa dell'organizzazione

Per configurare l'applicazione di un criterio in un'organizzazione utilizzando gcloud CLI, segui questi passaggi:

  1. Ottieni la policy attuale sulla risorsa dell'organizzazione utilizzando il comando describe. Questo comando restituisce il criterio applicato direttamente a questa risorsa:

    gcloud org-policies describe \
      CONSTRAINT_NAME --organization=ORGANIZATION_ID
    

    Sostituisci quanto segue:

    • ORGANIZATION_ID: un identificatore univoco per la risorsa organizzazione. L'ID organizzazione è formattato come numeri decimali e non può avere zeri iniziali.

    • CONSTRAINT_NAME: il vincolo per il servizio che vuoi applicare. Ad esempio, il vincolo gcp.restrictNonCmekServices limita i servizi che possono creare risorse senza chiavi di crittografia gestite dal cliente (CMEK).

    Puoi anche applicare il criterio dell'organizzazione a una cartella o a un progetto con i flag --folder o --project e con l'ID cartella e l'ID progetto, rispettivamente.

    La risposta restituisce il criterio dell'organizzazione corrente, se esistente. Ad esempio:

    name: projects/841166443394/policies/gcp.resourceLocations
    spec:
      etag: BwW5P5cEOGs=
      inheritFromParent: true
      rules:
      - condition:
          expression: resource.matchTagId("tagKeys/1111", "tagValues/2222")
        values:
          allowedValues:
          - in:us-east1-locations
      - condition:
          expression: resource.matchTag("123/env", "prod")
        values:
          allowedValues:
          - in:us-west1-locations
      - values:
          deniedValues:
          - in:asia-south1-locations
      updateTime: '2021-01-19T12:00:51.095Z'
    

    Se non è impostato un criterio, viene restituito un errore NOT_FOUND:

    ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
    
  2. Imposta la policy sull'organizzazione utilizzando il comando set-policy. Questo sovrascrive qualsiasi policy associata alla risorsa.

    1. Crea un file temporaneo /tmp/policy.yaml per archiviare il criterio:

      name: organizations/ORGANIZATION_ID/policies/CONSTRAINT_NAME
      spec:
        rules:
        - values:
            deniedValues:
            - VALUE_A
      
    2. Esegui il comando set-policy:

      gcloud org-policies set-policy /tmp/policy.yaml
      
  3. Visualizza le norme attualmente in vigore utilizzando describe --effective. Viene restituita la policy dell'organizzazione così come viene valutata a questo punto della gerarchia delle risorse, inclusa l'ereditarietà.

    gcloud org-policies describe \
      CONSTRAINT_NAME --effective \
      --organization=ORGANIZATION_ID
    

    L'output del comando sarà:

    name: organizations/ORGANIZATION_ID/policies/CONSTRAINT_NAME
    spec:
      etag: BwVJi0OOESU=
      rules:
      - values:
          deniedValues:
          - VALUE_A
    

    Poiché questo criterio dell'organizzazione è stato impostato a livello di organizzazione, verrà ereditato da tutte le risorse secondarie che consentono l'ereditarietà.

L'applicazione completa delle modifiche alle norme dell'organizzazione può richiedere fino a 15 minuti.

Configura l'applicazione per un sottoalbero della gerarchia

I vincoli con regole di elenco accettano valori definiti in modo esplicito per determinare quali risorse devono essere consentite o negate. Alcuni vincoli possono accettare anche valori che utilizzano il prefisso under:, che specifica un sottoalbero con quella risorsa come radice. L'utilizzo del prefisso under: su un valore consentito o negato fa sì che il criterio dell'organizzazione agisca su quella risorsa e su tutte le relative risorse secondarie. Per informazioni sui vincoli che consentono l'utilizzo del prefisso under:, consulta la pagina Vincoli delle policy dell'organizzazione.

Un valore che utilizza il prefisso under: è chiamato stringa di sottoalbero della gerarchia. Una stringa di sottoalbero della gerarchia specifica il tipo di risorsa a cui si applica. Ad esempio, l'utilizzo di una stringa di sottoalbero di projects/PROJECT_ID quando si imposta il vincolo constraints/compute.storageResourceUseRestrictions consentirà o negherà l'utilizzo dello spazio di archiviazione Compute Engine per PROJECT_ID e tutti i relativi elementi secondari.

  1. Ottieni la policy attuale sulla risorsa dell'organizzazione utilizzando il comando describe:

    gcloud org-policies describe \
      CONSTRAINT_NAME \
      --organization=ORGANIZATION_ID
    

    Sostituisci quanto segue:

    • ORGANIZATION_ID è un identificatore univoco per la risorsa dell'organizzazione.

    • CONSTRAINT_NAME è il vincolo per il servizio che vuoi applicare.

    Puoi anche applicare il criterio dell'organizzazione a una cartella o a un progetto con i flag --folder o --project e con l'ID cartella e l'ID progetto, rispettivamente.

    Se non è impostato un criterio, viene restituito un errore NOT_FOUND:

    ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
    
  2. Imposta la policy sul progetto utilizzando il comando set-policy. Il prefisso under: imposta il vincolo in modo da negare la risorsa denominata e tutte le relative risorse secondarie.

    1. Crea un file temporaneo /tmp/policy.yaml per archiviare il criterio:

      name: organizations/ORGANIZATION_ID/policies/CONSTRAINT_NAME
      spec:
        rules:
        - values:
            deniedValues:
            - under:folders/VALUE_A
      
    2. Esegui il comando set-policy:

      gcloud org-policies set-policy /tmp/policy.yaml
      

    Dove:

    • under: è un prefisso che indica che ciò che segue è una stringa di sottostruttura ad albero.

    • folders/VALUE_A è l'ID cartella della risorsa radice che vuoi negare. Questa risorsa e tutti i relativi elementi secondari nella gerarchia delle risorse verranno negati.

    Puoi anche applicare il prefisso under: a organizzazioni e progetti, come nei seguenti esempi:

    • under:organizations/VALUE_X

    • under:projects/VALUE_Y

  3. Visualizza le norme attualmente in vigore utilizzando describe --effective.

    gcloud org-policies describe \
      CONSTRAINT_NAME --effective \
      --organization=ORGANIZATION_ID
    

    L'output del comando sarà:

    name: organizations/ORGANIZATION_ID/policies/CONSTRAINT_NAME
    spec:
      rules:
      - values:
          deniedValues:
          - under:folders/VALUE_A
    

    Ora il criterio viene valutato in modo da negare l'accesso alla cartella VALUE_A e a tutte le relative risorse figlio.

L'applicazione completa delle modifiche alle norme dell'organizzazione può richiedere fino a 15 minuti.

Unire la policy dell'organizzazione in un progetto

Puoi impostare un criterio dell'organizzazione per una risorsa, che verrà unito a qualsiasi criterio ereditato dalla risorsa padre. Queste norme unite verranno poi valutate per creare nuove norme effettive in base alle regole di ereditarietà.

  1. Ottieni la policy attuale sulla risorsa utilizzando il comando describe:

    gcloud org-policies describe \
      CONSTRAINT_NAME \
      --project=PROJECT_ID
    

    Sostituisci quanto segue:

    • PROJECT_ID: l' identificatore univoco del tuo progetto.

    • CONSTRAINT_NAME: il vincolo per il servizio che vuoi applicare.

    Se non è impostato un criterio, viene restituito un errore NOT_FOUND:

    ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
    
  2. Visualizza la policy effettiva corrente utilizzando il comando describe --effective:

    gcloud org-policies describe \
      CONSTRAINT_NAME --effective \
      --project=PROJECT_ID
    

    L'output del comando includerà un valore negato ereditato dalla risorsa organizzazione:

    name: projects/PROJECT_ID/policies/CONSTRAINT_NAME
    spec:
      rules:
      - values:
          deniedValues:
          - VALUE_A
    
  3. Imposta la policy sul progetto utilizzando il comando set-policy.

    1. Crea un file temporaneo /tmp/policy.yaml per archiviare il criterio:

      name: projects/PROJECT_ID/policies/CONSTRAINT_NAME
      spec:
        inheritFromParent: true
        rules:
        - values:
            deniedValues:
            - VALUE_B
            - VALUE_C
      
    2. Esegui il comando set-policy:

      gcloud org-policies set-policy /tmp/policy.yaml
      
  4. Utilizza di nuovo il comando describe --effective per visualizzare la policy aggiornata:

    gcloud org-policies describe \
      CONSTRAINT_NAME --effective \
      --project=PROJECT_ID
    

    L'output del comando includerà il risultato effettivo dell'unione del criterio della risorsa e di quello della risorsa padre:

    name: projects/PROJECT_ID/policies/CONSTRAINT_NAME
    spec:
      rules:
      - values:
          deniedValues:
            - VALUE_A
            - VALUE_B
            - VALUE_C
    

L'applicazione completa delle modifiche alle norme dell'organizzazione può richiedere fino a 15 minuti.

Ripristinare il comportamento predefinito del vincolo

Puoi utilizzare il comando reset per reimpostare il criterio in modo che utilizzi il comportamento predefinito del vincolo. Per un elenco di tutti i vincoli disponibili e dei relativi valori predefiniti, consulta Vincoli delle policy dell'organizzazione.L'esempio seguente presuppone che il comportamento predefinito del vincolo sia quello di consentire tutti i valori.

  1. Recupera la policy effettiva del progetto per visualizzare la policy unita corrente:

    gcloud org-policies describe \
      CONSTRAINT_NAME --effective \
      --project=PROJECT_ID
    

    Sostituisci PROJECT_ID con l'identificatore univoco del tuo progetto. L'output del comando sarà:

    name: projects/PROJECT_ID/policies/CONSTRAINT_NAME
    spec:
      rules:
      - values:
          deniedValues:
          - VALUE_A
          - VALUE_B
          - VALUE_C
    
  2. Reimposta il criterio dell'organizzazione utilizzando il comando reset.

    gcloud org-policies reset CONSTRAINT_NAME \
        --project=PROJECT_ID
    
  3. Recupera la policy effettiva per verificare il comportamento predefinito:

    gcloud org-policies describe \
      CONSTRAINT_NAME --effective \
      --project=PROJECT_ID
    

    L'output del comando consentirà tutti i valori:

    name: projects/PROJECT_ID/policies/CONSTRAINT_NAME
    spec:
      rules:
      - allowAll: true
    

L'applicazione completa delle modifiche alle norme dell'organizzazione può richiedere fino a 15 minuti.

Eliminare una norma dell'organizzazione

Puoi eliminare un criterio dell'organizzazione da una risorsa. Una risorsa senza un criterio dell'organizzazione impostato erediterà qualsiasi criterio della risorsa padre. Se elimini il criterio dell'organizzazione nella risorsa dell'organizzazione, il criterio effettivo sarà il comportamento predefinito del vincolo.

I passaggi seguenti descrivono come eliminare una policy dell'organizzazione in un'organizzazione.

  1. Elimina la policy nella risorsa dell'organizzazione utilizzando il comando delete:

    gcloud org-policies delete \
      CONSTRAINT_NAME \
      --organization=ORGANIZATION_ID
    

    Sostituisci ORGANIZATION_ID con l'identificatore univoco della risorsa organizzazione. L'output del comando sarà:

    Deleted policy
    [organizations/ORGANIZATION_ID/policies/CONSTRAINT_NAME].
    {}
    
  2. Recupera la policy effettiva dell'organizzazione per verificare che non sia applicata in modo forzato:

    gcloud org-policies describe \
      CONSTRAINT_NAME --effective \
      --organization=ORGANIZATION_ID
    

    L'output del comando sarà:

    name: organizations/ORGANIZATION_ID/policies/CONSTRAINT_NAME
    spec:
      rules:
      - allowAll: true
    

I passaggi seguenti descrivono come eliminare un criterio dell'organizzazione in un progetto:

  1. Elimina la policy in un progetto utilizzando il comando delete:

    gcloud org-policies delete \
      CONSTRAINT_NAME \
      --project=PROJECT_ID
    

    dove PROJECT_ID è l'identificatore univoco del tuo progetto. L'output del comando sarà:

    Deleted policy
    [projects/PROJECT_ID/policies/CONSTRAINT_NAME].
    {}
    
  2. Recupera il criterio effettivo per il progetto per verificare che non sia applicato:

    gcloud org-policies describe \
      CONSTRAINT_NAME --effective \
      --project=PROJECT_ID
    

    L'output del comando sarà:

    name: projects/PROJECT_ID/policies/CONSTRAINT_NAME
    spec:
      rules:
      - allowAll: true
    

L'applicazione completa delle modifiche alle norme dell'organizzazione può richiedere fino a 15 minuti.

Utilizzare regole booleane nei criteri dell'organizzazione

Configura l'applicazione sulla risorsa dell'organizzazione

La seguente procedura descrive come impostare un criterio dell'organizzazione con regole booleane utilizzando Google Cloud CLI. Per istruzioni su come visualizzare e impostare le policy dell'organizzazione utilizzando la console Google Cloud , consulta Creazione e gestione delle policy.

  1. Ottieni la policy attuale sulla risorsa organizzazione utilizzando il comando describe:

    gcloud org-policies describe \
      CONSTRAINT_NAME \
      --organization=ORGANIZATION_ID
    

    Sostituisci ORGANIZATION_ID con l'identificatore univoco della risorsa organizzazione. Puoi anche applicare il criterio dell'organizzazione a una cartella o a un progetto con i flag --folder o --project e gli ID cartella e ID progetto, rispettivamente.

    Se non è impostato un criterio, viene restituito un errore NOT_FOUND:

    ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
    
  2. Imposta la policy sul progetto utilizzando il comando set-policy.

    1. Crea un file temporaneo /tmp/policy.yaml per archiviare il criterio:

      name: organizations/ORGANIZATION_ID/policies/CONSTRAINT_NAME
      spec:
        rules:
        - enforce: true
      
    2. Esegui il comando set-policy:

      gcloud org-policies set-policy /tmp/policy.yaml
      
  3. Visualizza la policy attualmente in vigore utilizzando describe --effective:

    gcloud org-policies describe \
      CONSTRAINT_NAME --effective \
      --organization=ORGANIZATION_ID
    

    L'output del comando sarà:

    name: organizations/ORGANIZATION_ID/policies/BOOLEAN_CONSTRAINT
    spec:
      rules:
      - enforce: true
    

L'applicazione completa delle modifiche alle norme dell'organizzazione può richiedere fino a 15 minuti.

Ignorare il criterio dell'organizzazione per un progetto

Per ignorare la policy dell'organizzazione per un progetto, imposta una policy che disattivi l'applicazione del vincolo a tutte le risorse nella gerarchia sottostante il progetto.

  1. Recupera il criterio attuale sulla risorsa per mostrare che è vuoto.

    gcloud org-policies describe \
      CONSTRAINT_NAME \
      --project=PROJECT_ID
    

    dove PROJECT_ID è l'identificatore univoco del tuo progetto.

    Se non è impostato un criterio, viene restituito un errore NOT_FOUND:

    ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
    
  2. Recupera la policy effettiva sul progetto, che conferma che il vincolo viene applicato a questo progetto.

    gcloud org-policies describe \
      CONSTRAINT_NAME --effective \
      --project=PROJECT_ID
    

    L'output del comando sarà:

    name: projects/PROJECT_ID/policies/BOOLEAN_CONSTRAINT
    spec:
      rules:
      - enforce: true
    
  3. Imposta la policy sul progetto utilizzando il comando set-policy.

    1. Crea un file temporaneo /tmp/policy.yaml per archiviare il criterio:

      name: projects/PROJECT_ID/policies/CONSTRAINT_NAME
      spec:
        rules:
        - enforce: false
      
    2. Esegui il comando set-policy:

      gcloud org-policies set-policy /tmp/policy.yaml
      
  4. Recupera il criterio effettivo per dimostrare che non viene più applicato al progetto.

    gcloud org-policies describe \
      CONSTRAINT_NAME --effective \
      --project=PROJECT_ID
    

    L'output del comando sarà:

    name: organizations/ORGANIZATION_ID/policies/BOOLEAN_CONSTRAINT
    spec:
      rules:
      - enforce: false
    

L'applicazione completa delle modifiche alle norme dell'organizzazione può richiedere fino a 15 minuti.

Eliminare una norma dell'organizzazione

Puoi eliminare un criterio dell'organizzazione da una risorsa. Una risorsa senza un criterio dell'organizzazione impostato erediterà qualsiasi criterio della risorsa padre. Se elimini il criterio dell'organizzazione nella risorsa dell'organizzazione, il criterio effettivo sarà il comportamento predefinito dei vincoli.

I passaggi seguenti descrivono come eliminare un criterio dell'organizzazione in un'organizzazione e in un progetto.

  1. Elimina la policy dalla risorsa dell'organizzazione utilizzando il comando delete:

    gcloud org-policies delete \
      CONSTRAINT_NAME \
      --organization=ORGANIZATION_ID
    

    Sostituisci ORGANIZATION_ID con un identificatore univoco per la risorsa dell'organizzazione. L'output del comando sarà:

    Deleted policy
    [organizations/ORGANIZATION_ID/policies/CONSTRAINT_NAME].
    {}
    
  2. Recupera la policy effettiva dell'organizzazione per verificare che non sia applicata in modo forzato:

    gcloud org-policies describe \
      CONSTRAINT_NAME --effective \
      --organization=ORGANIZATION_ID
    

    Se non è impostato un criterio, viene restituito un errore NOT_FOUND:

    ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
    
  3. Elimina la policy dell'organizzazione dal progetto utilizzando il comando delete:

    gcloud org-policies delete \
      CONSTRAINT_NAME \
      --project=PROJECT_ID
    

    L'output del comando sarà:

    Deleted policy
    [organizations/ORGANIZATION_ID/policies/CONSTRAINT_NAME].
    {}
    
  4. Recupera il criterio effettivo per il progetto per verificare che non sia applicato:

    gcloud org-policies describe \
      CONSTRAINT_NAME --effective \
      --project=PROJECT_ID
    

    Sostituisci PROJECT_ID con l'identificatore univoco del tuo progetto.

    Se non è impostato un criterio, viene restituito un errore NOT_FOUND:

    ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
    

L'applicazione completa delle modifiche alle norme dell'organizzazione può richiedere fino a 15 minuti.

Utilizzare i vincoli gestiti in un criterio dell'organizzazione

I vincoli gestiti si basano sulla piattaforma custom organization policy. Possono utilizzare Policy Simulator per il servizio Criteri dell'organizzazione ed eseguire prove generali dei criteri dell'organizzazione per implementare in modo più sicuro le modifiche ai criteri.

Visualizzare e identificare i vincoli gestiti

Per visualizzare i vincoli gestiti disponibili per la tua organizzazione:

Console

  1. Nella console Google Cloud , vai alla pagina Policy dell'organizzazione.

    Vai a Policy dell'organizzazione

  2. Nel selettore di progetti, seleziona il progetto, la cartella o l'organizzazione per cui vuoi visualizzare le policy dell'organizzazione. La pagina Policy dell'organizzazione che viene visualizzata mostra un elenco dei vincoli delle policy dell'organizzazione disponibili per questa risorsa.

  3. Puoi filtrare o ordinare l'elenco dei criteri dell'organizzazione per tipo di vincolo per trovare i vincoli gestiti. Seleziona il vincolo gestito di cui vuoi visualizzare i dettagli dall'elenco. Nella pagina Dettagli policy visualizzata, puoi vedere l'origine di questa policy dell'organizzazione, la valutazione della policy effettiva su questa risorsa, la configurazione attuale della policy dell'organizzazione su questa risorsa, i dettagli del vincolo e i parametri predefiniti dei vincoli che li utilizzano.

gcloud

Per elencare i vincoli gestiti e personalizzati applicati nelle norme dell'organizzazione in un'organizzazione, utilizza il org-policies list-custom-constraints comando.

gcloud org-policies list-custom-constraints \
  --organization=ORGANIZATION_ID

Sostituisci ORGANIZATION_ID con l'ID della tua organizzazione.

Per ottenere i dettagli di un vincolo gestito specifico per una risorsa, utilizza il comando org-policies describe-custom-constraint.

gcloud org-policies describe-custom-constraint CONSTRAINT_NAME \
    --organization=ORGANIZATION_ID

Sostituisci quanto segue:

  • CONSTRAINT_NAME: il nome del vincolo gestito di cui vuoi visualizzare i dettagli. Ad esempio, iam.managed.disableServiceAccountKeyUpload.

  • ORGANIZATION_ID: l'ID della tua organizzazione.

REST

Per elencare i vincoli gestiti e personalizzati impostati nei criteri dell'organizzazione, utilizza il metodo organizations.customConstraints.list.

  GET https://orgpolicy.googleapis.com/v2/{parent=organizations/ORGANIZATION_ID}/customConstraints

Sostituisci ORGANIZATION_ID con l'ID della tua organizzazione.

Creazione e aggiornamento dei vincoli gestiti

I criteri dell'organizzazione sono definiti dalla configurazione del vincolo. Possono essere impostati su una risorsa, ereditati da una risorsa padre o reimpostati sul comportamento predefinito gestito da Google.

Per creare o aggiornare un criterio dell'organizzazione in base a un vincolo gestito:

Console

  1. Nella console Google Cloud , vai alla pagina Policy dell'organizzazione.

Vai a Policy dell'organizzazione

  1. Nel selettore di progetti, seleziona il progetto, la cartella o l'organizzazione per cui vuoi modificare la policy dell'organizzazione. La pagina Policy dell'organizzazione visualizzata mostra un elenco filtrabile di vincoli delle policy dell'organizzazione disponibili per questa risorsa.

  2. Seleziona dall'elenco il vincolo gestito per il quale vuoi aggiornare il criterio dell'organizzazione.

  3. Per aggiornare la policy dell'organizzazione per questa risorsa, fai clic su Gestisci policy.

  4. Nella pagina Modifica policy, seleziona Esegui override della policy dell'unità organizzativa principale.

  5. Seleziona Aggiungi una regola.

  6. In Applicazione, seleziona se l'applicazione di questa policy dell'organizzazione deve essere attivata o disattivata.

  7. (Facoltativo) Per rendere la policy dell'organizzazione condizionale in base a un tag, fai clic su Aggiungi condizione. Se aggiungi una regola condizionale a una policy dell'organizzazione, devi aggiungere almeno una regola incondizionata o la policy non può essere salvata. Per maggiori dettagli, vedi Impostazione di un criterio dell'organizzazione con tag.

  8. Se questo vincolo supporta i parametri, questi vengono visualizzati nella sezione Parametri con i valori configurati. Se i parametri non sono stati configurati, vengono visualizzati i valori predefiniti gestiti da Google.

    Per modificare un parametro, seleziona Modifica.

    1. In Valori, seleziona Predefinito per reimpostare questo vincolo in modo da utilizzare e visualizzare i valori predefiniti gestiti da Google.

    Seleziona Definito dall'utente per configurare il parametro.

    1. Per i parametri che accettano un elenco di valori, inserisci un valore da consentire o negare nel campo. Seleziona Aggiungi un valore per aggiungere altri campi.

    L'espressione Common Expression Language (CEL) utilizzata per convalidare i valori dei parametri è descritta in Espressione di valori validi. Tutti i valori definiti dall'utente devono soddisfare questa espressione.

    1. Per i parametri booleani, determina se il parametro deve essere applicato o meno selezionando True o False.

    2. Fai clic su Salva.

  9. (Facoltativo) Per visualizzare l'anteprima dell'impatto della modifica dei criteri dell'organizzazione prima dell'applicazione, fai clic su Testa modifiche. Per saperne di più sul test delle modifiche alle policy dell'organizzazione, consulta Testare le modifiche alle policy dell'organizzazione con Policy Simulator.

  10. Per applicare la policy dell'organizzazione in modalità dry run, fai clic su Imposta criterio dry run. Per ulteriori informazioni, vedi Creare una policy dell'organizzazione in modalità di prova.

  11. Dopo aver verificato che la policy dell'organizzazione in modalità di prova funziona come previsto, imposta la policy attiva facendo clic su Imposta policy.

gcloud

  1. Crea un file YAML per definire il criterio dell'organizzazione. Se questo vincolo non supporta i parametri, ometti il blocco parameters in rules.

    name: RESOURCE_TYPE/RESOURCE_ID/policies/CONSTRAINT_NAME
    spec:
    rules:
        - enforce: ENFORCEMENT_STATE
          parameters:
            LIST_PARAMETER:
               - LIST_VALUE_1
               - LIST_VALUE_2
            BOOLEAN_PARAMETER: BOOLEAN_VALUE
    
    dryRunSpec:
      rules:
      - enforce: ENFORCEMENT_STATE
        parameters:
          LIST_PARAMETER:
             - LIST_VALUE_1
             - LIST_VALUE_2
          BOOLEAN_PARAMETER: BOOLEAN_VALUE
    

    Sostituisci quanto segue:

    • RESOURCE_TYPE con organizations, folders o projects.

    • RESOURCE_ID con l'ID organizzazione, l'ID cartella, l'ID progetto o il numero di progetto, a seconda del tipo di risorsa specificato in RESOURCE_TYPE.

    • CONSTRAINT_NAME con il nome del vincolo che vuoi impostare.

    • ENFORCEMENT_STATE con true per applicare questo criterio dell'organizzazione quando è impostato oppure false per disattivarlo quando è impostato.

    • LIST_PARAMETER con il nome del parametro dell'elenco da configurare. Consulta la descrizione del vincolo per un elenco dei parametri disponibili.

    • LIST_VALUE_1, LIST_VALUE_2 e altri valori di elenco con un elenco di valori da consentire o negare, in base alla configurazione di questo parametro. Per informazioni dettagliate sui valori accettabili, consulta la descrizione del vincolo.

    • BOOLEAN_PARAMETER con il nome del parametro booleano da configurare. Consulta la descrizione del vincolo per un elenco dei parametri disponibili.

    • BOOLEAN_VALUE con True o False.

    (Facoltativo) Per rendere il criterio dell'organizzazione condizionale in base a un tag, aggiungi un blocco condition a rules. Se aggiungi una regola condizionale a una policy dell'organizzazione, devi aggiungere almeno una regola incondizionata o la policy non può essere salvata. Per maggiori dettagli, vedi Impostazione di un criterio dell'organizzazione con tag.

  2. Esegui il comando org-policies set-policy con il flag dryRunSpec per impostare la policy dell'organizzazione in modalità di prova:

     gcloud org-policies set-policy POLICY_PATH \
       --update-mask=dryRunSpec
    

    Sostituisci POLICY_PATH con il percorso completo del file YAML del criterio dell'organizzazione.

    Per saperne di più sulle policy dell'organizzazione di prova, vedi Creare una policy dell'organizzazione in modalità di prova.

  3. Utilizza il comando policy-intelligence simulate orgpolicy per visualizzare l'anteprima dell'impatto della modifica della policy dell'organizzazione prima che venga applicata:

    gcloud policy-intelligence simulate orgpolicy \
      --organization=ORGANIZATION_ID \
      --policies=POLICY_PATH
    

    Sostituisci quanto segue:

    • ORGANIZATION_ID con l'ID organizzazione, ad esempio 1234567890123. La simulazione delle modifiche in più organizzazioni non è supportata.

    • POLICY_PATH con il percorso completo del file YAML del criterio dell'organizzazione.

    Per saperne di più sul test delle modifiche alle policy dell'organizzazione, consulta la pagina Testare le modifiche alle policy dell'organizzazione con Policy Simulator.

  4. Dopo aver verificato che la policy dell'organizzazione in modalità di prova funzioni come previsto, imposta la policy attiva con il comando org-policies set-policy e il flag spec:

    gcloud org-policies set-policy POLICY_PATH \
      --update-mask=spec
    

    Sostituisci POLICY_PATH con il percorso completo del file YAML del criterio dell'organizzazione.

REST

Per impostare la policy dell'organizzazione, utilizza il metodo organizations.policies.create.

POST https://orgpolicy.googleapis.com/v2/{parent=organizations/ORGANIZATION_ID}/policies

Il corpo JSON della richiesta contiene la definizione di un criterio dell'organizzazione. Se questo vincolo non supporta i parametri, ometti il blocco parameters in rules.

{
  "name": "RESOURCE_TYPE/RESOURCE_ID/policies/CONSTRAINT_NAME",
  "spec": {
    "rules": [
      {
        "enforce": ["ENFORCEMENT_STATE"],
        "parameters": {
          "LIST_PARAMETER": [
            "LIST_VALUE_1",
            "LIST_VALUE_2"
          ],
          BOOLEAN_PARAMETER: BOOLEAN_VALUE
        }
      }
    ]
  }
  "dryRunSpec": {
    "rules": [
      {
        "enforce": ["ENFORCEMENT_STATE"],
        "parameters": {
          "LIST_PARAMETER": [
            "LIST_VALUE_1",
            "LIST_VALUE_2"
          ],
          BOOLEAN_PARAMETER: BOOLEAN_VALUE
        }
      }
    ]
  }
}

Sostituisci quanto segue:

  • RESOURCE_TYPE con organizations, folders o projects.

  • RESOURCE_ID con l'ID organizzazione, l'ID cartella, l'ID progetto o il numero di progetto, a seconda del tipo di risorsa specificato in RESOURCE_TYPE.

  • CONSTRAINT_NAME con il nome del vincolo che vuoi impostare.

  • ENFORCEMENT_STATE con true per applicare questo criterio dell'organizzazione quando è impostato oppure false per disattivarlo quando è impostato.

  • LIST_PARAMETER con il nome del parametro dell'elenco da configurare. Consulta la descrizione del vincolo per un elenco dei parametri disponibili.

  • LIST_VALUE_1, LIST_VALUE_2 e altri valori di elenco con un elenco di valori da consentire o negare, in base alla configurazione di questo parametro. Per informazioni dettagliate sui valori accettabili, consulta la descrizione del vincolo.

  • BOOLEAN_PARAMETER con il nome del parametro booleano da configurare. Consulta la descrizione del vincolo per un elenco dei parametri disponibili.

  • BOOLEAN_VALUE con True o False.

(Facoltativo) Per rendere il criterio dell'organizzazione condizionale in base a un tag, aggiungi un blocco condition a rules. Se aggiungi una regola condizionale a una policy dell'organizzazione, devi aggiungere almeno una regola incondizionata o la policy non può essere salvata. Per maggiori dettagli, vedi Impostazione di un criterio dell'organizzazione con tag.

Per saperne di più sulle policy dell'organizzazione di prova, vedi Creare una policy dell'organizzazione in modalità di prova.

L'applicazione completa delle modifiche alle norme dell'organizzazione può richiedere fino a 15 minuti.