Come posso configurare un Application Load Balancer per autenticare gli utenti tramite un pool di utenti Amazon Cognito?
Desidero integrare un Application Load Balancer con un pool di utenti Amazon Cognito per l'autenticazione degli utenti.
Breve descrizione
Per configurare l'autenticazione degli utenti con un Application Load Balancer e un pool di utenti Amazon Cognito, completa i seguenti passaggi:
- Crea un Application Load Balancer.
- Ottieni il nome DNS del tuo Application Load Balancer.
- Crea e configura un pool di utenti Amazon Cognito.
- Configura l'Application Load Balancer.
- Prova la configurazione.
Risoluzione
Crea un Application Load Balancer
Nota: se hai già configurato un Application Load Balancer, procedi alla sezione Ottieni il nome DNS dell'Application Load Balancer.
Completa i seguenti passaggi:
Nota: solo i listener HTTPS supportano i tipi di azioni delle regole authenticate-cognito e authenticate-oidc.
Ottieni il nome DNS dell'Application Load Balancer
Completa i seguenti passaggi:
- Apri la console Amazon Elastic Compute Cloud (Amazon EC2).
- Nel riquadro di navigazione, in Bilanciamento del carico, scegli Sistemi di bilanciamento del carico.
- Seleziona l'Application Load Balancer.
- Nella scheda Dettagli, annota il nome DNS del bilanciatore del carico da utilizzare in un passaggio successivo.
Crea e configura un pool di utenti Amazon Cognito
Completa i seguenti passaggi:
- Apri la console Amazon Cognito.
- Nel pannello di navigazione, scegli Crea un pool di utenti.
Nota: quando crei il pool di utenti, configura le impostazioni desiderate per la produzione. Dopo la creazione del pool di utenti, alcune impostazioni non possono essere modificate. Per ulteriori informazioni, consulta Come posso modificare gli attributi di un pool di utenti Amazon Cognito dopo averli creati? - Configura un client dell'app per il pool di utenti.
Quando configuri il client dell'app, seleziona il pulsante di opzione Genera segreto del client. Per ulteriori informazioni, consulta Preparazione all'uso di Amazon Cognito. - Nel pannello di navigazione, scegli Pool di utenti, quindi seleziona il pool di utenti. Annota l'ID del pool di utenti da utilizzare in un passaggio successivo.
- Scegli la scheda Integrazione app del pool di utenti, quindi aggiungi un dominio per il pool di utenti.
- Nella scheda Integrazione app per il pool di utenti, seleziona il client dell'app nella sezione Client di app e analisi dei dati .
- Nella pagina Client dell'app, alla voceInformazioni sul client dell'app, annota l'ID del client da utilizzare in un passaggio successivo.
- Nella sezione Interfaccia utente ospitata, scegli Modifica.
- Scegli Aggiungi URL di callback e inserisci https://load-balancer-dns-name/oauth2/idpresponse con il tuo nome DNS.Se hai utilizzato un record CNAME per mappare un dominio personalizzato sull'Application Load Balancer, inserisci https://CNAME/oauth2/idpresponse con il tuo nome di dominio personalizzato.
Nota: il nome DNS non può contenere lettere maiuscole. - Scegli Aggiungi flusso di disconnessione, quindi inserisci un URL a cui desideri reindirizzare gli utenti dopo la disconnessione. Per verificare il reindirizzamento, puoi inserire qualsiasi URL valido, ad esempio https://example.com/.
- Per Provider di identità, seleziona Pool di utenti Cognito.
- In OAuth 2.0 grant types (Tipi di concessione OAuth 2.0), seleziona Concessione del codice di autorizzazione. Seleziona altri tipi di concessione OAuth per il caso d'uso.
- Per Ambiti OpenID Connect, seleziona OpenID. L'ambito OpenID restituisce un token ID. Seleziona altri ambiti OpenID Connect (OIDC) per il caso d'uso.
- Scegli Salva le modifiche.
Per ulteriori informazioni, consulta Aggiornamento della configurazione del pool di utenti e del client dell'app e Accesso al pool di utenti con provider di identità di terze parti.
Configura l'Application Load Balancer
Completa i seguenti passaggi:
- Apri la console Amazon EC2.
- Nel riquadro di navigazione, in Bilanciamento del carico, scegli Sistemi di bilanciamento del carico.
- Seleziona l'Application Load Balancer.
- Nella scheda Ascoltatore e regole, seleziona il protocollo HTTPS.
- Scegli Gestione delle regole, quindi scegli Modifica regole.
- Nella sezione Listeners rules (Regole dei listener), seleziona la regola predefinita che desideri aggiornare.
- Scegli Operazione, quindi scegli Modifica regole.
- Configura le seguenti impostazioni per la regola predefinita del listener HTTPS:
In Autenticazione seleziona Utilizzo di OpenID o Amazon Cognito.
In Provider di identità scegli Amazon Cognito.
Per Pool di utenti, seleziona l'ID del pool di utenti.
Per Client dell'app, seleziona l'ID del client.
Espandi Impostazioni di autenticazione avanzate.
Assegna un nome al cookie di sessione.
Imposta il timeout della sessione. Il valore predefinito è 7 giorni.
In Ambiti inserisci gli ambiti che hai configurato per il client dell'app del pool di utenti, separati da spazi. Puoi trovare gli ambiti nella configurazione OIDC del pool di utenti. Ad esempio, se il valore scopes_supported è ["openid","email","phone","profile"], inserisci openid email phone profile.
In Operazione su richiesta non autenticata lascia il valore predefinito.
(Facoltativo) Espandi Parametri extra richiesta - opzionale per aggiungere parametri a un gestore dell'identità digitale, come Cognito, durante l'autenticazione. Ad esempio, se il pool di utenti Cognito ha Google come gestore dell'identità digitale, puoi aggiungere un parametro {Key: identity_provider, Value: Google}. Per ulteriori informazioni sui parametri della richiesta, consulta Parametri della richiesta.
In Azioni di routing, scegli Inoltra al gruppo di destinazione e seleziona i gruppi di destinazione.
(Facoltativo) In Target group stickiness (Persistenza del gruppo di destinazione) scegli Turn on target group stickiness (Attiva la persistenza del gruppo di destinazione) quando il caso d'uso lo richiede. - Configura le seguenti impostazioni del listener sicuro:
In Policy di sicurezza scegli la policy di sicurezza appropriata per il tuo caso d'uso.
In Certificato del server SSL/TLS predefinito scegli l'origine del certificato. - Scegli Salva le modifiche.
Verifica la configurazione
Nel browser web inserisci uno degli URL seguenti:
- https://load-balancer-dns-name/
- https://CNAME/
Nota: sostituisci load-balancer-dns-name con il tuo nome DNS e CNAME con il tuo dominio personalizzato.
Quando inserisci l'URL, vieni reindirizzato all’interfaccia utente web ospitata di Amazon Cognito per il pool di utenti. Dopo che gli utenti avranno effettuato l'accesso e il pool di utenti li avrà autenticati, gli utenti verranno reindirizzati alla destinazione.
Informazioni correlate
Guida introduttiva ad Application Load Balancer
Simplify login with Application Load Balancer built-in authentication
- Argomenti
- Security, Identity, & Compliance
- Lingua
- Italiano
