Panoramica di Identity-Aware Proxy

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

In questa pagina vengono descritti i concetti di base di Identity-Aware Proxy (IAP), un servizio globale di Google Cloud.

IAP consente di definire un livello di autorizzazione centrale per le applicazioni accessibili tramite HTTPS che ti permette di utilizzare un modello di controllo dell'accesso a livello di applicazione invece di fare affidamento su firewall a livello di rete.

I criteri IAP scalano in tutta l'organizzazione. Puoi definire i criteri di accesso in modo centralizzato e applicarli a tutte le tue applicazioni e risorse. Quando assegni a un team dedicato la creazione e l'applicazione forzata dei criteri, proteggi il progetto dalla definizione o dall'implementazione errata dei criteri in qualsiasi applicazione.

Quando utilizzare IAP

Utilizza IAP quando vuoi applicare i criteri di controllo dell'accesso per applicazioni e risorse. IAP utilizza le intestazioni firmate o l'ambiente standard dell'API Users dell'ambiente App Engine per proteggere la tua app. Con IAP puoi configurare l'accesso alle applicazioni basato su gruppo: una risorsa potrebbe essere accessibile ai dipendenti, non accessibile ai contrattisti o accessibile solo a un reparto specifico.

Come funziona IAP

Quando un'applicazione o una risorsa è protetta da IAP, è possibile accedervi solo tramite il proxy dei principali, noti anche come utenti, che dispongono del ruolo IAM (Identity and Access Management) corretto. Quando concedi a un utente l'accesso a un'applicazione o risorsa tramite IAP, è soggetto ai controlli di accesso granulari implementati dal prodotto in uso, senza bisogno di una VPN. Quando un utente tenta di accedere a una risorsa protetta da IAP, IAP esegue i controlli di autenticazione e autorizzazione.

App Engine
diagramma del percorso della richiesta per App Engine quando si utilizza Cloud IAP
Cloud Run
diagramma del percorso della richiesta per Cloud Run quando si utilizza Cloud IAP
Compute Engine
diagramma del percorso della richiesta per Compute Engine e Kubernetes Engine quando si utilizza Cloud IAP
GKE
diagramma del percorso della richiesta per Compute Engine e Kubernetes Engine quando si utilizza Cloud IAP
On-premise
diagramma del percorso della richiesta per un'app on-premise quando si utilizza Cloud IAP

Autenticazione

Le richieste alle tue risorse Google Cloud passano attraverso App Engine, Cloud Load Balancing (bilanciamento del carico HTTP(S) esterno e interno). Il codice dell'infrastruttura di gestione di questi prodotti controlla se IAP è abilitato per il servizio di app o backend. Se IAP è abilitato, le informazioni sulla risorsa protetta vengono inviate al server di autenticazione IAP. Sono incluse informazioni come il numero del progetto Google Cloud, l'URL della richiesta e le eventuali credenziali IAP nelle intestazioni o nei cookie della richiesta.

Successivamente, IAP controlla le credenziali del browser dell'utente. Se non esiste alcun utente, l'utente viene reindirizzato a un flusso di accesso dell'Account Google OAuth 2.0 che memorizza un token in un cookie del browser per gli accessi futuri. Se devi creare Account Google per gli utenti esistenti, puoi utilizzare Google Cloud Directory Sync per la sincronizzazione con il server Active Directory o LDAP.

Se le credenziali della richiesta sono valide, il server di autenticazione le utilizza per ottenere l'identità dell'utente (indirizzo email e ID utente). Il server di autenticazione utilizza quindi l'identità per verificare il ruolo IAM dell'utente e verificare se l'utente è autorizzato ad accedere alla risorsa.

Se utilizzi Compute Engine o Google Kubernetes Engine, gli utenti che possono accedere alla porta di distribuzione delle applicazioni della macchina virtuale (VM) possono ignorare l'autenticazione IAP. Le regole firewall di Compute Engine e GKE non possono proteggere dall'accesso dal codice in esecuzione sulla stessa VM dell'applicazione con protezione IAP. Le regole firewall possono proteggere dall'accesso da un'altra VM, ma solo se configurate correttamente. Scopri di più sulle tue responsabilità per garantire la sicurezza.

Se utilizzi Cloud Run, gli utenti che possono accedere all'URL assegnato automaticamente possono ignorare l'autenticazione IAP. I controlli in entrata possono limitare l'accesso per utilizzare il bilanciamento del carico, ma solo se configurati correttamente. Scopri di più sulle responsabilità per garantire la sicurezza.

Autorizzazione

Dopo l'autenticazione, IAP applica il criterio IAM pertinente per verificare se l'utente è autorizzato ad accedere alla risorsa richiesta. Se l'utente ha il ruolo Utente applicazione web con protezione IAP nel progetto della console Google Cloud in cui si trova la risorsa, è autorizzato ad accedere all'applicazione. Per gestire l'elenco dei ruoli di Utente applicazione web con protezione IAP, utilizza il riquadro IAP nella console Google Cloud.

Quando attivi IAP per una risorsa, questo crea automaticamente un ID client e un secret OAuth 2.0. Se elimini le credenziali OAuth 2.0 generate automaticamente, IAP non funzionerà correttamente. Puoi visualizzare e gestire le credenziali OAuth 2.0 nelle API e nei servizi della console Google Cloud.

Responsabilità dell'Utente

IAP protegge l'autenticazione e l'autorizzazione di tutte le richieste ad App Engine, Cloud Load Balancing (HTTPS) o al bilanciamento del carico HTTP interno. IAP non protegge dalle attività all'interno di un progetto, ad esempio un'altra VM all'interno del progetto.

I bilanciatori del carico HTTP interni richiedono un abbonamento BeyondCorp Enterprise.

Per garantire la sicurezza, devi adottare le seguenti precauzioni:

Passaggi successivi