Implementa l'autenticazione SAML 2.0 per Amazon WorkSpaces utilizzando Auth0 e AWS Managed Microsoft AD - Prontuario AWS

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

Implementa l'autenticazione SAML 2.0 per Amazon WorkSpaces utilizzando Auth0 e AWS Managed Microsoft AD

Siva Vinnakota e Shantanu Padhye, Amazon Web Services

Riepilogo

Questo modello esplora come integrare Auth0 AWS Directory Service for Microsoft Active Directory per creare una solida soluzione di autenticazione SAML 2.0 per il tuo ambiente Amazon. WorkSpaces Spiega come stabilire una federazione tra questi sistemi Servizi AWS per abilitare funzionalità avanzate come l'autenticazione a più fattori (MFA) e i flussi di accesso personalizzati, preservando al contempo l'accesso al desktop senza interruzioni. AWS Managed Microsoft AD Che tu gestisca solo una manciata di utenti o migliaia, questa integrazione aiuta a fornire flessibilità e sicurezza alla tua organizzazione. Questo modello fornisce i passaggi per il processo di configurazione in modo da poter implementare questa soluzione nel proprio ambiente.

Prerequisiti e limitazioni

Prerequisiti

  • Un attivo Account AWS

  • AWS Managed Microsoft AD

  • Un desktop fornito in Amazon WorkSpaces Personal associato a AWS Managed Microsoft AD

  • Un'istanza Amazon Elastic Compute Cloud (Amazon EC2)

  • Un account Auth0

Limitazioni

Alcuni Servizi AWS non sono disponibili in tutti Regioni AWS. Per la disponibilità per regione, vedi Servizi AWS per regione. Per endpoint specifici, consulta la pagina Endpoint e quote del servizio e scegli il link relativo al servizio.

Architettura

Il processo di autenticazione SAML 2.0 per un'applicazione WorkSpaces client consiste in cinque passaggi illustrati nel diagramma seguente. Questi passaggi rappresentano un tipico flusso di lavoro per l'accesso. È possibile utilizzare questo approccio distribuito all'autenticazione dopo aver seguito le istruzioni riportate in questo schema, per fornire un metodo strutturato e sicuro per l'accesso degli utenti.

Flusso di lavoro per il processo di autenticazione SAML 2.0 per un'applicazione WorkSpaces client.

Flusso di lavoro:

  1. Registrazione. L'utente avvia l'applicazione client WorkSpaces e inserisce il codice di WorkSpaces registrazione per la propria directory abilitata per SAML WorkSpaces . WorkSpaces restituisce l'URL del provider di identità (IdP) Auth0 all'applicazione client.

  2. Accedi.Il WorkSpaces client reindirizza al browser Web dell'utente utilizzando l'URL Auth0.  L'utente si autentica con nome utente e password. Auth0 restituisce un'asserzione SAML al browser del client. L'asserzione SAML è un token crittografato che afferma l'identità dell'utente.

  3. Autenticazione. Il browser del client pubblica l'asserzione SAML sull' Accedi ad AWS endpoint per convalidarla. Accedi ad AWS consente al chiamante di assumere un AWS Identity and Access Management ruolo (IAM). Ciò restituisce un token che contiene credenziali temporanee per il ruolo IAM.

  4. WorkSpaces accesso. Il WorkSpaces client presenta il token all'endpoint del WorkSpaces servizio. WorkSpaces scambia il token con un token di sessione e restituisce il token di sessione al WorkSpaces client con un URL di accesso. Quando il WorkSpaces client carica la pagina di accesso, il valore del nome utente viene compilato con il NameId valore passato nella risposta SAML.

  5. Streaming. L'utente inserisce la propria password e si autentica nella WorkSpaces directory. Dopo l'autenticazione, WorkSpaces restituisce un token al client. Il client reindirizza nuovamente al WorkSpaces servizio e presenta il token. Questo negozia una sessione di streaming tra il WorkSpaces client e il. WorkSpace

Nota

Per configurare un'esperienza Single Sign-On senza interruzioni che non richieda la richiesta di una password, consulta le sezioni Autenticazione basata su certificati e Personale nella documentazione. WorkSpaces WorkSpaces

Strumenti

Servizi AWS

  • Amazon WorkSpaces è un servizio di infrastruttura desktop virtuale (VDI) completamente gestito che fornisce agli utenti desktop basati sul cloud senza dover procurarsi e distribuire hardware o installare software complessi.

  • AWS Directory Service for Microsoft Active Directoryconsente ai carichi di lavoro e alle risorse compatibili con le directory di AWS utilizzare Microsoft Active Directory in. Cloud AWS

Altri strumenti

  • Auth0 è una piattaforma di autenticazione e autorizzazione che ti aiuta a gestire l'accesso alle tue applicazioni.

Epiche

AttivitàDescrizioneCompetenze richieste

Installa il connettore LDAP di Active Directory in Auth0 con. AWS Managed Microsoft AD

  1. Accedi alla dashboard Auth0 e scegli Authentication, Enterprise, Active Directory/LDAP. Scegli Crea una connessione.

  2. Fornisci il nome per la tua connessione ad Active Directory, quindi scegli Crea.

  3. Nella scheda Configurazione, scarica l'agente per il tuo sistema operativo.

    Una volta completata l'installazione, il browser predefinito visualizza una richiesta per l'URL del ticket.

  4. Inserisci l'URL del ticket di provisioning, che deve essere univoco per la stringa di connessione, quindi scegli Continua.

  5. Nella finestra di dialogo di configurazione AD LDAP, in Nome utente e Password, inserisci le credenziali di amministratore, quindi scegli Salva.

    Una volta stabilita la connessione a Auth0, il registro di configurazione viene visualizzato con lo stato di segnalazione OK per tutti i controlli.

Amministratore del cloud, architetto del cloud

Crea un'applicazione in Auth0 per generare il file manifest dei metadati SAML.

  1. Accedi alla dashboard Auth0 e crea una nuova applicazione seguendo le istruzioni nella documentazione di Auth0.

  2. Nella dashboard Auth0, scegli il nome dell'applicazione per accedere alle relative impostazioni di configurazione. Nella AddOnsscheda, scegli App SAML2 Web.

  3. Nella scheda Impostazioni del componente aggiuntivo, per Application Callback URL, inserisci https://signin.aws.amazon.com /saml. Qui è dove il token SAML invierà la richiesta. POST

  4. Nella scheda Impostazioni, nella casella Impostazioni, incolla il seguente codice di configurazione SAML in formato JSON:

    { "audience": "https://signin.aws.amazon.com/saml", "mappings": { "email": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/sAMAccountName", "name": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name" }, "createUpnClaim": false, "passthroughClaimsWithNoMapping": false, "mapUnknownClaimsAsIs": false, "mapIdentities": false, "nameIdentifierFormat": "urn:oasis:names:tc:SAML:2.0:nameid-format:persistent", "nameIdentifierProbes": [ "http://schemas.auth0.com/sAMAccountName" ] }
  5. Salva, quindi scegli Abilita.

  6. Scegli la scheda Utilizzo e scarica il file manifesto dei metadati per il provider di identità. Queste informazioni sono necessarie per i passaggi successivi.

  7. Chiudi la finestra dell'app SAML2 Web.

  8. Nella schermata delle applicazioni, scegli Connessioni. In Enterprise, seleziona il Directory/LDAP connettore attivo corretto e abilitalo.

Amministratore del cloud, architetto del cloud
AttivitàDescrizioneCompetenze richieste

Crea un IdP SAML 2.0 in IAM.

Per configurare SAML 2.0 come IdP, segui i passaggi descritti in Creare un provider di identità SAML in IAM nella documentazione IAM.

Amministratore cloud

Crea un ruolo e una policy IAM per la federazione SAML 2.0.

  1. Crea un ruolo IAM per la federazione SAML 2.0. Per istruzioni, consulta il passaggio 2 delle istruzioni per la configurazione di SAML 2.0 for WorkSpaces Personal nella WorkSpaces documentazione.

  2. Crea una policy IAM e associala al ruolo creato nel passaggio precedente. Per istruzioni, consulta il passaggio 3 nelle istruzioni per la configurazione di SAML 2.0 for WorkSpaces Personal nella WorkSpaces documentazione.

Amministratore cloud
AttivitàDescrizioneCompetenze richieste

Configura le asserzioni Auth0 e SAML.

Puoi utilizzare le azioni Auth0 per configurare le asserzioni nelle risposte SAML 2.0. Un'asserzione SAML è un token crittografato che afferma l'identità dell'utente.

  1. Accedi alla dashboard Auth0. Scegli Actions, Library, Create Action, Build da zero.

  2. Fornisci i seguenti valori, quindi scegli Crea.

    Nome: specifica un nome per l'azione

    Trigger: scegli Login/Post Login

    Runtime: scegli il nodo 18

  3. Nella schermata successiva, inserisci il seguente codice:

    exports.onExecutePostLogin = async (event, api) => { if (event.client.name === "Workspace_Saml") { const awsRole = 'arn:aws:iam::030784294031:role/Workspace_Auth0,arn:aws:iam::030784294031:saml-provider/Auth0'; const awsRoleSession = event.user.sAMAccountName; const email = event.user.emails[0]; api.samlResponse.setDestination('https://signin.aws.amazon.com/saml'); api.samlResponse.setAttribute('https://aws.amazon.com/SAML/Attributes/Role', awsRole) api.samlResponse.setAttribute('https://aws.amazon.com/SAML/Attributes/RoleSessionName', awsRoleSession) api.samlResponse.setAttribute('https://aws.amazon.com/SAML/Attributes/PrincipalTag:Email', email) } return; };
  4. Seleziona Deploy (Implementa).

Questo completa la configurazione dell'autenticazione SAML 2.0 per i desktop WorkSpaces personali. La sezione Architettura illustra il processo di autenticazione dopo la configurazione.

Amministratore cloud

Risoluzione dei problemi

ProblemaSoluzione

Problemi di autenticazione SAML 2.0 in WorkSpaces

Se riscontri problemi durante l'implementazione dell'autenticazione SAML 2.0 for WorkSpaces Personal, segui i passaggi e i link descritti nell'articolo di AWS re:POST sulla risoluzione dei problemi di autenticazione SAML 2.0.

Per ulteriori informazioni sull'analisi degli errori SAML 2.0 durante l'accesso, consulta: WorkSpaces

Risorse correlate