Panoramica dei criteri di autorizzazione

Un criterio di autorizzazione (AuthzPolicy) definisce regole che specificano la sorgente del traffico in entrata e le operazioni consentite o limitate per quella sorgente. Inoltre, il criterio di autorizzazione illustra le condizioni in cui viene applicata una regola e specifica un'azione per consentire, negare o valutare ulteriormente il traffico.

I criteri di autorizzazione ti consentono di stabilire controlli di controllo dell'accesso dell'accesso per il traffico in entrata ai bilanciatori del carico delle applicazioni. Le richieste che superano questi controlli vengono inoltrate ai servizi di backend. Le richieste che non superano questi controlli terminano con una risposta non autorizzata.

Questa pagina fornisce una panoramica dei criteri di autorizzazione per i seguenti bilanciatori del carico delle applicazioni:

  • Bilanciatori del carico delle applicazioni esterni globali
  • Bilanciatori del carico delle applicazioni esterni a livello di regione

  • Bilanciatori del carico delle applicazioni interni regionali

  • Bilanciatori del carico delle applicazioni interni tra regioni

Se vuoi utilizzare i criteri di autorizzazione per i servizi di cui è stato eseguito il deployment con Cloud Service Mesh, consulta Configurare la sicurezza del servizio con Envoy.

Componenti delle regole dei criteri di autorizzazione

Un criterio di autorizzazione è composto da diverse regole di criteri di autorizzazione. Una regola del criterio di autorizzazione definisce le condizioni che determinano se il traffico è consentito o meno nel bilanciatore del carico.

Una regola del criterio di autorizzazione ha i seguenti componenti:

  • from: specifica l'identità del client consentita dalla regola. L'identità può essere ricavata da un certificato client in una connessione TLS reciproca o può essere l'identità dell'ambiente associata alla VM client, ad esempio da un account di servizio o da un tag sicuro.
  • to: specifica le operazioni consentite dalla regola, ad esempio gli URL a cui è possibile accedere o i metodi HTTP consentiti.
  • when: specifica le condizioni che devono essere soddisfatte per l'azione che deve essere applicata alla richiesta. Puoi utilizzare le espressioni Common Expression Language (CEL) per definire le condizioni.

Azioni dei criteri di autorizzazione

Durante la valutazione di una richiesta, un criterio di autorizzazione specifica l'azione da applicare alla richiesta. Un'azione del criterio di autorizzazione è costituita dai seguenti valori:

  • ALLOW: concede l'accesso alla risorsa richiesta se la richiesta corrisponde alle regole definite nel criterio di autorizzazione. Il criterio di autorizzazione blocca l'accesso alla risorsa richiesta se la richiesta non corrisponde a nessuna regola definita all'interno del criterio di autorizzazione. Una richiesta viene rifiutata se non corrisponde a un criterio ALLOW anche se altri criteri lo consentono.

  • DENY: blocca l'accesso alla risorsa se una richiesta corrisponde a una delle regole specificate in un criterio DENY. Il criterio di autorizzazione concede l'accesso alla risorsa richiesta se la richiesta non corrisponde a nessuna regola definita all'interno del criterio di autorizzazione. Una richiesta viene rifiutata se corrisponde a un criterio DENY, anche se altri criteri lo consentono.

  • CUSTOM: consente l'integrazione con sistemi di autorizzazione esterni per decisioni di autorizzazione complesse. Le azioni CUSTOM vengono utilizzate per i criteri che impiegano estensioni di servizio o IAP per le decisioni di autorizzazione.

Ordine di valutazione dei criteri di autorizzazione

Quando a una singola risorsa sono associati più criteri di autorizzazione, questi vengono valutati nell'ordine seguente per determinare se una richiesta è consentita o negata.

  1. Norme con azioni CUSTOM: se la norma CUSTOM nega la richiesta, quest'ultima viene rifiutata immediatamente. I criteri DENY o ALLOW non vengono valutati, anche se sono configurati.

  2. Norme con azioni DENY: se uno o più criteri DENY corrispondono alla richiesta, la richiesta viene rifiutata. I criteri ALLOW non vengono valutati, anche se sono configurati.

  3. Criteri con azioni ALLOW: se non sono presenti criteri ALLOW o se un criterio ALLOW corrisponde alla richiesta, la richiesta è consentita. Tuttavia, se nessun criterio ALLOW corrisponde alla richiesta, la richiesta viene rifiutata.

Delegare le decisioni di autorizzazione

Per le decisioni di autorizzazione complesse che non possono essere espresse utilizzando il criterio di autorizzazione, delega la decisione di autorizzazione a fornitori di autorizzazione personalizzati, come Identity-Aware Proxy (IAP), o crea la tua estensione di autorizzazione utilizzando le Estensioni di servizio. Questo è utile quando vuoi utilizzare il tuo motore di autorizzazione on-premise o provider di identità di terze parti tramite IAP.

  • IAP: configura IAP per controllare l'accesso alle applicazioni dietro le regole di inoltro del bilanciatore del carico delle applicazioni. IAP verifica l'identità e il contesto dell'utente per determinare l'accesso. Può anche autenticare i token degli account di servizio Identity and Access Management (IAM) e valutare i criteri IAM, proteggendo l'accesso ai bucket backend esposti dall'Application Load Balancer. Per ulteriori informazioni, consulta Delegare l'autorizzazione a IAP e IAM.

    Potresti scegliere di delegare l'autenticazione a IAP e IAM nei seguenti scenari:

    • Utilizza IAM per la gestione delle autorizzazioni.
    • Implementa l'accesso sensibile al contesto.
    • Utilizza l'autenticazione basata su browser per le applicazioni web che richiedono un'autenticazione interattiva.
  • Estensioni di servizio: delega le decisioni di autorizzazione al tuo motore di autorizzazione personalizzato in esecuzione su istanze VM Google Cloud o on-premise. Ciò offre flessibilità per i criteri di autorizzazione complessi che non sono coperti dai criteri integrati. Per ulteriori informazioni, consulta Configurare un'estensione di autorizzazione.

Prezzi

I criteri di autorizzazione non vengono addebitati durante il periodo di anteprima. Tuttavia, quando utilizzi i bilanciatori del carico di Google Cloud, devi sostenere gli addebiti relativi alla rete. Per informazioni sui prezzi, consulta la sezione Prezzi.

Passaggi successivi