Un criterio di autorizzazione definisce regole che specificano l'origine del traffico in entrata e le operazioni consentite o limitate per quell'origine. Inoltre, criterio di autorizzazione descrive le condizioni in cui si applica 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 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 regionali
- Bilanciatori del carico delle applicazioni interni tra regioni
- Bilanciatori del carico delle applicazioni interni regionali
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
Una regola del criterio di autorizzazione include 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 che o i metodi HTTP consentiti.when
: consente di definire vincoli aggiuntivi che devono essere soddisfatti. Puoi utilizzare la modalità Linguaggio di espressione comune (CEL) per definire i vincoli.action
: specifica l'azione della regola. Può essere uno diALLOW
,DENY
oCUSTOM
.
Azioni del criterio di autorizzazione
Quando valuta una richiesta, un criterio di autorizzazione esegue una delle seguenti azioni:
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 risorsa richiesta se la richiesta non corrisponde a nessuna regola definita all'interno criterio di autorizzazione. Una richiesta viene rifiutata se non corrisponde a un criterioALLOW
anche se altri criteri lo consentono.DENY
: blocca l'accesso alla risorsa se una richiesta corrisponde a una delle regole specificate in un criterioDENY
. Il criterio di autorizzazione concede l'accesso alla risorsa richiesta Se la richiesta non corrisponde ad alcuna regola definita all'interno dell'autorizzazione . Una richiesta viene rifiutata se corrisponde a un criterioDENY
, anche se altri criteri lo consentono.CUSTOM
: consente l'integrazione con sistemi di autorizzazione esterni per decisioni di autorizzazione complesse.CUSTOM
azioni vengono utilizzate per i criteri che possono usare le estensioni dei servizi o IAP per le decisioni sull'autorizzazione.
Ordine di valutazione criteri di autorizzazione
Quando a una singola risorsa sono associati più criteri di autorizzazione, vengono valutati nel seguente ordine per determinare se una richiesta è consentita o negato.
Criteri con azioni
CUSTOM
: se il criterioCUSTOM
nega il richiesta, la richiesta viene rifiutata immediatamente. I criteriDENY
oALLOW
non vengono valutati, anche se sono configurati.Criteri con azioni
DENY
: se esistono criteriDENY
corrispondono alla richiesta, la richiesta viene rifiutata. I criteriALLOW
non vengono valutati, anche se sono configurati.Criteri con azioni
ALLOW
: se non sono presenti criteriALLOW
o se un criterioALLOW
corrisponde alla richiesta, la richiesta è consentita. Tuttavia, se nessun criterioALLOW
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. Ciò è utile quando vuoi usare il tuo motore di autorizzazione on-premise 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, vedi 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.
- Implementare l'accesso sensibile al contesto.
- Utilizza l'autenticazione basata su browser per le applicazioni web che richiedono l'autenticazione interattiva.
Service Extensions: delega le decisioni di autorizzazione alla tua applicazione personalizzata di autorizzazione in esecuzione su istanze VM di Google Cloud oppure on-premise. Questo fornisce flessibilità per criteri di autorizzazione complessi che non sono sono coperti dai criteri integrati. Per ulteriori informazioni, vedi Configurare un'estensione di autorizzazione.
Prezzi
I criteri di autorizzazione non vengono addebitati durante il periodo di anteprima. Tuttavia, ti vengono addebitati i costi di rete quando utilizzi i bilanciatori del carico Google Cloud. Per informazioni sui prezzi, vedi Prezzi.