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 policy di sicurezza gerarchica, assicurati di conoscere le informazioni contenute nella panoramica delle policy di sicurezza gerarchica.
Configura le autorizzazioni IAM per le policy di sicurezza gerarchiche
Le seguenti operazioni richiedono il ruolo Identity and Access Management (IAM) Compute Organization Security Policy Admin (roles/compute.orgSecurityPolicyAdmin) nel nodo della gerarchia delle risorse di destinazione o nella policy stessa, se esiste già:
- Crea una nuova policy di sicurezza gerarchica
- Modifica una policy di sicurezza gerarchica aggiungendo, aggiornando o eliminando regole
- Elimina una policy di sicurezza gerarchica
Le seguenti operazioni richiedono il ruolo IAM
Compute Organization Resource Admin
(roles/compute.orgSecurityResourceAdmin)
sul nodo della gerarchia delle risorse di destinazione, oltre al ruolo
Compute Organization Security Policy Admin
(roles/compute.orgSecurityPolicyAdmin) o al ruolo
Compute Organization Security Policy User
(roles/compute.orgSecurityPolicyUser) sul nodo della gerarchia delle risorse di destinazione o sulla policy stessa:
- Associa una policy di sicurezza gerarchica 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 |
|---|---|
| Visualizza tutte le regole Cloud Armor effettive per una risorsa di backend |
|
Visualizza le risorse di backend effettive coperte da una organizationSecurityPolicy |
Configura le policy di sicurezza gerarchiche
Le sezioni seguenti spiegano come creare policy di sicurezza gerarchiche, associarle ai nodi della gerarchia delle risorse, spostarle tra i nodi, eliminarle e come visualizzare tutte le regole delle policy sicurezza di Cloud Armor che si applicano a una risorsa protetta.
Crea una policy di sicurezza gerarchica
Crea una policy di sicurezza gerarchica utilizzando il
comando gcloud compute org-security-policies create.
Crea la policy di sicurezza gerarchica in un'organizzazione o una cartella
utilizzando il flag --organization o --folder, insieme al corrispondente
ORGANIZATION_ID o FOLDER_ID. Utilizza
gli esempi seguenti per creare policy di sicurezza gerarchiche, sostituendo
POLICY_NAME con il nome che vuoi assegnare alla
nuova policy di sicurezza:
Crea una policy di sicurezza gerarchica a livello di organizzazione:
gcloud compute org-security-policies create \ --organization=ORGANIZATION_ID \ --type=CLOUD_ARMOR \ --short-name=POLICY_NAMECrea una policy di sicurezza gerarchica a livello di cartella:
gcloud 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 una policy di sicurezza esistente, puoi associarla a un nodo della gerarchia delle risorse
utilizzando il comando gcloud compute org-security-policies associations create.
Associa una policy di sicurezza gerarchica a un'organizzazione:
gcloud compute org-security-policies associations create \ --security-policy=POLICY_ID \ --organization=ORGANIZATION_ID \ --name=ASSOCIATION_NAMEAssocia una policy di sicurezza gerarchica a una cartella:
gcloud compute org-security-policies associations create \ --security-policy=POLICY_ID \ --folder=FOLDER_ID \ --name=ASSOCIATION_NAMEAssocia una policy di sicurezza gerarchica a un progetto:
gcloud compute org-security-policies associations create \ --security-policy=POLICY_ID \ --project-number=PROJECT_ID \ --name=ASSOCIATION_NAME
Sostituisci quanto segue:
POLICY_ID: l'ID della policy di sicurezzaORGANIZATION_ID: l'ID dell'organizzazioneASSOCIATION_NAME: il nome dell'associazioneFOLDER_ID: l'ID della cartellaPROJECT_ID: l'ID del progetto
Escludi progetti dalle policy di sicurezza gerarchiche
Inoltre, puoi escludere i progetti dalle policy di sicurezza gerarchiche a livello di cartella ed escludere sia i progetti sia le cartelle dalle policy di sicurezza gerarchiche a livello di organizzazione:
Puoi escludere i progetti da una policy di sicurezza gerarchica utilizzando il comando
gcloud compute org-security-policies associations createcon il flag--excluded-projects.Il seguente comando di esempio associa la policy di sicurezza
example-policyall'organizzazione10000001, escludendo il progetto con l'ID2000000002:gcloud compute org-security-policies associations create \ --security-policy=example-policy \ --excluded-projects="projects/2000000002" \ --organization=10000001Puoi escludere le cartelle da una policy di sicurezza gerarchica a livello di organizzazione utilizzando il comando
gcloud compute org-security-policies associations createcon il flag--excluded-folders.Il seguente comando di esempio associa la policy di sicurezza
example-policyall'organizzazione10000001, escludendo la cartella con l'ID3000000003:gcloud compute org-security-policies associations create \ --security-policy=example-policy \ --excluded-folders="folders/3000000003" \ --organization=10000001
Sposta una policy di sicurezza gerarchica
Puoi modificare il padre di una policy di sicurezza gerarchica utilizzando il
comando gcloud compute org-security-policies move per spostare la
policy di sicurezza gerarchica in un nodo della gerarchia della risorsa padre 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
policy di sicurezza gerarchiche, pertanto non puoi spostarle nei progetti.
Nell'esempio
seguente, sposti una policy di sicurezza gerarchica dall'organizzazione
ORGANIZATION_ID alla cartella
FOLDER_ID:
gcloud 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 gcloud compute org-security-policies associations delete per rimuovere
l'associazione denominata ASSOCIATION_NAME tra la
policy di sicurezza gerarchica con il nome POLICY_NAME
e l'organizzazione ORGANIZATION_ID:
gcloud compute org-security-policies associations delete ASSOCIATION_NAME \
--security-policy=POLICY_NAME \
--organization=ORGANIZATION_ID
Se questa non è l'unica associazione della policy di sicurezza, ripeti il passaggio precedente per ogni associazione. Quando la policy di sicurezza gerarchica non ha associazioni, puoi eliminarla utilizzando il comando gcloud compute org-security-policies delete, come nel seguente esempio:
gcloud compute org-security-policies delete POLICY_NAME \
--organization=ORGANIZATION_ID
Visualizza tutte le regole Cloud Armor effettive per una risorsa protetta
Puoi visualizzare tutte le regole delle policy di sicurezza Cloud Armor che si applicano a una risorsa protetta utilizzando il comando gcloud compute backend-services get-effective-security-policies.
gcloud compute backend-services get-effective-security-policies PROTECTED_RESOURCE
Sostituisci PROTECTED_RESOURCE con il nome
della risorsa protetta che vuoi controllare.
Quando esegui il comando gcloud compute backend-services get-effective-security-policies
su un servizio di backend all'interno di un progetto che eredita una
policy di sicurezza gerarchica, la risposta potrebbe includere la
policy di sicurezza gerarchica anche se il tipo di 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 le policy di sicurezza gerarchiche.
Nega il traffico da un insieme di indirizzi IP a tutti i bilanciatori del carico delle applicazioni nella tua organizzazione
Puoi utilizzare le policy di sicurezza gerarchiche per gestire un elenco di indirizzi IP che non
possono 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 una policy di sicurezza gerarchica
a livello di organizzazione che nega il traffico dall'intervallo di indirizzi IP
192.0.2.0/24:
Crea una policy di sicurezza gerarchica denominata
org-level-deny-ip-policy, collegata a un'organizzazione con ID 1000000001:gcloud compute org-security-policies create \ --organization=1000000001 \ --type=CLOUD_ARMOR \ --description= "this org policy denies a set of IP addresses for all resources" \ --short-name=org-level-deny-ip-policyAggiungi una regola con priorità
1000con una condizione di corrispondenza per l'intervallo di indirizzi IP192.0.2.0/24e un'azionedeny:gcloud 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"Infine, associa la policy di sicurezza all'organizzazione, negando le richieste dall'indirizzo IP
192.0.2.0/24a tutti i servizi dell'organizzazione:gcloud compute org-security-policies associations create \ --security-policy=org-level-deny-ip-policy \ --organization=ORGANIZATION_ID
Concedi 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 una policy di sicurezza gerarchica 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:
Utilizza i seguenti comandi per spostare
project-1,project-2eproject-3in una cartella con ID20000002:gcloud projects move project-1 --folder=20000002 gcloud projects move project-2 --folder=20000002 gcloud projects move project-3 --folder=20000002
Utilizza il seguente comando per creare una policy di sicurezza denominata
org-level-proxy-filtering:gcloud compute org-security-policies create \ --folder=20000002 \ --type=CLOUD_ARMOR \ --short-name=org-level-proxy-filteringAggiungi una regola con priorità
1000con una condizione di corrispondenza per l'intervallo di indirizzi IP192.0.2.0/24e un'azione della regolagoto_next. Se una richiesta corrisponde a questa condizione, Cloud Armor interrompe la valutazione delle regole all'interno di queste policy di sicurezza:gcloud 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"(Facoltativo) Se vuoi applicare le regole delle policy di sicurezza a questi progetti per le richieste che non provengono da
192.0.2.0/24, aggiungi altre regole con una priorità inferiore a1000. Puoi eseguire questo passaggio in un secondo momento.Utilizza il seguente comando per associare la policy alla cartella con ID
20000002, in cui hai spostato i progetti nel passaggio 1:gcloud compute org-security-policies associations create \ --security-policy=org-level-proxy-filtering \ --folder=20000002