Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Utilizzo di provider di identità OIDC con un pool di utenti
Gli utenti possono accedere all'applicazione utilizzando gli account esistenti dei provider di identità OpenID Connect (OIDC) (). IdPs Con i provider OIDC, gli utenti di sistemi single sign-on indipendenti possono fornire le credenziali esistenti mentre l'applicazione riceve i token OIDC nel formato condiviso di pool di utenti. Per configurare un IdP OIDC, configura il tuo IdP in modo che gestisca il tuo pool di utenti come RP e configura l'applicazione per gestire il tuo pool di utenti come IdP. Amazon Cognito funge da passaggio intermedio tra più IdPs OIDC e le tue applicazioni. Il tuo pool di utenti applica le regole di mappatura degli attributi alle affermazioni contenute nell'ID e nei token di accesso che il provider trasmette direttamente al tuo pool di utenti. Amazon Cognito emette quindi nuovi token in base agli attributi utente mappati e a eventuali modifiche aggiuntive apportate al flusso di autenticazione con i trigger Lambda.
Agli utenti che accedono con un IdP OIDC non è richiesto di fornire nuove credenziali o informazioni per accedere all'applicazione del pool di utenti. La tua applicazione può reindirizzarli silenziosamente al loro IdP per l'accesso, con un pool di utenti come strumento in background che standardizza il formato del token per la tua applicazione. Per ulteriori informazioni sul reindirizzamento IdP, consulta. Endpoint Authorize
Come con altri provider di identità di terze parti, devi registrare la tua applicazione presso il provider OIDC e ottenere informazioni sull'applicazione IdP che desideri connettere al tuo pool di utenti. Un pool di utenti OIDC IdP richiede un ID client, un client secret, gli ambiti da richiedere e informazioni sugli endpoint del servizio del provider. Il tuo pool di utenti può scoprire gli endpoint OIDC del provider da un endpoint di rilevamento oppure puoi inserirli manualmente. È inoltre necessario esaminare i token ID del provider e creare mappature degli attributi tra l'IdP e gli attributi del pool di utenti.
Vedi Flusso di autenticazione IdP del bacino d'utenza OIDC per maggiori dettagli su questo flusso di autenticazione.
Nota
Sign-in tramite una terza parte (federazione) è disponibile nei pool di utenti di Amazon Cognito. Questa funzionalità è indipendente dalla federazione OIDC con i pool di identità di Amazon Cognito.
Puoi aggiungere un IdP OIDC al tuo pool di utenti nel Console di gestione AWS, tramite o con il metodo AWS CLI API del pool di utenti. CreateIdentityProvider
Argomenti
Prerequisiti
Prima di iniziare, è necessario:
-
Un bacino d'utenza con un client di applicazioni e dominio per il bacino d'utenza. Per ulteriori informazioni, consulta Creazione di un bacino d'utenza.
-
Un IdP OIDC con la seguente configurazione:
-
Supporta l'autenticazione client
client_secret_post. Amazon Cognito non controlla l'attestazionetoken_endpoint_auth_methods_supportednell'endpoint di rilevamento OIDC per il tuo IdP. Amazon Cognito non supporta l'autenticazione clientclient_secret_basic. Per ulteriori informazioni sull'autenticazione client, consulta Autenticazione clientnella documentazione di OpenID Connect. -
Utilizza HTTPS solo per endpoint OIDC come
openid_configuration,userInfoejwks_uri. -
Utilizza solo le porte TCP 80 e 443 per gli endpoint OIDC.
-
Firma i token ID solo con algoritmi HMAC-SHA ECDSA o RSA.
-
Pubblica un'attestazione
kiddell'ID chiave presso il relativojwks_urie include un'attestazionekidnei rispettivi token. -
Presenta una chiave pubblica non scaduta con una catena di fiducia CA root valida.
-
Registrare un'applicazione con un IdP OIDC
Prima di aggiungere un IdP OIDC alla configurazione del pool di utenti e assegnarlo ai client delle app, devi configurare un'applicazione client OIDC nel tuo IdP. Il pool di utenti è l'applicazione relying-party che gestisce l'autenticazione con il tuo IdP.
Registrazione con un IdP OIDC
-
Crea un account sviluppatore con l'IdP OIDC.
Collegamenti a OIDC IdPs IdP OIDC Come installare URL di rilevamento OIDC Salesforce https://MyDomainName.my.salesforce.com/.well-known/openid-configurationOneLogin Connect un'app abilitata per OIDC https://your-domain.onelogin.com/oidc/2/.well-known/openid-configurationJumpCloud SSO con OIDC https://oauth.id.jumpcloud.com/.well-known/openid-configurationOkta https://Your Okta subdomain.okta.com/.well-known/openid-configurationID Microsoft Entra https://login.microsoftonline.com/{tenant}/v2.0I valori di
tenantpossono includere un ID tenant,commonorganizations, o.consumers -
Registra l'URL del dominio del bacino d'utenza con l'
/oauth2/idpresponseendpoint presso l'IdP OIDC. In questo modo verrà accettato dall'IdP OIDC durante l'autenticazione degli utenti da parte di Amazon Cognito.https://mydomain.auth.us-east-1.amazoncognito.com/oauth2/idpresponse -
Seleziona gli ambiti che desideri che la tua directory utente condivida con il tuo pool di utenti. L'ambito openid è necessario per consentire a OIDC di offrire qualsiasi informazione IdPs all'utente. L'
emailambito è necessario per concedere l'accesso ai reclami e.emailemail_verifiedGli ambiti aggiuntivi nella specifica OIDC si riferiscono a tutti profilegli attributi utente e a ephone.phone_numberphone_number_verified -
L'IdP OIDC fornisce un ID client e un segreto client. Annota questi valori e aggiungili alla configurazione dell'IdP OIDC che aggiungerai successivamente al tuo pool di utenti.
Esempio: utilizza Salesforce come IdP OIDC con il tuo bacino d'utenza
Utilizzi un IdP OIDC quando desideri stabilire un rapporto di fiducia tra un OIDC-compatible IdP come Salesforce e il tuo pool di utenti.
-
Creazione di un account
sul sito Web di Salesforce Developers. -
Accedi
tramite il tuo account sviluppatore impostato nella fase precedente. -
Dalla pagina di Salesforce, procedi in una delle modalità seguenti:
-
Se utilizzi Lightning Experience, scegli l'icona a forma di ingranaggio delle impostazioni, quindi scegli Setup Home (Imposta home).
-
Se utilizzi Salesforce Classic e vedi la voce Setup (Impostazioni) nell'intestazione dell'interfaccia utente, sceglila.
-
Se utilizzi Salesforce Classic e non vedi Configurazione nell'intestazione, scegli il tuo nome dalla barra di navigazione in alto e scegli Configurazione dall'elenco a discesa.
-
-
Nella barra di navigazione a sinistra, scegli Company Settings (Impostazioni azienda).
-
Nella barra di navigazione, scegli Domain (Dominio), inserisci un dominio e seleziona Create (Crea).
-
Nella barra di navigazione a sinistra, vai a Platform Tools Strumenti piattaforma e scegli App.
-
Scegli App Manager Gestore app.
-
-
Scegli New connected app (Nuova app connessa).
-
Completa i campi obbligatori.
In Start URL (URL di avvio), inserisci un URL all'endpoint
/authorizeper il dominio del bacino d'utenza che accede con il provider di identità Salesforce. Quando gli utenti accedono all'app connessa, Salesforce li indirizza a questo URL per completare l'accesso. Quindi Salesforce reindirizza gli utenti all'URL di callback associato al client di app.https://mydomain.auth.us-east-1.amazoncognito.com/authorize?response_type=code&client_id=<your_client_id>&redirect_uri=https://www.example.com&identity_provider=CorpSalesforce -
Abilita OAuth settings (Impostazioni OAuth) e inserisci l'URL dell'endpoint
/oauth2/idpresponseper il dominio del bacino d'utenza in Callback URL (URL di callback). Questo è l'URL da cui Salesforce emette il codice di autorizzazione che Amazon Cognito scambia con un token OAuth.https://mydomain.auth.us-east-1.amazoncognito.com/oauth2/idpresponse
-
-
Seleziona i tuoi scopes
(ambiti). È necessario includere openid per l'ambito. Per concedere l'accesso alle attestazioni email e email_verified aggiungi l'ambito email. Separa gli ambiti con gli spazi. -
Scegli Create (Crea).
In Salesforce, l'ID client viene chiamato Consumer Key (Chiave consumatore), mentre il segreto client è un Consumer Secret (Segreto consumatore). Prendi nota dell'ID client e del segreto client. Li utilizzerai nella sezione successiva.
Aggiunta di un IdP OIDC al bacino d'utenza
Dopo aver configurato l'IdP, puoi configurare il pool di utenti per gestire le richieste di autenticazione con un IdP OIDC.
Test della configurazione dell'IdP OIDC
Nella tua applicazione, devi richiamare un browser nel client dell'utente in modo che possa accedere con il suo provider OIDC. Prova l'accesso con il tuo provider dopo aver completato le procedure di configurazione nelle sezioni precedenti. L'URL di esempio seguente carica la pagina di accesso per il tuo pool di utenti con un dominio prefisso.
https://mydomain.auth.us-east-1.amazoncognito.com/oauth2/authorize?response_type=code&client_id=1example23456789&redirect_uri=https://www.example.com
Questo link è la pagina a cui Amazon Cognito ti indirizza quando accedi al menu App client, selezioni un client per l'app, accedi alla scheda Pagine di accesso e selezioni Visualizza pagina di accesso. Per ulteriori informazioni sui domini del pool di utenti, consulta. Configurazione di un dominio di bacino d'utenza Per ulteriori informazioni sui client delle app, inclusi gli ID client e gli URL di callback, consulta. Application-specific impostazioni con i client dell'app
Il seguente collegamento di esempio imposta il reindirizzamento silenzioso al MyOIDCIdP provider dal parametro Endpoint Authorize con un identity_provider parametro di query. Questo URL ignora l'accesso interattivo al pool di utenti con accesso gestito e va direttamente alla pagina di accesso IdP.
https://mydomain.auth.us-east-1.amazoncognito.com/oauth2/authorize?identity_provider=MyOIDCIdP&response_type=code&client_id=1example23456789&redirect_uri=https://www.example.com
Step-up autenticazione per utenti federati
Per gli utenti federati che accedono tramite un provider di identità (IdP) OpenID Connect (OIDC), Amazon Cognito utilizza i valori ACR e AMR dell'IdP OIDC anziché elaborarli autonomamente. L'IdP OIDC possiede l'autenticazione per questi utenti federati. Step-up l'autenticazione per un utente federato avviene tramite l'IdP OIDC: Amazon Cognito reindirizza all'IdP con. acr_values Per ulteriori informazioni sui livelli ACR e sui valori AMR, consulta. Livelli di autenticazione con attestazioni ACR e AMR
Puoi mappare i valori ACR dell'IdP OIDC ai livelli di Amazon Cognito con AcrMapping il campo sull'IdP. Configura questo campo con l'operazione or. CreateIdentityProviderUpdateIdentityProvider Amazon Cognito mappa il valore ACR dell'IdP OIDC a un livello di Amazon Cognito, quindi timbra il nome del livello corrispondente che hai configurato per il tuo pool di utenti sul token Amazon Cognito. L'esempio seguente configura un per un provider OIDC. AcrMapping
{ "ProviderName": "MyOktaIdP", "ProviderType": "OIDC", "AcrMapping": { "Level1": "urn:okta:loa:1", "Level2": "urn:okta:loa:2", "Level3": "urn:okta:loa:3", "Level4": "urn:okta:loa:4" } }
L'impostazione AcrMapping del provider di identità è disponibile in tutti i piani di funzionalità. Non è limitato al piano di funzionalità Essentials o Plus.
Il seguente comportamento si applica agli utenti federati che accedono tramite un IdP OIDC.
-
Se l'IdP OIDC restituisce un valore ACR che non è nella configurazione, Amazon
AcrMappingCognito imposta laacrdichiarazione del token al livello più basso (il nome predefinitourn:cognito:loa:1o il nome di livello 1 che hai configurato per il tuo pool di utenti). Questo non è un errore. -
Amazon Cognito elimina qualsiasi valore AMR che non riconosce e mantiene solo i valori noti.
-
Se l'IdP OIDC non supporta ACR e AMR o non restituisce valori AMR riconosciuti da Amazon Cognito, Amazon Cognito imposta come valore AMR segnaposto predefinito.
fed -
Amazon Cognito si fida dei
amrvaloriacre dei valori che l'IdP OIDC afferma, soggetti a mappatura e filtraggio. Non convalida le sfide effettivamente eseguite dall'IdP.
In un flusso federativo, l'applicazione reindirizza all'/oauth2/authorizeendpoint con il livello o i livelli di destinazione espressi nei nomi del pool di utenti. Amazon Cognito traduce i valori nei valori che l'IdP OIDC si aspetta con, AcrMapping reindirizza all'IdP, riceve i valori ACR e AMR dell'IdP, li mappa ed emette token Amazon Cognito. Per ulteriori informazioni sulla configurazione di un IdP, consulta Configurazione dei provider di identità.