Aggiungere e gestire provider di identità SAML in un pool di utenti - Amazon Cognito

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à.

Aggiungere e gestire provider di identità SAML in un pool di utenti

Le seguenti procedure mostrano come creare, modificare ed eliminare i provider SAML in un pool di utenti Amazon Cognito.

AWS Management Console

Puoi utilizzare il AWS Management Console per creare ed eliminare i provider di identità SAML (). IdPs

Prima di creare un IdP SAML, devi disporre del documento di metadati SAML che ottieni dall'IdP di terze parti. Per istruzioni su come ricevere o generare il documento di metadati SAML richiesto, consulta Configurazione del provider di identità SAML di terze parti.

Per configurare un provider di identità SAML 2.0 nel bacino d'utenza
  1. Passa alla console Amazon Cognito. Se richiesto, inserisci le tue credenziali AWS .

  2. Scegli User Pools (Pool di utenti).

  3. Scegli un bacino d'utenza esistente dall'elenco o creane uno nuovo.

  4. Scegli la scheda Sign-in experience (Esperienza di accesso). Individua la voce Federated sign-in (Accesso federato) quindi scegli Add an identity provider (Aggiungi un provider di identità).

  5. Scegli un provider di identità SAML.

  6. Inserisci il nome del provider. È possibile passare questo nome descrittivo in un parametro di identity_provider richiesta aEndpoint Authorize.

  7. Inserisci gli Identifiers (Identificatori) separati da virgole. Un identificatore indica ad Amazon Cognito che dovrebbe controllare l'indirizzo e-mail inserito dall'utente al momento dell'accesso e quindi indirizzarlo al provider che corrisponde al proprio dominio.

  8. Scegli Add sign-out flow (Aggiungi flusso di disconnessione) se desideri che Amazon Cognito invii richieste di disconnessione firmate al tuo provider quando un utente si disconnette. È necessario configurare il provider di identità SAML 2.0 per inviare le risposte di disconnessione all'endpoint https://mydomain.us-east-1.amazoncognito.com/saml2/logout creato al momento della configurazione dell'interfaccia utente ospitata. L'endpoint saml2/logout utilizza POST vincolanti.

    Nota

    Se questa opzione è selezionata e il tuo IdP SAML prevede una richiesta di disconnessione firmata, devi anche fornire al tuo IdP SAML il certificato di firma dal tuo pool di utenti.

    L'IdP SAML elabora la richiesta di disconnessione con firmata e disconnette l'utente dalla sessione Amazon Cognito.

  9. Scegli la configurazione di accesso SAML avviata dall'IdP. Come best practice di sicurezza, scegli Accept only asserzioni SAML avviate da SP. Se hai preparato il tuo ambiente per accettare in modo sicuro sessioni di accesso SAML non richieste, scegli Accetta asserzioni SAML avviate da SP e IdP. Per ulteriori informazioni, consulta Avvio della sessione SAML nei bacini d'utenza di Amazon Cognito.

  10. Scegli una Metadata document source (Fonte del documento di metadati). Se il provider di identità offre metadati SAML a un URL pubblico, puoi scegliere l'opzione Metadata document URL (URL del documento di metadati) e inserire l'URL pubblico. In caso contrario, seleziona Upload metadata document (Carica documento di metadati) e seleziona un file di metadati scaricato dal tuo provider in precedenza.

    Nota

    Ti consigliamo di inserire l'URL di un documento di metadati se il tuo provider ha un endpoint pubblico anziché caricare un file. Amazon Cognito aggiorna automaticamente i metadati dall'URL dei metadati. In genere, l'aggiornamento dei metadati avviene ogni 6 ore oppure prima della scadenza dei metadati, in base a ciò che avviene prima.

  11. Mappa gli attributi tra il provider SAML e il pool di utenti per mappare gli attributi del provider SAML al profilo utente nel pool di utenti. Includi gli attributi richiesti del bacino d'utenza nella mappa degli attributi.

    Ad esempio, quando scegli User pool attribute (Attributo del bacino d'utenza) email, inserisci il nome dell'attributo SAML così come compare nell'asserzione SAML del provider di identità. Il provider di identità può offrire asserzioni SAML di esempio che possono essere di aiuto nell'individuare il nome. Alcuni IdPs usano nomi semplici, comeemail, mentre altri usano nomi come i seguenti.

    http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
  12. Scegli Crea.

API/CLI

Utilizza i comandi seguenti per creare e gestire un provider di identità SAML.

Creazione di un provider di identità e caricamento di un documento di metadati
  • AWS CLI: aws cognito-idp create-identity-provider

    Esempio con file di metadati: aws cognito-idp create-identity-provider --user-pool-id us-east-1_EXAMPLE --provider-name=SAML_provider_1 --provider-type SAML --provider-details file:///details.json --attribute-mapping email=http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress

    Dove details.json contiene:

    "ProviderDetails": { "MetadataFile": "<SAML metadata XML>", "IDPSignout" : "true", "RequestSigningAlgorithm" : "rsa-sha256", "EncryptedResponses" : "true", "IDPInit" : "true" }
    Nota

    Se <SAML metadata XML>contiene delle istanze del personaggio", devi aggiungere \ come carattere di escape:\".

    Esempio con URL di metadati: aws cognito-idp create-identity-provider --user-pool-id us-east-1_EXAMPLE --provider-name=SAML_provider_1 --provider-type SAML --provider-details MetadataURL=https://myidp.example.com/sso/saml/metadata --attribute-mapping email=http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress

  • AWS API: CreateIdentityProvider

Caricamento di un nuovo documento di metadati per un provider di identità
  • AWS CLI: aws cognito-idp update-identity-provider

    Esempio con file di metadati: aws cognito-idp update-identity-provider --user-pool-id us-east-1_EXAMPLE --provider-name=SAML_provider_1 --provider-details file:///details.json --attribute-mapping email=http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress

    Dove details.json contiene:

    "ProviderDetails": { "MetadataFile": "<SAML metadata XML>", "IDPSignout" : "true", "RequestSigningAlgorithm" : "rsa-sha256", "EncryptedResponses" : "true", "IDPInit" : "true" }
    Nota

    Se <SAML metadata XML>contiene delle istanze del personaggio", devi aggiungere \ come carattere di escape:\".

    Esempio con URL di metadati: aws cognito-idp update-identity-provider --user-pool-id us-east-1_EXAMPLE --provider-name=SAML_provider_1 --provider-details MetadataURL=https://myidp.example.com/sso/saml/metadata --attribute-mapping email=http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress

  • AWS API: UpdateIdentityProvider

Recupero delle informazioni su un provider di identità specifico
  • AWS CLI: aws cognito-idp describe-identity-provider

    aws cognito-idp describe-identity-provider --user-pool-id us-east-1_EXAMPLE --provider-name=SAML_provider_1

  • AWS API: DescribeIdentityProvider

Per elencare informazioni su tutti IdPs
  • AWS CLI: aws cognito-idp list-identity-providers

    Esempio: aws cognito-idp list-identity-providers --user-pool-id us-east-1_EXAMPLE --max-results 3

  • AWS API: ListIdentityProviders

Eliminazione di un IdP
  • AWS CLI: aws cognito-idp delete-identity-provider

    aws cognito-idp delete-identity-provider --user-pool-id us-east-1_EXAMPLE --provider-name=SAML_provider_1

  • AWS API: DeleteIdentityProvider

Per configurare l'IdP SAML per l'aggiunta di un bacino d'utenza come relying party
  • L'URN del provider di servizi del bacino d'utenza è: urn:amazon:cognito:sp:us-east-1_EXAMPLE. Amazon Cognito richiede un valore di restrizione del pubblico che corrisponda a questo URN nella risposta SAML. Configura il tuo IdP per utilizzare il seguente endpoint di binding POST per il messaggio di risposta da IdP a SP.

    https://mydomain.us-east-1.amazoncognito.com/saml2/idpresponse
  • Il tuo IdP SAML deve NameID compilare tutti gli attributi obbligatori per il tuo pool di utenti nell'asserzione SAML. NameIDviene utilizzato per identificare in modo univoco l'utente federato SAML nel pool di utenti. Il tuo IdP deve trasmettere l'ID del nome SAML di ogni utente in un formato coerente con distinzione tra maiuscole e minuscole. Qualsiasi variazione del valore dell'ID del nome utente crea un nuovo profilo utente.

Fornire un certificato di firma all'IDP SAML 2.0
  • Per scaricare una copia della chiave pubblica da Amazon Cognito che il tuo IdP può utilizzare per convalidare le richieste di disconnessione SAML, scegli la scheda Esperienza di accesso del tuo pool di utenti, seleziona il tuo IdP e, in Visualizza certificato di firma, seleziona Scarica come .crt.

Puoi eliminare qualsiasi provider SAML configurato nel tuo bacino d'utenza con la console Amazon Cognito.

Come eliminare un provider SAML
  1. Accedi alla console Amazon Cognito.

  2. Nel pannello di navigazione, scegli User Pools (Bacini d'utenza) e seleziona i bacini d'utenza che intendi modificare.

  3. Scegli la scheda Esperienza di accesso e individua l'accesso tramite Federated Identity Provider.

  4. Seleziona il pulsante di opzione accanto al SAML IdPs che desideri eliminare.

  5. Quando viene richiesto di confermare l'opzione Delete identity provider (Elimina provider di identità), inserisci il nome del provider SAML per confermare l'eliminazione, quindi scegli Delete (Elimina).