Configurare criteri di sicurezza gerarchici

Questa pagina contiene informazioni sulla configurazione delle policy di sicurezza gerarchiche per proteggere la tua organizzazione, le cartelle o i progetti. Prima di configurare le norme di sicurezza gerarchiche, assicurati di conoscere le informazioni contenute nella panoramica delle norme di sicurezza gerarchiche.

Configura le autorizzazioni IAM per i criteri di sicurezza gerarchici

Le seguenti operazioni richiedono il ruolo Identity and Access Management (IAM) Amministratore delle norme di sicurezza dell'organizzazione di Compute (roles/compute.orgSecurityPolicyAdmin) sul nodo della gerarchia delle risorse di destinazione o sulle norme stesse, se esistono già:

  • Crea una nuova policy di sicurezza gerarchica
  • Modifica un criterio di sicurezza gerarchico aggiungendo, aggiornando o eliminando regole
  • Elimina una policy di sicurezza gerarchica

Le seguenti operazioni richiedono il ruolo IAM Amministratore risorse organizzazione Compute (roles/compute.orgSecurityResourceAdmin) nel nodo della gerarchia delle risorse di destinazione, oltre al ruolo Amministratore policy di sicurezza dell'organizzazione Compute (roles/compute.orgSecurityPolicyAdmin) o al ruolo Utente policy di sicurezza dell'organizzazione Compute (roles/compute.orgSecurityPolicyUser) nel nodo della gerarchia delle risorse di destinazione o nella policy stessa:

  • Associa un criterio di sicurezza gerarchico a un nodo della gerarchia delle risorse

Infine, consulta la tabella seguente per un elenco di operazioni varie che puoi eseguire se disponi di uno dei ruoli elencati:

Operazioni Ruoli
Visualizzare tutte le regole Google Cloud Armor effettive per una risorsa di backend
Visualizza le risorse di backend effettive coperte da un organizationSecurityPolicy

Configurare criteri di sicurezza gerarchici

Le sezioni seguenti spiegano come creare criteri di sicurezza gerarchici, associarli ai nodi della gerarchia delle risorse, spostarli tra i nodi, eliminarli e come visualizzare tutte le regole dei criteri di sicurezza di Google Cloud Armor che si applicano a una risorsa protetta.

Crea una policy di sicurezza gerarchica

Crea un criterio di sicurezza gerarchico utilizzando il comando gcloud beta compute org-security-policies create. Crea il criterio di sicurezza gerarchico in un'organizzazione o una cartella utilizzando il flag --organization o --folder, insieme al flag ORGANIZATION_ID o FOLDER_ID corrispondente. Utilizza gli esempi seguenti per creare criteri di sicurezza gerarchici, sostituendo POLICY_NAME con il nome che vuoi assegnare al nuovo criterio di sicurezza:

  • Crea un criterio di sicurezza gerarchico a livello di organizzazione:

    gcloud beta compute org-security-policies create \
        --organization=ORGANIZATION_ID \
        --type=CLOUD_ARMOR \
        --short-name=POLICY_NAME
    
  • Crea un criterio di sicurezza gerarchico a livello di cartella:

    gcloud beta compute org-security-policies create \ 
        --folder=FOLDER_ID \
        --type=CLOUD_ARMOR \
        --short-name=POLICY_NAME
    

Associa una policy di sicurezza esistente a un nodo della gerarchia delle risorse

Se hai un criterio di sicurezza esistente, puoi associarlo a un nodo della gerarchia delle risorse utilizzando il comando gcloud beta compute org-security-policies associations create. Sostituisci quanto segue:

  • POLICY_ID: l'ID del criterio di sicurezza
  • POLICY_NAME: il nome della policy di sicurezza
  • ORGANIZATION_ID: l'ID dell'organizzazione
  • FOLDER_ID: l'ID della cartella
  • PROJECT_ID: l'ID progetto

  • Associa una policy di sicurezza gerarchica a un'organizzazione:

    gcloud beta compute org-security-policies associations create \
        --security-policy=POLICY_ID \
        --organization=ORGANIZATION_ID \
        --name=ASSOCIATION_NAME
    
  • Associa una policy di sicurezza gerarchica a una cartella:

    gcloud beta compute org-security-policies associations create \
        --security-policy=POLICY_ID \
        --folder=FOLDER_ID \
        --name=ASSOCIATION_NAME
    
  • Associa una policy di sicurezza gerarchica a un progetto:

    gcloud beta compute org-security-policies associations create \
      --security-policy=POLICY_ID \
      --project-number=PROJECT_ID \
      --name=ASSOCIATION_NAME
    

Escludere i progetti dai criteri di sicurezza gerarchici

Inoltre, puoi escludere i progetti dai criteri di sicurezza gerarchici a livello di cartella ed escludere sia i progetti sia le cartelle dai criteri di sicurezza gerarchici a livello di organizzazione:

  • Puoi escludere i progetti da una policy di sicurezza gerarchica utilizzando il comando beta compute org-security-policies associations create con il flag --excluded-projects.

    Il seguente comando di esempio associa il criterio di sicurezza example-policy all'organizzazione 10000001, escludendo il progetto con l'ID 2000000002:

    gcloud beta compute org-security-policies associations create \
        --security-policy=example-policy \
        --excluded-projects="projects/2000000002" \
        --organization=10000001
    
  • Puoi escludere le cartelle da un criterio di sicurezza gerarchico a livello di organizzazione utilizzando il comando beta compute org-security-policies associations create con il flag --excluded-folders.

    Il seguente comando di esempio associa la policy di sicurezza example-policy all'organizzazione 10000001, escludendo la cartella con l'ID 3000000003:

    gcloud beta compute org-security-policies associations create \
        --security-policy=example-policy \
        --excluded-folders="folders/3000000003" \
        --organization=10000001
    

Sposta una policy di sicurezza gerarchica

Puoi modificare l'elemento principale di un criterio di sicurezza gerarchico utilizzando gcloud beta compute org-security-policies move per spostare il criterio di sicurezza gerarchico in un nodo della gerarchia di risorse principale diverso. Fornisci l'origine come primo flag e la destinazione come secondo flag. Lo spostamento di una policy di sicurezza gerarchica ne modifica la proprietà, non le risorse a cui è associata. Solo le organizzazioni e le cartelle possono essere proprietarie di criteri di sicurezza gerarchici, pertanto non puoi spostarli nei progetti.

Nell'esempio seguente, sposti una policy di sicurezza gerarchica dall'organizzazione ORGANIZATION_ID alla cartella FOLDER_ID:

gcloud beta compute org-security-policies move policy-1 \
    --organization ORGANIZATION_ID \
    --folder FOLDER_ID

Elimina una policy di sicurezza gerarchica

Prima di poter eliminare una policy di sicurezza gerarchica, devi prima eliminare tutte le associazioni della policy ai nodi della gerarchia delle risorse. Nell'esempio seguente, utilizzi il comando beta compute org-security-policies associations delete per rimuovere l'associazione denominata ASSOCIATION_NAME tra i criteri di sicurezza gerarchica con il nome POLICY_NAME e l'organizzazione ORGANIZATION_ID:

gcloud beta compute org-security-policies associations delete ASSOCIATION_NAME \
    --security-policy=POLICY_NAME \
    --organization=ORGANIZATION_ID

Se non è l'unica associazione della norma di sicurezza, ripeti il passaggio precedente per ogni associazione. Quando la norma di sicurezza gerarchica non ha associazioni, puoi eliminarla utilizzando il comando compute org-security-policies delete, come nel seguente esempio:

gcloud beta compute org-security-policies delete POLICY_NAME \
    --organization=ORGANIZATION_ID

Visualizza tutte le regole Google Cloud Armor effettive per una risorsa protetta

Puoi visualizzare tutte le regole dei criteri di sicurezza di Google Cloud Armor che si applicano a una risorsa protetta utilizzando il comando gcloud beta compute backend-services get-effective-security-policies. Nell'esempio seguente, sostituisci RESOURCE_NAME con il nome della risorsa protetta che vuoi controllare:

gcloud beta compute backend-services get-effective-security-policies PROTECTED_RESOURCE

Quando esegui il comando gcloud beta compute get-effective-security-policies su un servizio di backend all'interno di un progetto che eredita un policy di sicurezza gerarchica, la risposta potrebbe includere la policy di sicurezza gerarchica anche se il tipo di questo servizio di backend specifico non è supportato dalle policy di sicurezza gerarchiche. Per un elenco delle configurazioni di backend supportate per le policy di sicurezza gerarchiche, consulta la panoramica delle policy di sicurezza gerarchiche.

Casi d'uso

Le sezioni seguenti descrivono i casi d'uso per i criteri di sicurezza gerarchici.

Negare il traffico da un insieme di indirizzi IP a tutti i bilanciatori del carico delle applicazioni della tua organizzazione

Puoi utilizzare i criteri di sicurezza gerarchici per gestire un elenco di indirizzi IP a cui non è consentito accedere all'intera rete dell'organizzazione o per negare il traffico da una regione o un paese specifico. Ciò può aiutarti ad affrontare problemi di sicurezza specifici dell'azienda o a mantenere la conformità. I passaggi che seguono mostrano come creare un criterio di sicurezza gerarchico a livello di organizzazione che nega il traffico dall'intervallo di indirizzi IP 192.0.2.0/24:

  1. Crea una policy di sicurezza gerarchica denominata org-level-deny-ip-policy, collegata a un'organizzazione con ID 1000000001:

     gcloud beta compute org-security-policies create \
         --organization=1000000001 \
         --type=CLOUD_ARMOR \
         --description= "this is an org policy to deny a set of IP addresses for all resources" \
         --short-name=org-level-deny-ip-policy
    
  2. Aggiungi una regola con priorità 1000 con una condizione di corrispondenza per l'intervallo di indirizzi IP 192.0.2.0/24 e un'azione deny:

     gcloud beta compute org-security-policies rules create 1000 \
         --action=deny \
         --security-policy=org-level-deny-ip-policy \
         --organization=1000000001 \
         --description "Deny traffic from 192.0.2.0/24" \
         --src-ip-ranges "192.0.2.0/24"
    
  3. Infine, associa il criterio di sicurezza all'organizzazione, rifiutando le richieste dall'indirizzo IP 192.0.2.0/24 a tutti i servizi dell'organizzazione:

     gcloud beta compute org-security-policies associations create \
         --security-policy=org-level-deny-ip-policy \
         --organization=ORGANIZATION_ID
    

Concedere a un insieme di indirizzi IP di origine l'accesso ad alcuni progetti all'interno della tua organizzazione

Puoi concedere l'accesso ad alcuni progetti all'interno della tua organizzazione a un indirizzo IP o a più indirizzi IP. Potresti voler eseguire questa operazione se hai un proxy upstream attendibile che vuoi escludere dalla valutazione delle regole solo per alcuni dei tuoi progetti. Nell'esempio seguente basato su Cloud CDN, utilizzi un criterio di sicurezza gerarchico a livello di cartella per concedere all'intervallo di indirizzi IP 192.0.2.0/24 l'accesso ai progetti denominati project-1, project-2 e project-3 nell'organizzazione 10000001:

  1. Utilizza i seguenti comandi per spostare project-1, project-2 e project-3 in una cartella con ID 20000002:

    gcloud projects move project-1 --folder=20000002
    gcloud projects move project-2 --folder=20000002
    gcloud projects move project-3 --folder=20000002
    
  2. Utilizza il comando seguente per creare un criterio di sicurezza denominato org-level-proxy-filtering:

     gcloud beta compute org-security-policies create \
         --folder=20000002 \
         --type=CLOUD_ARMOR \
         --short-name=org-level-proxy-filtering
    
  3. Aggiungi una regola con priorità 1000 con una condizione di corrispondenza per l'intervallo di indirizzi IP 192.0.2.0/24 e un'azione della regola goto_next. Se una richiesta corrisponde a questa condizione, Google Cloud Armor interrompe la valutazione delle regole all'interno di questi criteri di sicurezza:

     gcloud beta compute org-security-policies rules create 1000 \
         --action=goto_next \
         --security-policy=org-level-proxy-filtering \
         --organization=10000001 \
         --src-ip-ranges="192.0.2.0/24"
    
  4. (Facoltativo) Se vuoi applicare le regole dei criteri di sicurezza a questi progetti per le richieste che non provengono da 192.0.2.0/24 , aggiungi altre regole con una priorità inferiore a 1000. Puoi eseguire questo passaggio in un secondo momento.

  5. Utilizza il seguente comando per associare la policy alla cartella con ID 20000002, in cui hai spostato i progetti nel passaggio 1:

     gcloud beta compute org-security-policies associations create \
         --security-policy=org-level-proxy-filtering \
         --folder=20000002
    

Passaggi successivi