Utilizza i tag per i firewall

Crea i tag prima di cercare di associarli alle risorse o utilizzarli nei criteri firewall di rete. Per controllare l'accesso alla rete, i tag sono efficaci solo se associati a istanze VM.

Per una panoramica, vedi Tag per firewall.

Concedi autorizzazioni ai tag

Il ruolo tagAdmin consente di creare nuovi tag o di aggiornare ed eliminare i tag esistenti. Un amministratore dell'organizzazione può concedere questo ruolo a livello di organizzazione, mentre un proprietario del progetto può concederlo a livello di progetto.

gcloud

  1. Concedi il ruolo tagAdmin all'utente.

    gcloud organizations add-iam-policy-binding ORGANIZATION_ID \
       --member=user:EMAIL_ADDRESS \
       --role=roles/resourcemanager.tagAdmin
    

    Sostituisci quanto segue:

    • ORGANIZATION_ID: ID della tua organizzazione
    • EMAIL_ADDRESS: l'indirizzo email dell'utente
  2. Concedi il ruolo tagUser all'utente.

    gcloud resource-manager tags keys add-iam-policy-binding ORGANIZATION_ID/TAG_KEY \
       --member=user:EMAIL_ADDRESS \
       --role=roles/resourcemanager.tagUser
    

    Sostituisci quanto segue:

    • ORGANIZATION_ID: ID della tua organizzazione
    • TAG_KEY: la chiave tag
    • EMAIL_ADDRESS: l'indirizzo email dell'utente

Ruoli personalizzati per gestire i tag

Il ruolo tagAdmin ti consente di eseguire le seguenti azioni: creare nuovi tag, aggiornare ed eliminare i tag esistenti. Se hai bisogno di alcune di queste funzionalità, puoi creare un ruolo IAM personalizzato con le autorizzazioni pertinenti e poi concedere il nuovo ruolo all'utente di destinazione. Per l'elenco delle autorizzazioni pertinenti, consulta Autorizzazioni IAM.

I tag utilizzati nei criteri firewall devono essere designati con uno scopo GCE_FIREWALL. Sebbene lo scopo GCE_FIREWALL sia necessario per l'utilizzo del tag nelle funzionalità di networking, puoi utilizzare il tag per altre azioni.

I tag utilizzati nei criteri firewall di rete devono avere un ambito limitato a un singolo VPC.

Creare le chiavi e i valori dei tag

Prima di associare i tag ai criteri firewall di rete, è necessario creare le chiavi e i valori Tag.

gcloud

  1. Dopo aver ottenuto le autorizzazioni richieste, crea la chiave Tag.

    gcloud resource-manager tags keys create TAG_KEY \
       --parent organizations/ORGANIZATION_ID \
       --purpose GCE_FIREWALL \
       --purpose-data network=PROJECT_ID/NETWORK
    

    Sostituisci quanto segue:

    • TAG_KEY: la chiave tag
    • ORGANIZATION_ID: ID della tua organizzazione
    • PROJECT_ID: l'ID del progetto
    • NETWORK: il nome della tua rete
  2. Aggiungi i valori Tag pertinenti alle chiavi Tag. Esegui il comando più volte per aggiungere più valori. Assicurati che ogni valore di tag aggiunto alla chiave tag sia univoco.

    gcloud resource-manager tags values create TAG_VALUE \
       --parent ORGANIZATION_ID/TAG_KEY
    

    Sostituisci quanto segue:

    • ORGANIZATION_ID: ID della tua organizzazione
    • TAG_KEY: la chiave tag
    • TAG_VALUE: il valore da assegnare alla chiave tag

Crea una regola del criterio firewall con i tag

Dopo aver creato un tag, puoi utilizzarlo nei criteri firewall di rete. Puoi creare una regola del criterio firewall di rete con i valori specifici dei tag di origine e dei tag di destinazione per consentire il traffico desiderato tra le VM con i tag di origine e di destinazione.

gcloud

  1. Crea una regola del criterio firewall di rete con le chiavi e i valori di origine e di destinazione specifici.

    gcloud compute network-firewall-policies rules create 1 \
        --firewall-policy FIREWALL_POLICY_NAME \
        --src-secure-tags ORGANIZATION_ID/TAG_KEY/TAG_VALUE \
        --target-secure-tags ORGANIZATION_ID/TAG_KEY/TAG_VALUE \
        --direction DIRECTION \
        --action ACTION \
        --layer4-configs tcp:PORT \
        --global-firewall-policy
    

    Sostituisci quanto segue:

    • FIREWALL_POLICY_NAME: il nome del nuovo criterio firewall di rete globale di rete
    • ORGANIZATION_ID: ID della tua organizzazione
    • TAG_KEY: la chiave tag
    • TAG_VALUE: il valore da assegnare alla chiave tag
    • DIRECTION: indica se la regola è una regola ingress o egress
    • ACTION: una delle seguenti azioni:
      • allow: consente le connessioni che corrispondono alla regola
      • deny: nega le connessioni che corrispondono alla regola
      • goto_next: passa la valutazione della connessione al livello successivo nella gerarchia (una cartella o una rete)
    • PORT: il numero di porta per accedere alla risorsa

Associa tag a istanze VM

Gli amministratori di tag possono associare i tag a singole istanze VM.

L'associazione di un tag a una risorsa collega un valore Tag a una risorsa. Sebbene un tag possa avere più valori per una determinata chiave, puoi associare un solo valore per chiave tag a una risorsa. Ad esempio, non puoi associare i valori del tag web-backend e mysql alla stessa istanza VM perché appartengono alla stessa chiave tag vm-function.

Ad esempio, Sasha, uno sviluppatore, vuole configurare un'applicazione che consiste in un backend API e un archivio di database di supporto. Per consentire il traffico tra il backend e il server di database, Sasha deve associare i valori del tag web-backend e mysql a VM diverse.

gcloud

  1. Concedi il ruolo tagUser.

    gcloud resource-manager tags keys add-iam-policy-binding ORGANIZATION_ID/TAG_KEY \
       --member=user:EMAIL_ADDRESS \
       --role=roles/resourcemanager.tagUser
    

    Sostituisci quanto segue:

    • ORGANIZATION_ID: ID della tua organizzazione
    • TAG_KEY: la chiave tag
    • EMAIL_ADDRESS: l'indirizzo email dell'utente

    In questo comando, all'utente viene concesso l'utilizzo di tutti i valori attuali e futuri della chiave. Puoi anche concedere in modo selettivo l'accesso solo a valori specifici di un tag, come segue:

    gcloud resource-manager tags values add-iam-policy-binding ORGANIZATION_ID/TAG_KEY/TAG_VALUE \
       --member=user:EMAIL_ADDRESS \
       --role=roles/resourcemanager.tagUser
    

    Sostituisci quanto segue:

    • ORGANIZATION_ID: ID della tua organizzazione
    • TAG_KEY: la chiave tag
    • TAG_VALUE: il valore da assegnare alla chiave tag
    • EMAIL_ADDRESS: l'indirizzo email dell'utente
  2. Concedi il ruolo tagUser per le risorse a cui vuoi associare i tag.

    gcloud projects add-iam-policy-binding PROJECT_NAME \
       --member=user:EMAIL_ADDRESS \
       --role=roles/resourcemanager.tagUser
    

    Sostituisci quanto segue:

    • PROJECT_NAME: il nome del progetto
    • EMAIL_ADDRESS: l'indirizzo email dell'utente
  3. Ottieni il valore di PARENT per la coppia chiave-valore Tag:

    1. Ottieni il prefisso del nome completo per il progetto e la zona:

      FULL_NAME_PREFIX=//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/
      
    2. Ottieni l'ID VM:

      VM_ID=$(gcloud compute instances describe VM_NAME --format='value(id)')
      
    3. Concatena i valori di FULL_NAME_PREFIX e VM_ID:

      PARENT="$FULL_NAME_PREFIX$VM_ID"
      

    Sostituisci quanto segue:

    • PROJECT_NUMBER: il numero del progetto
    • ZONE: la zona in cui si trova la VM
    • VM_NAME: il nome della VM su cui stai lavorando
  4. Elenca le associazioni.

    gcloud resource-manager tags bindings list \
       --location LOCATION_NAME \
       --parent PARENT
    

    Sostituisci quanto segue:

    • LOCATION_NAME: la posizione a cui appartiene il Tag
    • PARENT: il nome completo della risorsa associato all'associazione
  5. Elimina e crea le associazioni.

    gcloud resource-manager tags bindings delete \
       --location LOCATION_NAME \
       --tag-value ORGANIZATION_ID/TAG_KEY/TAG_VALUE \
       --parent PARENT
    
    gcloud resource-manager tags bindings create \
       --location LOCATION_NAME \
       --tag-value ORGANIZATION_ID/TAG_KEY/TAG_VALUE \
       --parent PARENT
    

    Sostituisci quanto segue:

    • LOCATION_NAME: la posizione a cui appartiene il Tag
    • ORGANIZATION_ID: ID della tua organizzazione
    • TAG_KEY: la chiave tag
    • TAG_VALUE: il valore della chiave tag
    • PARENT: il nome completo della risorsa da collegare al valore tag

Utilizzare i tag in reti in peering

Puoi utilizzare i tag nel peering di rete. Esegui le seguenti attività nell'ordine specificato per utilizzare i tag su due reti in peering.

  1. Assegna il ruolo tagAdmin a due utenti: un utente in ogni rete peer. Un amministratore dell'organizzazione concede i ruoli tagAdmin agli utenti a livello di organizzazione, mentre un proprietario del progetto può concederli a livello di progetto.
  2. Consenti al primo utente di rete di creare chiavi e valori di tag nella prima rete.
  3. Consenti al secondo utente di rete di creare chiavi e valori dei tag nella seconda rete.
  4. Concedi le autorizzazioni richieste a entrambi gli utenti per associare i tag in entrambe le reti.
  5. Associa i tag a utenti e risorse nella prima rete.
  6. Associa i tag a utenti e risorse nella seconda rete.
  7. All'utente della seconda rete, concedi le autorizzazioni tagUser nella prima.
  8. All'utente della prima rete, concedi le autorizzazioni tagUser nella seconda.
  9. Crea una regola del criterio firewall nella prima rete.
  10. Crea una regola del criterio firewall nella seconda rete.

Passaggi successivi