La riautenticazione IAP consente ai proprietari delle risorse o agli amministratori di Google Cloud di richiedere agli utenti finali autenticati di eseguire nuovamente l'autenticazione dopo un determinato periodo di tempo quando accedono a una risorsa protetta da IAP. Questo garantisce che un utente che accede a una risorsa protetta da IAP sia la stessa persona che ha eseguito l'autenticazione iniziale all'inizio della sessione.
Metodi di riautenticazione supportati
Per gestire le impostazioni di riautenticazione puoi utilizzare i seguenti metodi:
- Accesso: IAP forza la riautenticazione dell'applicazione protetta e gli utenti devono accedere di nuovo.
- Chiave di protezione: gli utenti finali devono eseguire nuovamente l'autenticazione utilizzando l'autenticazione a due fattori basata su token di sicurezza configurata.
Per ulteriori informazioni, vedi IapSettings.
Configura un criterio di riautenticazione
ReauthSettings
fanno parte di IapSettings
e, come tali, possono essere impostati su più tipi di risorse nella gerarchia. A differenza di altre impostazioni IAP, dove la risorsa più bassa della gerarchia ha la precedenza, l'impostazione di riautenticazione effettiva dipende anche dal tipo di criterio.
Esistono due tipi di criteri che puoi utilizzare per impostare la riautenticazione:
- Minimo: il criterio agirà come minimo per tutte le altre risorse all'interno della gerarchia. Il criterio effettivo può essere lo stesso o più rigoroso.
- Predefinito: se non è configurato nessun altro criterio, il criterio di riautenticazione che hai impostato diventa il criterio effettivo.
Puoi utilizzare la configurazione dei tipi di criteri per configurare i criteri per un'intera organizzazione o per una cartella impostando il tipo di criterio su Minimum
.
Nei casi di configurazioni gerarchiche con diversi metodi di riautenticazione, Secure Key
si trasforma in un metodo Login
.
Negli esempi di cartelle e risorse seguenti (IapSettings
), il criterio relativo alle cartelle è più rigoroso e ha la precedenza, pertanto il criterio di riautenticazione effettivo corrisponderà al criterio relativo alle cartelle.
Cartella IapSettings
:
accessSettings:
reauthSettings:
method: "LOGIN"
maxAge: "3600s"
policyType: "MINIMUM"
Risorsa IapSettings
:
accessSettings:
reauthSettings:
method: "LOGIN"
maxAge: "7200s"
policyType: "MINIMUM"
Età massima
Utilizza il parametro MaxAge per specificare la frequenza con cui un utente finale deve ripetere l'autenticazione, indicato in secondi. Ad esempio, per impostare un criterio di riautenticazione di un'ora, imposta i secondi su 3600, come illustrato nell'esempio seguente:
accessSettings:
reauthSettings:
method: "LOGIN"
maxAge: "3600s"
policyType: "MINIMUM"
Il valore minimo per maxAge
è di cinque minuti.
Per impostare un criterio di riautenticazione, completa i seguenti passaggi.
Console
- Vai alla pagina di Identity-Aware Proxy.
Vai alla pagina Identity-Aware Proxy Seleziona un progetto, quindi seleziona la risorsa su cui vuoi impostare un criterio di riautenticazione.
Apri le Impostazioni della risorsa e, nella sezione Criterio di riautenticazione, seleziona Configura riautenticazione.
Specifica le impostazioni di riautenticazione e fai clic su Salva.
gcloud
Puoi impostare un criterio di riautenticazione a livello di risorse e servizi a livello di organizzazione, progetto e cartella. Di seguito sono riportati alcuni comandi di esempio per l'impostazione di un criterio di riautenticazione.
Per saperne di più, vedi gcloud iap settings set
.
Esegui questo comando:
gcloud iap settings set SETTING_FILE [--folder=FOLDER --organization=ORGANIZATION --project=/PROJECT --resource-type=RESOURCE_TYPE --service=SERVICE --version=VERSION
Per impostare un criterio di riautenticazione sulle risorse all'interno di un'organizzazione, esegui il comando seguente:
gcloud iap settings set SETTING_FILE --organization=ORGANIZATION
Per impostare un criterio di riautenticazione sulle risorse all'interno di una cartella, esegui questo comando:
gcloud iap settings set SETTING_FILE --folder=FOLDER
Per impostare un criterio di riautenticazione su tutte le risorse del tipo web all'interno di un progetto, esegui il comando seguente:
gcloud iap settings set SETTING_FILE --project=PROJECT --resource-type=iap-web
Per impostare un criterio di riautenticazione su un servizio App Engine all'interno di un progetto, esegui il comando seguente:
gcloud iap settings set SETTING_FILE --project=PROJECT --resource-type=app-engine --service=SERVICE
Dove si trova SETTING_FILE
:
accessSettings:
reauthSettings:
method: "LOGIN"
maxAge: "3600s"
policyType: "MINIMUM"
Sostituisci quanto segue:
- FOLDER: l'ID cartella.
- ORGANIZATION: l'ID organizzazione.
- PROJECT: l'ID progetto.
- RESOURCE_TYPE: il tipo di risorsa IAP. Deve essere
app-engine
,iap_web
,compute
,organization
ofolder
. - SERVICE: il nome del servizio. Facoltativo quando
resource-type
ècompute
oapp-engine
. - VERSION: nome della versione. Questo non è applicabile per
compute
ed è facoltativo quandoresource-type
èapp-engine
.
Informazioni sulle credenziali di riautenticazione
Dopo una nuova autenticazione riuscita, IAP crea un cookie nel browser dell'utente finale. Per evitare che gli utenti debbano ripetere l'autenticazione troppo spesso quando utilizzano app simili, il cookie viene impostato sul dominio privato di primo livello e è valido per l'intero dominio di livello privato.
Ad esempio, foo.example.com
è una risorsa protetta IAP
e ha un criterio di riautenticazione IAP. In seguito a una riautenticazione riuscita, IAP imposta un cookie su example.com
che rappresenta il dominio privato di primo livello. Le app dello stesso dominio privato di primo livello, come bar.example.come
, utilizzano le stesse credenziali di riautenticazione e non chiedono all'utente di eseguire nuovamente l'autenticazione, purché le credenziali siano valide.
Tieni presente che per gli URL come myapp.appspot.com
, appspot.com
è un dominio pubblico, pertanto il dominio privato di primo livello è myapp.appspot.com
.
Limitazioni note
- La riautenticazione è supportata solo per i flussi del browser. L'accesso all'account utente programmatico non è supportato. Ad esempio, le app per dispositivi mobili e desktop non hanno modo di riautenticare gli utenti, perché le risorse che richiedono la riautenticazione sono inaccessibili.
- Gli account di servizio e IAP-TCP sono esenti dai requisiti di riautenticazione.
- La riautenticazione non funziona con il tipo di membro IAM
allUsers
. - Se utilizzi un provider di identità diverso da Google, la riautenticazione potrebbe non funzionare come previsto.
- Le identità esterne tramite Identity Platform non sono supportate con la riautenticazione, perché le risorse che richiedono la riautenticazione non sono accessibili.