Provisioning degli utenti B2B di Azure AD e Single Sign-On

Last reviewed 2023-02-27 UTC

Questo documento mostra come estendere il provisioning degli utenti di Azure Active Directory (Azure AD) e il Single Sign-On per abilitare il servizio Single Sign-On (SSO) per gli utenti della collaborazione Azure AD B2B.

Il documento presuppone l'utilizzo di Microsoft Office 365 o Azure AD nella tua organizzazione e di aver già configurato il provisioning degli utenti di AD AD e il Single Sign-On come nel seguente diagramma.

Configurazione del provisioning degli utenti di Azure AD e del Single Sign-On.

In questo diagramma, gli utenti provenienti da provider di identità (IdP) esterni e da altri tenant Azure AD accedono al tenant di Azure AD tramite l'accesso B2B.

Obiettivi

  • Estendi la configurazione del provisioning degli utenti di Azure AD per includere gli utenti guest B2B di Azure.
  • Estendi la configurazione del servizio SSO in Azure AD per includere gli utenti ospite di Azure B2B.
  • Configura Cloud Identity per limitare la durata delle sessioni per gli utenti ospite.

Prima di iniziare

Assicurati di aver configurato il provisioning degli utenti di AD AD e il Single Sign-On.

Utenti ospiti Azure B2B

Azure AD consente di invitare utenti esterni come invitati al tenant di Azure AD. Quando inviti un utente esterno, Azure AD crea un account utente ospite nel tuo tenant. Questi account utente ospite differiscono dagli account utente Azure AD regolari in diversi modi:

  • Gli utenti ospite non hanno una password. Per accedere, gli utenti ospite vengono reindirizzati automaticamente al tenant della home page o al provider di identità (IdP) esterno da cui sono stati invitati.
  • Il nome dell'entità utente (UPN) dell'account utente ospite utilizza un prefisso derivato dall'indirizzo email dell'invitato, combinato con il dominio iniziale del tenant, ad esempio: prefix#EXT#@tenant.onmicrosoft.com.
  • Se inviti un utente da un tenant Azure AD diverso e l'utente viene successivamente eliminato nel tenant home, l'account utente ospite rimane attivo nel tenant Azure AD.

Queste differenze influiscono sul modo in cui configuri il provisioning degli utenti e il Single Sign-On:

  • Poiché onmicrosoft.com è un dominio DNS di proprietà di Microsoft, non puoi aggiungere tenant.onmicrosoft.com come dominio secondario al tuo account Cloud Identity o Google Workspace. Questo avviso indica che non puoi utilizzare il nome UPN dell'utente ospite come indirizzo email principale durante il provisioning dell'utente in Cloud Identity o Google Workspace.

    Per eseguire il provisioning degli utenti ospite in Cloud Identity o Google Workspace, devi configurare una mappatura che trasformi l'UPN dell'utente ospite in un dominio utilizzato dal tuo account Cloud Identity o Google Workspace.

    In questo documento, configuri una mappatura UPN come indicato nella seguente tabella.

    UPN originale in Azure AD Indirizzo email principale in Cloud Identity o Google Workspace
    Utente standard alice@example.com alice@example.com
    Ospite AD Azure charlie@altostrat.com charlie_altostrat.com@example.com
    Ospite esterno user@hotmail.com user_hotmail.com@example.com
  • Quando un utente viene eliminato nel tenant principale, Azure AD non sospenderà l'utente corrispondente in Cloud Identity o Google Workspace. Questo pone un rischio per la sicurezza: sebbene qualsiasi tentativo di utilizzare il Single Sign-On non riuscirà per questo utente, le sessioni del browser e i token di aggiornamento esistenti (inclusi quelli utilizzati da Google Cloud CLI) potrebbero rimanere attivi per giorni o settimane, consentendo all'utente di continuare ad accedere alle risorse.

    Utilizzando l'approccio descritto in questo documento, puoi mitigare questo rischio eseguendo il provisioning degli utenti ospite per un'unità organizzativa dedicata in Cloud Identity o Google Workspace e applicando un criterio che limita la durata della sessione a 8 ore. Il criterio assicura che le sessioni del browser e i token di aggiornamento esistenti vengano invalidati al massimo dopo otto ore dall'eliminazione dell'utente nel tenant home, revocando di fatto l'accesso. L'utente in Cloud Identity o Google Workspace rimane comunque attivo finché non lo elimini dall'account Azure AD.

Preparare l'account Cloud Identity o Google Workspace

Crea un'unità organizzativa nel tuo account Cloud Identity o Google Workspace di cui verrà eseguito il provisioning di tutti gli utenti invitati.

  1. Nella Console di amministrazione, vai a Unità organizzative e fai clic su .
  2. Inserisci le seguenti impostazioni:
    1. Nome dell'unità organizzativa: guests
    2. Descrizione: Azure B2B guest users
  3. Fai clic su Crea.

Applica un criterio all'unità organizzativa che limita la durata della sessione a otto ore. La durata della sessione non si applica solo alle sessioni del browser, ma limita anche la durata dei token di aggiornamento OAuth.

  1. Nella Console di amministrazione, vai a Sicurezza > Controllo sessione di Google Cloud.
  2. Seleziona l'unità organizzativa ospiti.
  3. Seleziona Imposta la durata della sessione e scegli 8 ore. Questa durata riflette il tempo massimo durante il quale un utente ospite può ancora accedere alle risorse di Google Cloud dopo la sospensione in Azure AD.
  4. Imposta il metodo di riautenticazione su Password. Questa impostazione garantisce che gli utenti debbano ripetere l'autenticazione utilizzando Azure AD dopo la scadenza di una sessione.
  5. Fai clic su Sostituisci.

Configura provisioning Azure AD

Ora tutto è pronto per regolare la configurazione di Azure AD esistente per supportare il provisioning degli utenti ospiti B2B.

  1. Nel portale di Azure, vai ad Azure Active Directory > Applicazioni aziendali.
  2. Seleziona l'applicazione aziendale Google Cloud (provisioning), che utilizzi per il provisioning degli utenti.
  3. Fai clic su Gestisci > Provisioning.
  4. Fai clic su Modifica provisioning.
  5. In Mappings (Mappature), fai clic su Provision Azure Active Directory Users (Esegui il provisioning degli utenti di Azure Active Directory).
  6. Seleziona la riga userPrincipalName.
  7. Nella finestra di dialogo Modifica attributo, applica le seguenti modifiche:

    1. Tipo di mappatura: passa da Diretto a Espressione.
    2. Espressione:

      Replace([originalUserPrincipalName], "#EXT#@TENANT_DOMAIN", , , "@PRIMARY_DOMAIN", , )

      Sostituisci quanto segue:

      • TENANT_DOMAIN: il dominio .onmicrosoft.com del tenant di Azure AD, ad esempio tenant.onmicrosoft.com.
      • PRIMARY_DOMAIN: il nome di dominio principale utilizzato dal tuo account Cloud Identity o Google Workspace, ad esempio example.org.
  8. Fai clic su OK.

  9. Seleziona Aggiungi nuova mappatura.

  10. Nella finestra di dialogo Modifica attributo, configura le seguenti impostazioni:

    1. Tipo di mappatura: Espressione.
    2. Espressione:

      IIF(Instr([originalUserPrincipalName], "#EXT#", , )="0", "/", "/guests")

    3. Attributo di destinazione: OrgUnitPath

  11. Fai clic su OK.

  12. Fai clic su Salva.

  13. Fai clic su per confermare che il salvataggio delle modifiche comporterà la nuova sincronizzazione degli utenti e dei gruppi.

  14. Chiudi la finestra di dialogo Mappatura attributi.

Configurazione di Azure AD per il Single Sign-On

Per garantire che gli utenti guest possano autenticarsi utilizzando il Single Sign-On, ora estendi la configurazione Azure AD esistente per abilitare il Single Sign-On per gli ospiti:

  1. Nel portale Azure, vai a Azure Active Directory > Applicazioni aziendali.
  2. Seleziona l'applicazione aziendale Google Cloud, che utilizzi per il Single Sign-On.
  3. Fai clic su Gestisci > Single Sign-On.
  4. Nella schermata della votazione, fai clic sulla scheda SAML.
  5. Nella scheda Attributi e rivendicazioni utente, fai clic su Modifica.
  6. Seleziona la riga ID utente univoco (ID nome).
  7. In Scegli il formato dell'identificatore del nome, seleziona Non specificato. Ciò garantisce che Cloud Identity o Google Workspace accetti una rivendicazione NameID anche se la rivendicazione non contiene un nome di dominio.
  8. Seleziona Condizioni di rivendicazione.
  9. Aggiungi una rivendicazione condizionale per gli invitati esterni:
    1. Tipo di utente: Invitati esterni
    2. Fonte: trasformazione
    3. Trasformazione: seleziona Estrai() e Prima della corrispondenza
    4. Parametro 1 (Input): user.userprincipalname
    5. Valore: #EXT#@TENANT_DOMAIN. Sostituisci TENANT_DOMAIN con il dominio .onmicrosoft.com del tenant di Azure AD, ad esempio tenant.onmicrosoft.com.
  10. Fai clic su Aggiungi.
  11. Aggiungi una dichiarazione condizionale per gli ospiti di Azure AD da tenant diversi:

    1. Tipo di utente: ospiti AAD
    2. Fonte: trasformazione
    3. Trasformazione: seleziona Estrai() e Prima della corrispondenza
    4. Parametro 1 (Input): user.localuserprincipalname

    5. Valore: #EXT#@TENANT_DOMAIN. Sostituisci TENANT_DOMAIN con il dominio .onmicrosoft.com del tenant di Azure AD, ad esempio tenant.onmicrosoft.com.

  12. Fai clic su Aggiungi.

  13. Aggiungi una rivendicazione condizionale per i normali utenti di Azure AD:

    1. Tipo di utente: Membri
    2. Origine: Attributo
    3. Valore: user.userprincipalname
  14. Fai clic su Salva.

  15. Nella schermata Attributi e rivendicazioni utente, seleziona Aggiungi nuova rivendicazione.

  16. Inserisci le seguenti impostazioni:

    1. Nome: _upn
    2. Origine: Attributo
    3. Attributo origine: user.userprincipalname
  17. Fai clic su Salva.

Test di Single Sign-On

Per verificare che la configurazione funzioni correttamente, sono necessari tre utenti di test nel tenant di Azure AD:

  • Un utente Azure AD standard.
  • Un utente ospite di Azure AD. Questo è un utente che è stato invitato da un tenant di Azure AD diverso.
  • Un utente ospite esterno. Questo è un utente che è stato invitato utilizzando un indirizzo email AD diverso da Azure, come un indirizzo @hotmail.com.

Per ciascun utente, esegui il seguente test:

  1. Apri una nuova finestra in incognito nel browser e vai all'indirizzo https://console.cloud.google.com/.
  2. Nella pagina Accedi con Google visualizzata, inserisci l'indirizzo email dell'utente come viene visualizzato nella colonna Indirizzo email principale in Cloud Identity o Google Workspace della tabella precedente. Consulta la tabella per vedere come l'indirizzo email in Cloud Identity o Google Workspace deriva dal nome dell'entità utente.

    Ti reindirizzeremo ad Azure AD, dove vedrai un altro prompt di accesso.

  3. Al prompt di accesso, inserisci il codice UPN dell'utente e segui le istruzioni per l'autenticazione.

    Dopo l'autenticazione riuscita, Azure AD ti reindirizza a Accedi con Google. Poiché è la prima volta che accedi con questo utente, ti viene chiesto di accettare i Termini di servizio e le norme sulla privacy di Google.

  4. Se accetti i termini, fai clic su Accetta.

    Si aprirà la console Google Cloud, che ti chiede di confermare le preferenze e accettare i Termini di servizio di Google Cloud.

  5. Se accetti i termini, scegli e fai clic su Accetta e continua.

  6. Fai clic sull'icona dell'avatar e quindi su Esci.

    Ti reindirizzeremo a una pagina Azure AD che conferma che il tuo account è stato disconnesso.

Passaggi successivi