Questa pagina descrive come configurare le policy di autorizzazione per Secure Web Proxy.
Prima di iniziare
Consulta le pagine Panoramica di Secure Web Proxy e Panoramica delle policy di autorizzazione.
-
- API per la sicurezza di rete
- API Network Services
- API Certificate Manager
Assicurati di disporre dei ruoli e delle autorizzazioni appropriati.
Devi disporre di un'istanza di Secure Web Proxy attiva di cui è stato eseguito il deployment e associata a un
GatewaySecurityPolicy. Per saperne di più, consulta Eseguire il deployment di un'istanza di Secure Web Proxy.Per configurare le policy di autorizzazione di Secure Web Proxy, devi abilitare una policy di ispezione TLS.
Crea una policy di autorizzazione
Questa sezione spiega come creare diversi tipi di policy di autorizzazione collegate a un'istanza di Secure Web Proxy.
Per creare una policy di autorizzazione per Secure Web Proxy:
- Configura un file YAML che definisca la destinazione e le regole.
- Importa il file utilizzando il
comando
gcloud network-security authz-policies import.
Policy di autorizzazione basata sull'identità mTLS
Secure Web Proxy supporta l'applicazione di regole di sicurezza basate su identità derivate da certificati mutual TLS (mTLS). L'applicazione di regole basate su queste identità è particolarmente utile negli ambienti Zero Trust, in cui il traffico tra i client e il proxy è protetto da mTLS. Per saperne di più, consulta Criterio di autorizzazione basato sulle entità.
L'esempio seguente mostra una policy di autorizzazione per un'istanza di Secure Web Proxy denominata swp1. Questo esempio presuppone che il
traffico verso il proxy utilizzi il protocollo HTTPS.
La policy con il profilo REQUEST_AUTHZ impone che tutto il traffico verso
example.com/mcp richieda l'autenticazione mTLS da un
principal specifico prima che il traffico possa passare. La policy
nega anche tutto il traffico in uscita che non è destinato a
example.com/mcp.
Crea il file YAML della policy di autorizzazione.
L'esempio seguente crea un file
authz-policy.yaml. Il criterio consente il traffico verso l'host e il percorso specificati solo se il client presenta un certificato che corrisponde all'entitàSPIFFE IDdefinita.$ cat >authz-policy.yaml <<EOF name: test-authz-policy-mtls target: resources: - "projects/ PROJECT_ID /locations/ LOCATION /gateways/swp1" policyProfile: REQUEST_AUTHZ httpRules: - to: operations: - hosts: - exact: "example.com" paths: - exact: "/mcp" from: sources: - principals: - principalSelector: CLIENT_CERT_URI_SAN principal: exact: "spiffe:// PROJECT_ID .global.123.workload.id.goog/ns/ns1/sa/hellomcp" action: ALLOW EOFSostituisci quanto segue:
PROJECT_ID: l'ID del tuo Google Cloud progettoLOCATION: la regione dell'istanza Secure Web Proxy
Crea una policy di autorizzazione e importa il file YAML utilizzando il comando
gcloud network-security authz-policies import.gcloud beta network-security authz-policies import my-authz-policy-allow --source=authz-policy.yaml --location= LOCATIONSostituisci
LOCATIONcon la regione dell'istanza Secure Web Proxy.
Norme di autorizzazione basate su service account o tag
Puoi applicare un'autorizzazione basata su service account o tag collegati a varie risorse Google Cloud .
Questo esempio presuppone che tu abbia completato le seguenti operazioni:
Hai creato un service account e lo hai collegato a una risorsa Google Cloud.
Hai creato un tag e lo hai collegato a una risorsa Google Cloud come coppia chiave-valore. Quando crei un tag, imposta il relativo flag
--purposesuGCE_FIREWALL. Le norme di autorizzazione richiedono lo scopoGCE_FIREWALLper applicare il tag.
Service account
Crea un file YAML della policy di autorizzazione per consentire determinate richieste.
L'esempio seguente crea un file
authz-policy.yamlper l'istanza Secure Web Proxy denominataswp1. Il criterio è configurato per consentire alle richieste di un'istanza di macchina virtuale (VM) Compute Engine con il account di serviziomy-sa-123@56788.iam.gserviceaccount.comdi raggiungere il percorso example1.com/url1.$ cat >authz-policy.yaml <<EOF name: my-authz-policy-allow target: resources: - "projects/PROJECT_ID/locations/ LOCATION /gateways/swp1" policyProfile: REQUEST_AUTHZ httpRules: - from: sources: - resources: - iamServiceAccount: exact: "my-sa-123@56788.iam.gserviceaccount.com" to: operations: - hosts: - exact: "example1.com" paths: - prefix: "/url1" action: ALLOW EOFSostituisci quanto segue:
PROJECT_ID: l'ID del tuo Google Cloud progettoLOCATION: la regione della tua istanza Secure Web Proxy
Crea una policy di autorizzazione e importa il file YAML utilizzando il comando
gcloud network-security authz-policies import.Il seguente comando di esempio mostra come importare il file della policy creato in precedenza e creare una policy di autorizzazione:
gcloud network-security authz-policies import my-authz-policy-allow --source=authz-policy.yaml --location= LOCATIONSostituisci
LOCATIONcon la regione dell'istanza Secure Web Proxy.
Tag
Crea un file YAML della policy di autorizzazione per consentire determinate richieste.
L'esempio seguente crea un file
authz-policy-tag.yamlper l'istanza Secure Web Proxy denominataswp1. La policy consente solo le richieste provenienti da una risorsa Google Cloudcon un valore del tagTAG_VALUE_PERMANENT_IDdi accedere al percorso dell'URL example1.com/url1.$ cat >authz-policy-tag.yaml <<EOF name: my-authz-policy-tag-allow target: resources: - "projects/PROJECT_ID/locations/ LOCATION /gateways/ GATEWAY_NAME " policyProfile: REQUEST_AUTHZ httpRules: - from: sources: - resources: - tagValueIdSet: ids: ["TAG_VALUE_PERMANENT_ID"] to: operations: - hosts: - exact: "example1.com" paths: - exact: "/url1" action: ALLOW EOFSostituisci quanto segue:
PROJECT_ID: l'ID del tuo Google Cloud progettoLOCATION: la regione della tua istanza Secure Web ProxyGATEWAY_NAME: nome del gateway Secure Web ProxyTAG_VALUE_PERMANENT_ID: ID permanente di un valore tag, ad esempiotagValues/123456789012
Crea una policy di autorizzazione e importa il file YAML utilizzando il comando
gcloud network-security authz-policies import.Il seguente comando di esempio importa il file della policy creato in precedenza e crea una policy di autorizzazione nella regione Google Cloud specificata: