Condividi tramite


Risoluzione dei problemi del plug-in Microsoft Enterprise SSO Extension nei dispositivi Apple

Questo articolo fornisce indicazioni sulla risoluzione dei problemi usate dagli amministratori per risolvere i problemi relativi alla distribuzione e all'uso del plug-in in Enterprise SSO. L'estensione Apple SSO può essere distribuita in iOS/iPadOS e macOS.

Le organizzazioni possono scegliere di distribuire l'accesso SSO ai propri dispositivi aziendali per offrire un'esperienza migliore per gli utenti finali. Nelle piattaforme Apple questo processo implica l'implementazione dell'accesso Single Sign-On (SSO) tramite token di aggiornamento primario. L'accesso Single Sign-On consente agli utenti finali di ridurre il carico di richieste di autenticazione eccessive.

Microsoft ha implementato un plug-in basato sul framework SSO di Apple, che fornisce l'autenticazione negoziata per le applicazioni integrate con Microsoft Entra ID. Per altre informazioni, vedere l'articolo Pug-in Microsoft Enterprise SSO per i dispositivi Apple.

Tipi di estensione

Apple supporta due tipi di estensioni SSO che fanno parte del framework: Reindirizzamento e credenziali. Il plug-in Microsoft Enterprise SSO è stato implementato come tipo di reindirizzamento ed è più adatto per l'autenticazione negoziata in Microsoft Entra ID. Nella tabella seguente vengono confrontati i due tipi di estensioni.

Tipo di estensione Ideale per Funzionamento Differenze principali
Reindirizza Metodi di autenticazione moderni, ad esempio OpenID Connect, OAUTH2 e SAML (Microsoft Entra ID) Il sistema operativo intercetta la richiesta di autenticazione dall'applicazione agli URL del provider di identità definiti nel profilo di configurazione MDM dell'estensione. Le estensioni di reindirizzamento ricevono URL, intestazioni e corpo. Richiedere le credenziali prima di richiedere i dati. Usa gli URL nel profilo di configurazione MDM.
Credenziale Tipi di autenticazione di richiesta e risposta come Kerberos (Servizi di dominio Active Directory locali) La richiesta viene inviata dall'applicazione al server di autenticazione (controller di dominio AD). Le estensioni delle credenziali sono configurate con HOSTS nel profilo di configurazione MDM. Se il server di autenticazione restituisce una richiesta di verifica corrispondente a un host elencato nel profilo, il sistema operativo instrada la richiesta all'estensione. L'estensione ha la scelta di gestire o rifiutare la richiesta. Se gestita, l'estensione restituisce le intestazioni di autorizzazione per completare la richiesta e il server di autenticazione restituisce una risposta al chiamante. Richiedere i dati e quindi richiedere l'autenticazione. Usare gli HOST nel profilo di configurazione MDM.

Microsoft dispone di implementazioni per l'autenticazione negoziata per i sistemi operativi client seguenti:

Sistema operativo Broker di autenticazione
Finestre Gestione account Web (WAM, Web Account Manager)
iOS/iPadOS Microsoft Authenticator
Android Microsoft Authenticator o portale aziendale di Microsoft Intune
macOS Portale aziendale di Microsoft Intune (tramite estensione SSO)

Tutte le applicazioni broker Microsoft usano un artefatto chiave noto come token di aggiornamento primario (PRT), ovvero un token JSON Web (JWT) usato per acquisire i token di accesso per le applicazioni e le risorse Web protette con Microsoft Entra ID. Quando viene distribuita tramite MDM, l'estensione Enterprise SSO per macOS o iOS ottiene un token di aggiornamento primario simile alle richieste pull usate nei dispositivi Windows da Web Account Manager (WAM). Per altre informazioni, vedere l’articolo Che cos'è un token di aggiornamento primario.

Modello di risoluzione dei problemi

Il diagramma di flusso seguente illustra un flusso logico per la risoluzione dei problemi relativi all'estensione SSO. Il resto di questo articolo illustra in dettaglio i passaggi illustrati in questo diagramma di flusso. La risoluzione dei problemi può essere suddivisa in due aree di interesse separate: distribuzione e flusso di autenticazione dell'applicazione.

Procedura per rifiutare esplicitamente l'accesso Single Sign-On di Platform in macOS

Per rifiutare esplicitamente l'accesso PSSO abilitato per errore, gli amministratori devono rimuovere il profilo di estensione SSO con PSSO abilitato dai dispositivi e distribuire un nuovo profilo di estensione SSO con flag PSSO disabilitati/rimossi.

  1. Rimuovere la destinazione per il profilo SSO con PSSO abilitato
  2. Avviare la sincronizzazione del dispositivo per ottenere il profilo SSO con PSSO abilitato rimosso dal dispositivo
  3. Impostare come destinazione il dispositivo con un nuovo profilo SSO con PSSO disabilitato
  4. Avviare la sincronizzazione del dispositivo per ottenere il nuovo profilo installato nel dispositivo

Importante

Nota: l'aggiornamento del profilo SSO esistente nel dispositivo non consente di disabilitare L'accesso PSSO al termine della registrazione PSSO. Solo una rimozione completa del profilo SSO dal dispositivo rimuoverà lo stato PSSO dal dispositivo.

Contesto:

Gli utenti inizieranno a visualizzare la notifica di registrazione PSSO nei dispositivi macOS 13+ in due scenari:

  1. Se il dispositivo ha già la versione di Portale aziendale di Intune che supporta PSSO e l'amministratore distribuisce nuovi criteri di estensione SSO con PSSO abilitato
  2. Se l'utente è già destinato ai criteri di estensione SSO con PSSO abilitato e successivamente viene installata una versione del portale aziendale di Intune che supporta PSSO nel dispositivo.

Attenzione

Gli amministratori non devono essere destinati agli utenti con criteri di estensione SSO con PSSO abilitato, a meno che non vengano testati e pronti per la distribuzione, in quanto ciò può potenzialmente interrompere gli utenti esistenti e le relative condizioni di conformità.

Importante

Nota: per gli utenti che completano la registrazione PSSO, la registrazione WPJ legacy verrà rimossa dal keychain. Se la registrazione PSSO è stata eseguita per errore, dopo che l'amministratore rimuove il profilo SSO con PSSO e installa un nuovo profilo senza PSSO, la registrazione WPJ legacy deve essere eseguita nuovamente per il funzionamento della conformità del dispositivo.

Risoluzione dei problemi di distribuzione

La maggior parte dei problemi riscontrati dai clienti deriva da configurazioni di gestione di dispositivi mobili (MDM) non corretta del profilo di estensione SSO o dall'impossibilità per il dispositivo Apple di ricevere il profilo di configurazione dalla MDM. Questa sezione illustra i passaggi che è possibile eseguire per assicurarsi che il profilo MDM sia stato distribuito in un Mac e che abbia la configurazione corretta.

Requisiti di distribuzione

Controllare la versione del sistema operativo macOS

Usare la procedura seguente per controllare la versione del sistema operativo nel dispositivo macOS. I profili di estensione SSO Apple vengono distribuiti solo nei dispositivi che eseguono macOS 10.15 (Catalina) o versione successiva. È possibile controllare la versione di macOS dall’interfaccia utente o dal terminale.

Interfaccia utente
  1. Dal dispositivo macOS selezionare l'icona Apple nell'angolo in alto a sinistra e selezionare Informazioni su questo Mac.

  2. La versione del sistema operativo è elencata accanto a macOS.

Terminale
  1. Dal dispositivo macOS fare doppio clic sulla cartella Applicazioni e quindi fare doppio clic sulla cartella Utilità.

  2. Fare doppio clic sull'applicazione Terminale.

  3. Quando il terminale apre il tipo sw_vers al prompt, cercare un risultato simile al seguente:

    % sw_vers
    ProductName: macOS
    ProductVersion: 13.0.1
    BuildVersion: 22A400
    

Controllare la versione del sistema operativo iOS

Usare la procedura seguente per controllare la versione del sistema operativo nel dispositivo iOS. I profili di estensione Apple SSO vengono distribuiti solo nei dispositivi che eseguono iOS 13 o versione successiva. È possibile controllare la versione di iOS dall'app Impostazioni. Aprire l'app Impostazioni:

Screenshot che mostra l'icona dell'app Impostazioni iOS.

Passare a Generale e quindi Informazioni. Questa schermata elenca le informazioni sul dispositivo, incluso il numero di versione di iOS:

Screenshot che mostra la versione di iOS nell'app Impostazioni.

Distribuzione MDM del profilo di configurazione dell'estensione SSO

Collaborare con l'amministratore MDM (o il team di gestione dei dispositivi) per assicurarsi che il profilo di configurazione dell'estensione venga distribuito nei dispositivi Apple. Il profilo di estensione può essere distribuito da qualsiasi MDM che supporta dispositivi macOS o iOS.

Importante

Apple richiede che i dispositivi siano registrati in un MDM per la distribuzione dell'estensione SSO.

La tabella seguente fornisce indicazioni specifiche per l'installazione MDM a seconda del sistema operativo in cui si distribuisce l'estensione:

Importante

Anche se qualsiasi MDM è supportato per la distribuzione dell'estensione SSO, molte organizzazioni implementano criteri di accesso condizionale basati su dispositivo tramite la valutazione dei criteri di conformità MDM. Se viene usata una soluzione MDM di terze parti, assicurarsi che il fornitore MDM supporti la conformità dei partner di Intune se si vogliono usare i criteri di accesso condizionale basati su dispositivo. Quando l'estensione SSO viene distribuita tramite Intune o un provider MDM che supporta la conformità dei partner di Intune, l'estensione può passare il certificato del dispositivo a Microsoft Entra ID in modo che l'autenticazione del dispositivo possa essere completata.

Convalidare la configurazione di rete nel dispositivo macOS

Il framework di estensione SSO di Apple e l'estensione Microsoft Enterprise SSO basati su di esso richiedono che determinati domini siano esentati dall'intercettazione/ispezione TLS (nota anche come interruzione e ispezione del proxy). I domini seguenti non devono essere soggetti all'ispezione TLS:

  • app-site-association.cdn-apple.com
  • app-site-association.networking.apple
Controllare se la configurazione dell'accesso Single Sign-On è interrotta a causa di TLS Inspection

È possibile verificare se l'ispezione TLS influisce sulla configurazione dell'accesso SSO eseguendo un sysdiagnose dall'applicazione Terminale su un dispositivo interessato:

sudo sysdiagnose -f ~/Desktop/

Sysdiagnose verrà salvato sul desktop come archivio .tar.gz. Estrarre l'archivio e aprire il file system_logs.logarchive. Verrà aperto nell'applicazione console. Cercare com.apple.appsso e modificare il filtro in SUBSYSTEM:

Screenshot che mostra sysdiagnose.

Cercare gli eventi che indicano che sono presenti errori di dominio associati, in particolare correlati ai domini Microsoft, ad esempio login.microsoftonline.com. Questi eventi potrebbero indicare problemi di ispezione TLS, che impediranno il corretto funzionamento dell'estensione SSO. I domini Apple non verranno visualizzati nel log sysdiagnose, anche se sono interessati da una configurazione di ispezione TLS non supportata.

Convalidare la configurazione dell'ispezione TLS

Apple offre uno strumento macOS per verificare alcuni problemi di configurazione comuni denominati Utilità di valutazione Mac. Questo strumento può essere scaricato da AppleSeed per l'IT. Se si ha accesso ad AppleSeed per l'IT, scaricare l'utilità di valutazione Mac dall'area Risorse. Dopo aver installato l'applicazione, eseguire una valutazione. Al termine della valutazione, passare a Intercetta HTTPS -->Contenuto aggiuntivo --> e controllare i due elementi seguenti:

Screenshot che mostra l'utilità di valutazione Mac.

Se questi controlli presentano un avviso o un errore, potrebbe verificarsi un'ispezione TLS nel dispositivo. Collaborare con il team di rete per esentare *.cdn-apple.com e *.networking.apple dall'ispezione TLS.

Output dei log swcd dettagliati

Apple fornisce un'utilità della riga di comando denominata swcutil che consente di monitorare lo stato di avanzamento della convalida del dominio associata. È possibile monitorare eventuali errori di dominio associati usando il comando seguente:

sudo swcutil watch --verbose

Individuare la voce seguente nei log e verificare se è contrassegnata come approvata o se sono presenti errori:


    ```
    Entry s = authsrv, a = UBF8T346G9.com.microsoft.CompanyPortalMac, d = login.microsoftonline.com
    ```

Cancellare la cache di ispezione TLS di macOS

Se si verificano problemi con i domini associati e si dispone di domini consentiti nello strumento di ispezione TLS sul dispositivo, potrebbe essere necessario del tempo per invalidare la cache di convalida del dominio associata di Apple. Sfortunatamente, non ci sono passaggi deterministici che riattivano la convalida del dominio associato in tutti i computer, ma ci sono alcuni tentativi che possono essere fatti.

È possibile eseguire i comandi seguenti per reimpostare la cache del dispositivo:

pkill -9 swcd
sudo swcutil reset
pkill -9 AppSSOAgent

Testare nuovamente la configurazione dell'estensione SSO dopo la reimpostazione della cache.

In alcuni casi, questo comando non è sufficiente e non reimposta completamente la cache. In questi casi, è possibile provare a eseguire le operazioni seguenti:

  • Rimuovere o spostare l'app Portale aziendale di Intune nel Cestino, quindi riavviare il dispositivo. Al termine del riavvio, è possibile provare a reinstallare l'app Portale aziendale.
  • Registrare nuovamente il dispositivo.

Se nessuno dei metodi precedenti risolve il problema, potrebbe esserci qualcos'altro nell'ambiente che potrebbe bloccare la convalida del dominio associata. In questo caso, contattare il supporto Apple per ulteriori operazioni di risoluzione dei problemi.

Convalidare il profilo di configurazione SSO nel dispositivo macOS

Supponendo che l'amministratore MDM abbia seguito i passaggi della sezione precedente Distribuzione MDM del profilo di estensione SSO, il passaggio successivo consiste nel verificare se il profilo è stato distribuito correttamente nel dispositivo.

Individuare il profilo di configurazione MDM dell'estensione SSO
  1. Dal dispositivo macOS selezionare impostazioni di sistema.

  2. Quando le impostazioni di sistema sono visualizzate, digitare Profili e premere Restituire.

  3. Questa azione dovrebbe visualizzare il pannello Profili.

    Screenshot che mostra i profili di configurazione.

    Screenshot del callout Descrizione
    1 Indica che il dispositivo è in Gestione MDM.
    2 Potrebbero essere disponibili più profili tra cui scegliere. In questo esempio, Microsoft Enterprise SSO Extension Profile è denominato Extensible Single Sign On Profile-32f37be3-302e-4549-a3e3-854d300e117a.

    Nota

    A seconda del tipo di MDM in uso, potrebbero essere elencati diversi profili e il relativo schema di denominazione è arbitrario a seconda della configurazione MDM. Selezionare ognuno di essi e controllare che la riga Impostazioni indichi che si tratta di un'estensione Single Sign-On.

  4. Fare doppio clic sul profilo di configurazione corrispondente al valore Impostazioni dell'estensione Single Sign-On.

    Screenshot che mostra il profilo di configurazione dell'estensione SSO.

    Screenshot del callout Impostazione del profilo di configurazione Descrizione
    1 Signed Autorità di firma del provider MDM.
    2 Installato Data/Timestamp che mostra quando l'estensione è stata installata (o aggiornata).
    3 Impostazioni: Estensione Single Sign-On Indica che questo profilo di configurazione è un tipo di estensione SSO di Apple.
    4 Estensione Identificatore mappato all'ID bundle dell'applicazione che esegue il plug-in Microsoft Enterprise Extension. L'identificatore deve essere sempre impostato su com.microsoft.CompanyPortalMac.ssoextension e l'identificatore del team deve essere visualizzato come (UBF8T346G9) se il profilo è installato in un dispositivo macOS. Se i valori sono diversi, la soluzione MDM non richiama correttamente l'estensione.
    5 Type L'estensione Microsoft Enterprise SSO deve essere sempre impostata su un tipo di estensione di reindirizzamento. Per altre informazioni, vedere Reindirizzamento e tipi di estensione delle credenziali.
    6 URL URL di accesso appartenenti al provider di identità (Microsoft Entra ID). Vedere l'elenco degli URL supportati.

    Tutte le estensioni di reindirizzamento SSO Apple devono avere i componenti payload MDM seguenti nel profilo di configurazione:

    Componente payload MDM Descrizione
    Identificatore dell'estensione Include sia l'identificatore del bundle che l'identificatore del team dell'applicazione nel dispositivo macOS, eseguendo l'estensione. Nota: l'estensione Microsoft Enterprise SSO deve essere sempre impostata su: com.microsoft.CompanyPortalMac.ssoextension (UBF8T346G9) per informare il sistema operativo macOS che il codice client di estensione fa parte dell'applicazione Portale aziendale di Intune.
    Type Deve essere impostato su Reindirizzamento per indicare un tipo di estensione di reindirizzamento.
    URL URL endpoint del provider di identità (Microsoft Entra ID), in cui il sistema operativo instrada le richieste di autenticazione all'estensione.
    Configurazione specifica dell'estensione facoltativa Valori del dizionario che possono fungere da parametri di configurazione. Nel contesto dell'estensione Microsoft Enterprise SSO, questi parametri di configurazione sono denominati flag di funzionalità. Vedere definizioni di flag di funzionalità.

    Nota

    È possibile fare riferimento alle definizioni MDM per il profilo dell'estensione SSO di Apple nell'articolo Impostazioni del payload MDM Extensible Single Sign-On per i dispositivi Apple Microsoft ha implementato l'estensione in base a questo schema. Vedere Plug-in Microsoft Enterprise SSO per i dispositivi Apple

  5. Per verificare che sia installato il profilo corretto per l'estensione Microsoft Enterprise SSO, il campo Estensione deve corrispondere a com.microsoft.CompanyPortalMac.ssoextension (UBF8T346G9).

  6. Prendere nota del campo Installato nel profilo di configurazione perché può essere un indicatore utile per la risoluzione dei problemi, quando vengono apportate modifiche alla relativa configurazione.

Se il profilo di configurazione corretto è stato verificato, passare alla sezione Risoluzione dei problemi del flusso di autenticazione dell'applicazione.

Profilo di configurazione MDM mancante

Se il profilo di configurazione dell'estensione SSO non viene visualizzato nell'elenco Profili dopo aver seguito la sezione precedente, è possibile che la configurazione MDM abbia la destinazione User/Device abilitata, che filtra in modo efficace l'utente o il dispositivo dalla ricezione del profilo di configurazione. Rivolgersi all'amministratore MDM e raccogliere i log della console disponibili nella sezione successiva.

Raccogliere log della console specifici di MDM
  1. Dal dispositivo macOS fare doppio clic sulla cartella Applicazioni e quindi fare doppio clic sulla cartella Utilità.

  2. Fare doppio clic sull'applicazione console.

  3. Fare clic sul pulsante Start per abilitare la registrazione della traccia della console.

    Screenshot che mostra l'app Console e il pulsante Start su cui si fa clic.

  4. Chiedere all'amministratore MDM di provare a ridistribuire il profilo di configurazione in questo dispositivo o utente macOS e forzare un ciclo di sincronizzazione.

  5. Digitare subsystem:com.apple.ManagedClient nella barra di ricerca e premere Restituire.

    Screenshot che mostra l'app Console con il filtro del sottosistema.

  6. Dove il cursore lampeggia nella barra di ricerca digitare message:Extensible.

    Screenshot che mostra la console filtrata ulteriormente nel campo del messaggio.

  7. Verranno ora visualizzati i log della console MDM filtrati in base alle attività del profilo di configurazione Extensible SSO. Lo screenshot seguente mostra una voce di log Profilo di configurazione installato, che mostra che il profilo di configurazione è stato installato.

Risoluzione dei problemi relativi al flusso di autenticazione dell'applicazione

Le indicazioni contenute in questa sezione presuppongono che il dispositivo macOS abbia un profilo di configurazione distribuito correttamente. Per i passaggi, vedere Convalidare il profilo di configurazione SSO nel dispositivo macOS.

Dopo aver distribuito l'estensione Microsoft Enterprise SSO per i dispositivi Apple, supporta due tipi di flussi di autenticazione dell'applicazione per ogni tipo di applicazione. Quando si esegue la risoluzione dei problemi, è importante comprendere il tipo di applicazione in uso.

Tipi di applicazione

Tipo di applicazione Autenticazione interattiva Autenticazione invisibile all'utente Descrizione Esempi
App MSAL nativa X X MSAL (Microsoft Authentication Library) è un framework per sviluppatori di applicazioni personalizzato per la creazione di applicazioni con Microsoft Identity Platform (Microsoft Entra ID).
Le app basate su MSAL versione 1.1 o successiva sono in grado di integrarsi con l'estensione Microsoft Enterprise SSO.
Se l'applicazione è compatibile con l'estensione SSO (broker) che usa l'estensione senza ulteriori configurazioni per altre informazioni, vedere la documentazione di esempio per sviluppatori MSAL.
Microsoft To-Do
SSO non MSAL Nativo/Browser X Le applicazioni che usano tecnologie di rete Apple o webview possono essere configurate per ottenere credenziali condivise dall'estensione SSO
I flag di funzionalità devono essere configurati per garantire che l'ID bundle per ogni app sia autorizzato a ottenere le credenziali condivise (PRT).
Microsoft Word
Safari
Microsoft Edge
Visual Studio

Importante

Non tutte le applicazioni native Microsoft usano il framework MSAL. Al momento della pubblicazione di questo articolo, la maggior parte delle applicazioni macOS di Microsoft Office si basa ancora sul framework di libreria ADAL precedente e quindi si basa sul flusso SSO del browser.

Come trovare l'ID bundle per un'applicazione in macOS

  1. Dal dispositivo macOS fare doppio clic sulla cartella Applicazioni e quindi fare doppio clic sulla cartella Utilità.

  2. Fare doppio clic sull'applicazione Terminale.

  3. Quando il terminale apre il tipo osascript -e 'id of app "<appname>"' al prompt. Di seguito sono riportati alcuni esempi:

    % osascript -e 'id of app "Safari"'
    com.apple.Safari
    
    % osascript -e 'id of app "OneDrive"'
    com.microsoft.OneDrive
    
    % osascript -e 'id of app "Microsoft Edge"'
    com.microsoft.edgemac
    
  4. Ora che sono stati raccolti gli ID bundle, seguire le linee guida per configurare i flag di funzionalità per assicurarsi che le app SSO non MSAL Native/Browser possano usare l'estensione SSO. Nota: tutti gli ID bundle fanno distinzione tra maiuscole e minuscole per la configurazione del flag di funzionalità.

Attenzione

Le applicazioni che non usano tecnologie di rete Apple (ad esempio WKWebview e NSURLSession) non potranno usare le credenziali condivise dall'estensione SSO. Sia Google Chrome che Mozilla Firefox rientrano in questa categoria. Anche se sono configurati nel profilo di configurazione MDM, il risultato sarà un normale prompt di autenticazione nel browser.

Bootstrap

Per impostazione predefinita, solo le app MSAL richiamano l'estensione SSO e a sua volta l'estensione acquisisce una credenziale condivisa (PRT) da Microsoft Entra ID. Tuttavia, l'applicazione browser Safari o altre applicazioni non MSAL possono essere configurate per acquisire il token di aggiornamento primario. Vedere Consentire agli utenti di accedere dalle applicazioni che non usano MSAL e il browser Safari. Dopo che l'estensione SSO acquisisce una richiesta pull, archivierà le credenziali nell'account di accesso dell'utente Keychain. Verificare quindi che il token di aggiornamento primario sia presente nel keychain dell'utente:

Controllo dell'accesso keychain per PRT

  1. Dal dispositivo macOS fare doppio clic sulla cartella Applicazioni e quindi fare doppio clic sulla cartella Utilità.

  2. Fare doppio clic sull'applicazione Keychain Access.

  3. In Portachiavi predefiniti selezionare elementi locali (o iCloud).

    • Verificare che l'opzione Tutti gli elementi sia selezionata.
    • Nella barra di ricerca, sul lato destro, digitare primaryrefresh (Per filtrare).

    screenshot che mostra come trovare il token di aggiornamento primario nell'app di accesso Keychain.

    Screenshot del callout Componente delle credenziali keychain Descrizione
    1 Tutti gli elementi Mostra tutti i tipi di credenziali nell'accesso Keychain
    2 Barra di ricerca keychain Consente di filtrare in base alle credenziali. Per filtrare il tipo PRT di Microsoft Entra primaryrefresh
    3 Tipologia Fa riferimento al tipo di credenziale. Le credenziali PRT di Microsoft Entra sono un tipo di credenziale della password dell'applicazione
    4 Conto Visualizza l'account utente di Microsoft Entra, proprietario del token di aggiornamento primario nel formato: UserObjectId.TenantId-login.windows.net
    5 Where Visualizza il nome completo delle credenziali. Le credenziali di Microsoft Entra PRT iniziano con il formato seguente: primaryrefreshtoken-29d9ed98-a469-4536-ade2-f981bc1d605 Il 29d9ed98-a469-4536-ade2-f981bc1d605 è l'ID applicazione per il servizio Microsoft Authentication Broker, responsabile della gestione delle richieste di acquisizione PRT
    6 Ultima modifica Visualizza l'ultimo aggiornamento delle credenziali. Per le credenziali di Microsoft Entra PRT, ogni volta che le credenziali vengono riavviate o aggiornate da un evento di accesso interattivo, aggiorna la data/ora
    7 Keychain Indica il portachiavi in cui risiede la credenziale selezionata. Le credenziali di Microsoft Entra PRT si trovano negli elementi locali o nel Keychain iCloud . Quando iCloud è abilitato nel dispositivo macOS, il keychain elementi locali diventerà il portachiavi iCloud
  4. Se il token di aggiornamento primario non viene trovato in Accesso portachiavi, eseguire le operazioni seguenti in base al tipo di applicazione:

    • MSAL nativo: verificare che lo sviluppatore dell'applicazione, se l'app è stata compilata con MSAL versione 1.1 o successiva, abbia abilitato l'applicazione a essere a conoscenza del broker. Vedere anche procedura di risoluzione dei problemi di distribuzione per escludere eventuali problemi di distribuzione.
    • Non MSAL (Safari): verificare che il flag browser_sso_interaction_enabled di funzionalità sia impostato su 1 e non 0 nel profilo di configurazione MDM

Flusso di autenticazione dopo il bootstrap di una richiesta pull

Ora che la richiesta pull (credenziale condivisa) è stata verificata, prima di eseguire una risoluzione dei problemi più approfondita, è utile comprendere i passaggi generali per ogni tipo di applicazione e come interagisce con il plug-in Microsoft Enterprise SSO Extension (app broker). Le animazioni e le descrizioni seguenti dovrebbero aiutare gli amministratori macOS a comprendere lo scenario prima di esaminare i dati di registrazione.

Applicazione MSAL nativa

Scenario: un'applicazione sviluppata per l'uso di MSAL (esempio: client Microsoft To Do) in esecuzione in un dispositivo Apple deve consentire all'utente di accedere al proprio account Microsoft Entra per accedere a un servizio protetto Microsoft Entra (esempio: Microsoft To Do Service).

Animazione GIF che mostra il flusso di autenticazione di un'app MSAL con una richiesta pull.

  1. Le applicazioni sviluppate da MSAL richiamano direttamente l'estensione SSO e inviano la richiesta pull all'endpoint del token Microsoft Entra insieme alla richiesta dell'applicazione di un token per una risorsa protetta di Microsoft Entra
  2. Microsoft Entra ID convalida le credenziali PRT e restituisce un token specifico dell'applicazione al broker di estensione SSO
  3. Il gestore di estensioni SSO passa quindi il token all'applicazione client MSAL, che quindi lo invia alla risorsa protetta di Microsoft Entra
  4. L'utente è ora connesso all'app e il processo di autenticazione è stato completato
Non-MSAL/Browser SSO

Scenario: un utente in un dispositivo Apple apre il Web browser Safari (o qualsiasi app nativa non MSAL che supporta Apple Networking Stack) per accedere a una risorsa protetta di Microsoft Entra (esempio: https://office.com).

Animazione che mostra il flusso di autenticazione di alto livello di un'app non MSAL usando l'estensione SSO.

  1. Usando un'applicazione non MSAL (ad esempio: Safari), l'utente tenta di accedere a un'applicazione integrata Microsoft Entra (esempio: office.com) e viene reindirizzato per ottenere un token da Microsoft Entra ID
  2. Se l'applicazione non MSAL è consentita nella configurazione del payload MDM, lo stack di rete Apple intercetta la richiesta di autenticazione e reindirizza la richiesta al broker dell'estensione SSO
  3. Dopo che l'estensione SSO riceve la richiesta intercettata, il token PRT viene inviato all'endpoint del token Microsoft Entra
  4. Microsoft Entra ID convalida la richiesta pull e restituisce un token specifico dell'applicazione all'estensione SSO
  5. Il token specifico dell'applicazione viene assegnato all'applicazione client non MSAL e l'applicazione client invia il token per accedere al servizio protetto Microsoft Entra
  6. L'utente ha completato l'accesso e il processo di autenticazione è stato completato

Recupero dei log dell'estensione SSO

Uno degli strumenti più utili per risolvere vari problemi con l'estensione SSO sono i log client dal dispositivo Apple.

Salvare i log dell'estensione SSO dall'app Portale aziendale

  1. Dal dispositivo macOS fare doppio clic sulla cartella Applicazioni.

  2. Fare doppio clic sull'applicazione Portale aziendale.

  3. Quando il portale aziendale viene caricato, passare alla barra dei menu in alto: Guida->Salva report di diagnostica. Non è necessario accedere all'app.

    Screenshot che mostra come spostarsi nel menu superiore della Guida per salvare il report di diagnostica.

  4. Salvare l'archivio log del portale aziendale in un luogo preferito, ad esempio Desktop.

  5. Aprire l'archivio CompanyPortal.zip e aprire il file SSOExtension.log con qualsiasi editor di testo.

Suggerimento

Un modo pratico per visualizzare i log consiste nell'usare Visual Studio Code e installare l'estensioneVisualizzatore Log.

Registrazione dei log dell'estensione SSO su macOS con terminale

Durante la risoluzione dei problemi può essere utile riprodurre un problema durante la coda dei log SSOExtension in tempo reale:

  1. Dal dispositivo macOS fare doppio clic sulla cartella Applicazioni e quindi fare doppio clic sulla cartella Utilità.

  2. Fare doppio clic sull'applicazione Terminale.

  3. Quando si apre il terminale, digitare:

    tail -F ~/Library/Containers/com.microsoft.CompanyPortalMac.ssoextension/Data/Library/Caches/Logs/Microsoft/SSOExtension/*
    

    Nota

    L'elemento finale /* indica che la coda di più log dovrebbe esistere

    % tail -F ~/Library/Containers/com.microsoft.CompanyPortalMac.ssoextension/Data/Library/Caches/Logs/Microsoft/SSOExtension/*
    ==> /Users/<username>/Library/Containers/com.microsoft.CompanyPortalMac.ssoextension/Data/Library/Caches/Logs/Microsoft/SSOExtension/SSOExtension 2022-12-25--13-11-52-855.log <==
    2022-12-29 14:49:59:281 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Handling SSO request, requested operation: 
    2022-12-29 14:49:59:281 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Ignoring this SSO request...
    2022-12-29 14:49:59:282 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Finished SSO request.
    2022-12-29 14:49:59:599 | I | Beginning authorization request
    2022-12-29 14:49:59:599 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Checking for feature flag browser_sso_interaction_enabled, value in config 1, value type __NSCFNumber
    2022-12-29 14:49:59:599 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Feature flag browser_sso_interaction_enabled is enabled
    2022-12-29 14:49:59:599 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Checking for feature flag browser_sso_disable_mfa, value in config (null), value type (null)
    2022-12-29 14:49:59:599 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Checking for feature flag disable_browser_sso_intercept_all, value in config (null), value type (null)
    2022-12-29 14:49:59:600 | I | Request does not need UI
    2022-12-29 14:49:59:600 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Checking for feature flag admin_debug_mode_enabled, value in config (null), value type (null)
    
  4. Quando si riproduce il problema, mantenere aperta la finestra del terminale per osservare l'output dei log SSOExtension della parte finale.

Esportazione dei log dell'estensione SSO in iOS

Non è possibile visualizzare i log dell'estensione SSO iOS in tempo reale, perché si trova in macOS. I log dell'estensione SSO di iOS possono essere esportati dall'app Microsoft Authenticator e quindi esaminati da un altro dispositivo:

  1. Aprire l'app Microsoft Authenticator:

    Screenshot che mostra l'icona dell'app Microsoft Authenticator in iOS.

  2. Premere il pulsante di menu in alto a sinistra:

    Screenshot che mostra il percorso del pulsante di menu nell'app Microsoft Authenticator.

  3. Scegliere l'opzione "Invia commenti e suggerimenti":

    Screenshot che mostra il percorso dell'opzione Invia commenti e suggerimenti nell'app Microsoft Authenticator.

  4. Scegliere l'opzione "Problemi":

    Screenshot che mostra la posizione in cui si verificano problemi nell'app Microsoft Authenticator.

  5. Premere l'opzione Visualizza dati di diagnostica:

    Screenshot che mostra il pulsante Visualizza dati di diagnostica nell'app Microsoft Authenticator.

    Suggerimento

    Se si usa il supporto tecnico Microsoft, in questa fase è possibile premere il pulsante Invia per inviare i log al supporto. In questo modo verrà fornito un ID evento imprevisto, che è possibile fornire al contatto del supporto tecnico Microsoft.

  6. Premere il pulsante "Copia tutto" per copiare i log negli Appunti del dispositivo iOS. È quindi possibile salvare i file di log altrove per esaminarli o inviarli tramite posta elettronica o altri metodi di condivisione file:

    Screenshot che mostra l'opzione Copia tutti i log nell'app Microsoft Authenticator.

Informazioni sui log dell'estensione SSO

L'analisi dei log dell'estensione SSO è un ottimo modo per risolvere i problemi del flusso di autenticazione dalle applicazioni che inviano richieste di autenticazione a Microsoft Entra ID. Ogni volta che viene richiamato Gestore estensioni SSO, una serie di risultati delle attività di registrazione e queste attività sono note come richieste di autorizzazione. I log contengono le informazioni utili seguenti per la risoluzione dei problemi:

  • Configurazione del flag di funzionalità
  • Tipi di richiesta di autorizzazione
    • MSAL nativo
    • Non MSAL/Browser SSO
  • Interazione con il keychain macOS per le operazioni di ripetizione/archiviazione delle credenziali
  • ID di correlazione per gli eventi di accesso di Microsoft Entra
    • Acquisizione PRT
    • Registrazione del dispositivo

Attenzione

I log dell'estensione SSO sono estremamente dettagliati, soprattutto quando si esaminano le operazioni delle credenziali keychain. Per questo motivo, è sempre consigliabile comprendere lo scenario prima di esaminare i log durante la risoluzione dei problemi.

Struttura di log

I log dell'estensione SSO vengono suddivisi in colonne. Lo screenshot seguente mostra la suddivisione delle colonne dei log:

Screenshot che mostra la struttura di colonna dei log dell'estensione SSO.

Colonna Nome colonna Descrizione
1 Data/ora locale Data e ora locali visualizzate
2 I-Informazioni
W-Avviso
E-Errore
Visualizza informazioni, avvisi o errori
3 ID thread (TID) Visualizza l'ID thread dell'esecuzione dell'app Broker dell'estensione SSO
4 Numero di versione MSAL Il plug-in Broker dell'estensione Microsoft Enterprise SSO viene compilato come app MSAL. Questa colonna indica la versione di MSAL in cui è in esecuzione l'app broker
5 Versione di macOS Visualizzare la versione del sistema operativo macOS
6 Data e ora UTC Data e ora UTC visualizzate
7 ID di correlazione Le righe nei log che hanno a che fare con le operazioni Microsoft Entra ID o Keychain estendono la colonna Data/ora UTC con un ID di correlazione
8 Messaggio Mostra la messaggistica dettagliata dei log. La maggior parte delle informazioni sulla risoluzione dei problemi è disponibile esaminando questa colonna

Configurazione del flag di funzionalità

Durante la configurazione MDM dell'estensione Microsoft Enterprise SSO, è possibile inviare dati specifici di estensione facoltativi come istruzioni per modificare il comportamento dell'estensione SSO. Queste istruzioni specifiche di configurazione sono note come flag di funzionalità. La configurazione del flag di funzionalità è particolarmente importante per i tipi di richieste di autorizzazione SSO non MSAL/Browser, perché l'ID bundle può determinare se l'estensione viene richiamata o meno. Vedere la documentazione relativa al flag di funzionalità. Ogni richiesta di autorizzazione inizia con un report di configurazione del flag di funzionalità. Lo screenshot seguente illustra una configurazione del flag di funzionalità di esempio:

Screenshot che mostra una configurazione del flag di funzionalità di esempio dell'estensione Microsoft SSO.

Callout Flag di funzionalità Descrizione
1 browser_sso_interaction_enabled Il browser Non MSAL o Safari può eseguire il bootstrap di una PRT
2 browser_sso_disable_mfa (Ora deprecato) Durante il bootstrap delle credenziali PRT, per impostazione predefinita è necessaria l'autenticazione a più fattori. Si noti che questa configurazione è impostata su Null, il che significa che la configurazione predefinita viene applicata
3 disable_explicit_app_prompt Sostituisce le richieste di autenticazione prompt=login dalle applicazioni per ridurre le richieste di richiesta
4 AppPrefixAllowList Qualsiasi applicazione non MSAL con ID bundle che inizia con com.micorosoft. può essere intercettata e gestita dal broker di estensione SSO

Importante

I flag di funzionalità impostati su Null indicano che la configurazione predefinita è attiva. Per altri dettagli, vedere la documentazione relativa al flag di funzionalità

Flusso di accesso dell'applicazione nativa MSAL

La sezione seguente illustra come esaminare i log dell'estensione SSO per il flusso di autenticazione dell'applicazione MSAL nativa. Per questo esempio viene usata l'applicazione di esempio MSAL macOS/iOS come applicazione client e l'applicazione effettua una chiamata all'API Microsoft Graph per visualizzare le informazioni dell'utente di accesso.

MSAL nativo: procedura dettagliata per il flusso interattivo

Per un accesso interattivo riuscito, è necessario eseguire le azioni seguenti:

  1. L'utente accede all'app di esempio MSAL macOS.
  2. Microsoft SSO Extension Broker viene richiamato e gestisce la richiesta.
  3. Microsoft SSO Extension Broker viene sottoposto al processo di bootstrap per acquisire una richiesta pull per l'utente connesso.
  4. Archiviare il token di aggiornamento primario in Keychain.
  5. Verificare la presenza di un oggetto Registrazione dispositivi in Microsoft Entra ID (WPJ).
  6. Restituire un token di accesso all'applicazione client per accedere a Microsoft Graph con ambito User.Read.

Importante

I frammenti di log di esempio che seguono sono stati annotati con intestazioni di commento // che non sono visibili nei log. Essi vengono utilizzati per illustrare un'azione specifica intrapresa. Sono stati documentati i frammenti di log in questo modo per facilitare le operazioni di copia e incolla. Inoltre, gli esempi di log sono stati tagliati in modo da mostrare solo le righe di significatività per la risoluzione dei problemi.

L'utente fa clic sul pulsante chiama l'API Microsoft Graph per richiamare il processo di accesso.

Screenshot che mostra l'app di esempio MSAL per macOS avviata con il pulsante Chiama l'API Microsoft Graph.

//////////////////////////
//get_accounts_operation//
//////////////////////////
Handling SSO request, requested operation: get_accounts_operation
(Default accessor) Get accounts.
(MSIDAccountCredentialCache) retrieving cached credentials using credential query
(Default accessor) Looking for token with aliases (null), tenant (null), clientId 00001111-aaaa-2222-bbbb-3333cccc4444, scopes (null)
(Default accessor) No accounts found in default accessor.
(Default accessor) No accounts found in other accessors.
Completed get accounts SSO request with a personal device mode.
Request complete
Request needs UI
ADB 3.1.40 -[ADBrokerAccountManager allBrokerAccounts:]
ADB 3.1.40 -[ADBrokerAccountManager allMSIDBrokerAccounts:]
(Default accessor) Get accounts.
No existing accounts found, showing webview

/////////
//login//
/////////
Handling SSO request, requested operation: login
Handling interactive SSO request...
Starting SSO broker request with payload: {
    authority = "https://login.microsoftonline.com/common";
    "client_app_name" = MSALMacOS;
    "client_app_version" = "1.0";
    "client_id" = "00001111-aaaa-2222-bbbb-3333cccc4444";
    "client_version" = "1.1.7";
    "correlation_id" = "aaaa0000-bb11-2222-33cc-444444dddddd";
    "extra_oidc_scopes" = "openid profile offline_access";
    "instance_aware" = 0;
    "msg_protocol_ver" = 4;
    prompt = "select_account";
    "provider_type" = "provider_aad_v2";
    "redirect_uri" = "msauth.com.microsoft.idnaace.MSALMacOS://auth";
    scope = "user.read";
}

////////////////////////////////////////////////////////////
//Request PRT from Microsoft Authentication Broker Service//
////////////////////////////////////////////////////////////
Using request handler <ADInteractiveDevicelessPRTBrokerRequestHandler: 0x117ea50b0>
(Default accessor) Looking for token with aliases (null), tenant (null), clientId 11112222-bbbb-3333-cccc-4444dddd5555, scopes (null)
Attempting to get Deviceless Primary Refresh Token interactively.
Caching AAD Environements
networkHost: login.microsoftonline.com, cacheHost: login.windows.net, aliases: login.microsoftonline.com, login.windows.net, login.microsoft.com, sts.windows.net
networkHost: login.partner.microsoftonline.cn, cacheHost: login.partner.microsoftonline.cn, aliases: login.partner.microsoftonline.cn, login.chinacloudapi.cn
networkHost: login.microsoftonline.de, cacheHost: login.microsoftonline.de, aliases: login.microsoftonline.de
networkHost: login.microsoftonline.us, cacheHost: login.microsoftonline.us, aliases: login.microsoftonline.us, login.usgovcloudapi.net
networkHost: login-us.microsoftonline.com, cacheHost: login-us.microsoftonline.com, aliases: login-us.microsoftonline.com
Resolved authority, validated: YES, error: 0
[MSAL] Resolving authority: Masked(not-null), upn: Masked(null)
[MSAL] Resolved authority, validated: YES, error: 0
[MSAL] Start webview authorization session with webview controller class MSIDAADOAuthEmbeddedWebviewController: 
[MSAL] Presenting web view controller. 

L'esempio di registrazione può essere suddiviso in tre segmenti:

Segmento Descrizione
get_accounts_operation Verifica se nella cache sono presenti account esistenti
- ClientID: ID applicazione registrato in Microsoft Entra ID per questa app MSAL
ADB 3.1.40 indica la versione del plug-in Microsoft Enterprise SSO Extension Broker
login Broker gestisce la richiesta per Microsoft Entra ID:
- Gestione della richiesta SSO interattiva...: indica una richiesta interattiva
- correlation_id: utile per fare riferimento incrociato con i log di accesso lato server Microsoft Entra
- ambito: ambito dell'autorizzazione API User.Read richiesto da Microsoft Graph
- client_version: versione di MSAL in cui è in esecuzione l'applicazione
- redirect_uri: le app MSAL usano il formato msauth.com.<Bundle ID>://auth
Richiesta PRT Il processo di bootstrap per acquisire un token di aggiornamento primario in modo interattivo è stato avviato ed esegue il rendering della sessione SSO di Webview

Servizio Microsoft Authentication Broker
- clientId: 29d9ed98-a469-4536-ade2-f981bc1d605e
- Tutte le richieste PRT vengono effettuate al servizio Microsoft Authentication Broker

Viene visualizzato il controller Webview SSO e all'utente viene richiesto di immettere l'account di accesso di Microsoft Entra (UPN/email)

Screenshot che mostra il prompt dell'accesso Single Sign-On di Apple con informazioni sull'utente immesse e un callout di altre informazioni.

Nota

Facendo clic su i nell'angolo inferiore sinistro del controller webview vengono visualizzate altre informazioni sull'estensione SSO e sulle specifiche sull'app che l'ha richiamata.

Screenshot che mostra altre informazioni sull'estensione SSO dalla schermata di prompt SSO. Dopo che l'utente ha immesso correttamente le credenziali di Microsoft Entra, le voci di log seguenti vengono scritte nei log dell'estensione SSO

SSOExtensionLogs
///////////////
//Acquire PRT//
///////////////
[MSAL] -completeWebAuthWithURL: msauth://microsoft.aad.brokerplugin/?code=(not-null)&client_info=(not-null)&state=(not-null)&session_state=(not-null)
[MSAL] Dismissed web view controller.
[MSAL] Result from authorization session callbackURL host: microsoft.aad.brokerplugin , has error: NO
[MSAL] (Default accessor) Looking for token with aliases (
    "login.windows.net",
    "login.microsoftonline.com",
    "login.windows.net",
    "login.microsoft.com",
    "sts.windows.net"
), tenant (null), clientId 29d9ed98-a469-4536-ade2-f981bc1d605e, scopes (null)
Saving PRT response in cache since no other PRT was found
[MSAL] Saving keychain item, item info Masked(not-null)
[MSAL] Keychain find status: 0
Acquired PRT.

///////////////////////////////////////////////////////////////////////
//Discover if there is an Azure AD Device Registration (WPJ) present //
//and if so re-acquire a PRT and associate with Device ID            //
///////////////////////////////////////////////////////////////////////
WPJ Discovery: do discovery in environment 0
Attempt WPJ discovery using tenantId.
WPJ discovery succeeded.
Using cloud authority from WPJ discovery: https://login.microsoftonline.com/common
ADBrokerDiscoveryAction completed. Continuing Broker Flow.
PRT needs upgrade as device registration state has changed. Device is joined 1, prt is joined 0
Beginning ADBrokerAcquirePRTInteractivelyAction
Attempting to get Primary Refresh Token interactively.
Acquiring broker tokens for broker client id.
Resolving authority: Masked(not-null), upn: auth.placeholder-61945244__domainname.com
Resolved authority, validated: YES, error: 0
Enrollment id read from intune cache : (null).
Handle silent PRT response Masked(not-null), error Masked(null)
Acquired broker tokens.
Acquiring PRT.
Acquiring PRT using broker refresh token.
Requesting PRT from authority https://login.microsoftonline.com/<TenantID>/oauth2/v2.0/token
[MSAL] (Default accessor) Looking for token with aliases (
    "login.windows.net",
    "login.microsoftonline.com",
    "login.windows.net",
    "login.microsoft.com",
    "sts.windows.net"
), tenant (null), clientId (null), scopes (null)
[MSAL] Acquired PRT successfully!
Acquired PRT.
ADBrokerAcquirePRTInteractivelyAction completed. Continuing Broker Flow.
Beginning ADBrokerAcquireTokenWithPRTAction
Resolving authority: Masked(not-null), upn: auth.placeholder-61945244__domainname.com
Resolved authority, validated: YES, error: 0
Handle silent PRT response Masked(not-null), error Masked(null)

//////////////////////////////////////////////////////////////////////////
//Provide Access Token received from Azure AD back to Client Application// 
//and complete authorization request                                    //
//////////////////////////////////////////////////////////////////////////
[MSAL] (Default cache) Removing credentials with type AccessToken, environment login.windows.net, realm TenantID, clientID 00001111-aaaa-2222-bbbb-3333cccc4444, unique user ID dbb22b2f, target User.Read profile openid email
ADBrokerAcquireTokenWithPRTAction succeeded.
Composing broker response.
Sending broker response.
Returning to app (msauth.com.microsoft.idnaace.MSALMacOS://auth) - protocol version: 3
hash: AA11BB22CC33DD44EE55FF66AA77BB88CC99DD00
payload: Masked(not-null)
Completed interactive SSO request.
Completed interactive SSO request.
Request complete
Completing SSO request...
Finished SSO request.

A questo punto nel flusso di autenticazione/autorizzazione, il token di aggiornamento primario è stato avviato e dovrebbe essere visibile nell'accesso keychain macOS. Vedere Controllo dell'accesso keychain per PRT. L'applicazione di esempio MSAL macOS usa il token di accesso ricevuto da Microsoft SSO Extension Broker per visualizzare le informazioni dell'utente.

Esaminare quindi i log di accesso di Microsoft Entra lato server in base all'ID di correlazione raccolto dai log dell'estensione SSO sul lato client. Per ulteriori informazioni, consultare Log di accesso in Microsoft Entra ID.

Visualizzare i log di accesso di Microsoft Entra in base al filtro ID correlazione
  1. Aprire gli accessi a Microsoft Entra per il tenant in cui è registrata l'applicazione.
  2. Selezionare accessi utente (interattivo).
  3. Selezionare il pulsante di opzione Aggiungi filtri e selezionare il pulsante di opzione Id correlazione.
  4. Copiare e incollare l'ID di correlazione ottenuto dai log dell'estensione SSO e selezionare Applica.

Per il flusso di accesso interattivo MSAL, si prevede di visualizzare un accesso interattivo per la risorsa servizio Microsoft Authentication Broker. Questo evento è il percorso in cui l'utente ha immesso la password per avviare il token di aggiornamento primario.

Screenshot che mostra gli accessi utente interattivi da Microsoft Entra ID che mostra un accesso interattivo al servizio Microsoft Authentication Broker.

Esistono anche eventi di accesso non interattivi, a causa del fatto che il token di aggiornamento primario viene usato per acquisire il token di accesso per la richiesta dell'applicazione client. Seguire il Visualizza i log di accesso di Microsoft Entra in base al filtro ID di correlazione ma nel passaggio 2 selezionare accessi utente (non interattivo).

Screenshot che mostra come l'estensione SSO usa il token di aggiornamento primario per acquisire un token di accesso per Microsoft Graph.

Attributo del log di accesso Descrizione
Applicazione Nome visualizzato della registrazione dell'applicazione nel tenant di Microsoft Entra in cui l'applicazione client esegue l'autenticazione.
Id applicazione Si fa riferimento anche all'ID client della registrazione dell'applicazione nel tenant di Microsoft Entra.
Conto risorse Risorsa API a cui l'applicazione client sta tentando di ottenere l'accesso. In questo esempio la risorsa è l'API Microsoft Graph.
Tipo di token in ingresso Un tipo di token in ingresso del token di aggiornamento primario (PRT) mostra il token di input usato per ottenere un token di accesso per la risorsa.
Agente utente La stringa dell'agente utente in questo esempio mostra che l'estensione Microsoft SSO è l'applicazione che elabora questa richiesta. Un indicatore utile che indica che è in uso l'estensione SSO e che è in corso una richiesta di autenticazione del broker.
Libreria di autenticazione dell'app Microsoft Entra Quando si usa un'applicazione MSAL, i dettagli della libreria e la piattaforma vengono scritti qui.
Informazioni sull'ambito Oauth Informazioni sull'ambito Oauth2 richieste per il token di accesso. (User.Read,profilo,openid,posta elettronica).
Procedura dettagliata per MSAL Native: Flusso invisibile all'utente

Dopo un periodo di tempo, il token di accesso non sarà più valido. Quindi, se l'utente fa clic sul pulsante Chiama l'API Microsoft Graph. L'estensione SSO tenta di aggiornare il token di accesso con il token di accesso già acquisito.

SSOExtensionLogs
/////////////////////////////////////////////////////////////////////////
//refresh operation: Assemble Request based on User information in PRT  /  
/////////////////////////////////////////////////////////////////////////
Beginning authorization request
Request does not need UI
Handling SSO request, requested operation: refresh
Handling silent SSO request...
Looking account up by home account ID dbb22b2f, displayable ID auth.placeholder-61945244__domainname.com
Account identifier used for request: Masked(not-null), auth.placeholder-61945244__domainname.com
Starting SSO broker request with payload: {
    authority = "https://login.microsoftonline.com/<TenantID>";
    "client_app_name" = MSALMacOS;
    "client_app_version" = "1.0";
    "client_id" = "00001111-aaaa-2222-bbbb-3333cccc4444";
    "client_version" = "1.1.7";
    "correlation_id" = "aaaa0000-bb11-2222-33cc-444444dddddd";
    "extra_oidc_scopes" = "openid profile offline_access";
    "home_account_id" = "<UserObjectId>.<TenantID>";
    "instance_aware" = 0;
    "msg_protocol_ver" = 4;
    "provider_type" = "provider_aad_v2";
    "redirect_uri" = "msauth.com.microsoft.idnaace.MSALMacOS://auth";
    scope = "user.read";
    username = "auth.placeholder-61945244__domainname.com";
}
//////////////////////////////////////////
//Acquire Access Token with PRT silently//
//////////////////////////////////////////
Using request handler <ADSSOSilentBrokerRequestHandler: 0x127226a10>
Executing new request
Beginning ADBrokerAcquireTokenSilentAction
Beginning silent flow.
[MSAL] Resolving authority: Masked(not-null), upn: auth.placeholder-61945244__domainname.com
[MSAL] (Default cache) Removing credentials with type AccessToken, environment login.windows.net, realm <TenantID>, clientID 00001111-aaaa-2222-bbbb-3333cccc4444, unique user ID dbb22b2f, target User.Read profile openid email
[MSAL] (MSIDAccountCredentialCache) retrieving cached credentials using credential query
[MSAL] Silent controller with PRT finished with error Masked(null)
ADBrokerAcquireTokenWithPRTAction succeeded.
Composing broker response.
Sending broker response.
Returning to app (msauth.com.microsoft.idnaace.MSALMacOS://auth) - protocol version: 3
hash: AA11BB22CC33DD44EE55FF66AA77BB88CC99DD00
payload: Masked(not-null)
Completed silent SSO request.
Request complete
Completing SSO request...
Finished SSO request.

L'esempio di registrazione può essere suddiviso in due segmenti:

Segmento Descrizione
refresh Broker gestisce la richiesta per Microsoft Entra ID:
- Gestione della richiesta SSO invisibile all'utente...: indica una richiesta invisibile all'utente
- correlation_id: utile per fare riferimento incrociato con i log di accesso lato server Microsoft Entra
- ambito: ambito dell'autorizzazione API User.Read richiesto da Microsoft Graph
- client_version: versione di MSAL in cui è in esecuzione l'applicazione
- redirect_uri: le app MSAL usano il formato msauth.com.<Bundle ID>://auth

L'aggiornamento presenta differenze significative per il payload della richiesta:
- autorità: contiene l'endpoint dell'URL del tenant di Microsoft Entra anziché l'endpoint comune
- home_account_id: mostra l'account utente nel formato <UserObjectId>.<TenantID>
- username: formato UPN con hash auth.placeholder-XXXXXXXX__domainname.com
Aggiornamento PRT e acquisizione del token di accesso Questa operazione riconvalida la richiesta pull e la aggiorna, se necessario, prima di restituire il token di accesso all'applicazione client chiamante.

È anche possibile accettare l'ID di correlazione ottenuto dai log dell'estensione SSO sul lato client e fare riferimento incrociato con i log di accesso di Microsoft Entra sul lato server.

Screenshot che mostra la richiesta di accesso automatico di Microsoft Entra usando il plug-in Enterprise SSO Broker.

L'accesso a Microsoft Entra mostra informazioni identiche alla risorsa Microsoft Graph dell'operazione di accesso nella sezione precedente di accesso interattivo.

Flusso di accesso dell'applicazione SSO non MSAL/Browser

La sezione seguente illustra come esaminare i log dell'estensione SSO per il flusso di autenticazione dell'applicazione non MSAL/Browser. Per questo esempio si usa il browser Apple Safari come applicazione client e l'applicazione effettua una chiamata all'applicazione Web Office.com (OfficeHome).

Procedura dettagliata per il flusso SSO non MSAL/Browser

Per un accesso riuscito, è necessario eseguire le azioni seguenti:

  1. Si supponga che l'utente che ha già subito il processo di bootstrap abbia un token di aggiornamento primario esistente.
  2. In un dispositivo, con Microsoft SSO Extension Broker distribuito, i flag di funzionalità configurati vengono controllati per assicurarsi che l'applicazione possa essere gestita dall'estensione SSO.
  3. Poiché il browser Safari rispetta Apple Networking Stack, l'estensione SSO tenta di intercettare la richiesta di autenticazione di Microsoft Entra.
  4. Il token pull viene usato per acquisire un token per la risorsa richiesta.
  5. Se il dispositivo è registrato da Microsoft Entra, passa l'ID dispositivo insieme alla richiesta.
  6. L'estensione SSO popola l'intestazione della richiesta browser per accedere alla risorsa.

I log dell'estensione SSO sul lato client seguenti mostrano la richiesta gestita in modo trasparente dal gestore di estensioni SSO per soddisfare la richiesta.

SSOExtensionLogs
Created Browser SSO request for bundle identifier com.apple.Safari, cookie SSO include-list (
), use cookie sso for this app 0, initiating origin https://www.office.com
Init MSIDKeychainTokenCache with keychainGroup: Masked(not-null)
[Browser SSO] Starting Browser SSO request for authority https://login.microsoftonline.com/common
[MSAL] (Default accessor) Found 1 tokens
[Browser SSO] Checking PRTs for deviceId 73796663
[MSAL] [Browser SSO] Executing without UI for authority https://login.microsoftonline.com/common, number of PRTs 1, device registered 1
[MSAL] [Browser SSO] Processing request with PRTs and correlation ID in headers (null), query aaaa0000-bb11-2222-33cc-444444dddddd
[MSAL] Resolving authority: Masked(not-null), upn: Masked(null)
[MSAL] No cached preferred_network for authority
[MSAL] Caching AAD Environements
[MSAL] networkHost: login.microsoftonline.com, cacheHost: login.windows.net, aliases: login.microsoftonline.com, login.windows.net, login.microsoft.com, sts.windows.net
[MSAL] networkHost: login.partner.microsoftonline.cn, cacheHost: login.partner.microsoftonline.cn, aliases: login.partner.microsoftonline.cn, login.chinacloudapi.cn
[MSAL] networkHost: login.microsoftonline.de, cacheHost: login.microsoftonline.de, aliases: login.microsoftonline.de
[MSAL] networkHost: login.microsoftonline.us, cacheHost: login.microsoftonline.us, aliases: login.microsoftonline.us, login.usgovcloudapi.net
[MSAL] networkHost: login-us.microsoftonline.com, cacheHost: login-us.microsoftonline.com, aliases: login-us.microsoftonline.com
[MSAL] Resolved authority, validated: YES, error: 0
[MSAL] Found registration registered in login.microsoftonline.com, isSameAsRequestEnvironment: Yes
[MSAL] Passing device header in browser SSO for device id 43cfaf69-0f94-4d2e-a815-c103226c4c04
[MSAL] Adding SSO-cookie header with PRT Masked(not-null)
SSO extension cleared cookies before handling request 1
[Browser SSO] SSO response is successful 0
[MSAL] Keychain find status: 0
[MSAL] (Default accessor) Found 1 tokens
Request does not need UI
[MSAL] [Browser SSO] Checking PRTs for deviceId 73796663
Request complete
Componente del log dell'estensione SSO Descrizione
Richiesta di accesso Single Sign-On di Browser creata Tutte le richieste SSO non MSAL/Browser iniziano con questa riga:
- identificatore bundle: ID bundle: com.apple.Safari
- avvio dell'origine: URL Web a cui il browser accede prima di raggiungere uno degli URL di accesso per Microsoft Entra ID (https://office.com)
Avvio della richiesta SSO di Browser per l'autorità Risolve il numero di richieste pull e se il dispositivo è registrato:
https://login.microsoftonline.com/common, numero di PRT 1, dispositivo registrato 1
ID di correlazione [Browser SSO] Elaborazione della richiesta con richieste pull e ID di correlazione nelle intestazioni (null), query <CorrelationID>. Questo ID è importante per fare riferimento incrociato con i log di accesso lato server Microsoft Entra
registrazione del dispositivo Facoltativamente, se il dispositivo è registrato da Microsoft Entra, l'estensione SSO può passare l'intestazione del dispositivo nelle richieste SSO del browser:
- È stata trovata la registrazione registrata in
- login.microsoftonline.com, isSameAsRequestEnvironment: Sì

Passaggio dell'intestazione del dispositivo nell'accesso SSO del browser per l'ID dispositivo 43cfaf69-0f94-4d2e-a815-c103226c4c04

Usare quindi l'ID di correlazione ottenuto dai log dell'estensione SSO del browser per fare riferimento incrociato ai log di accesso di Microsoft Entra.

Screenshot che mostra il riferimento incrociato nei log di accesso di Microsoft Entra per l'estensione SSO del browser.

Attributo del log di accesso Descrizione
Applicazione Nome visualizzato della registrazione dell'applicazione nel tenant di Microsoft Entra in cui l'applicazione client esegue l'autenticazione. In questo esempio il nome visualizzato è OfficeHome.
Id applicazione Si fa riferimento anche all'ID client della registrazione dell'applicazione nel tenant di Microsoft Entra.
Conto risorse Risorsa API a cui l'applicazione client sta tentando di ottenere l'accesso. In questo esempio la risorsa è l'applicazione Web OfficeHome.
Tipo di token in ingresso Un tipo di token in ingresso del token di aggiornamento primario (PRT) mostra il token di input usato per ottenere un token di accesso per la risorsa.
Rilevato metodo di autenticazione Nella scheda Dettagli autenticazione il valore di plug-in Microsoft Entra SSO indica che l'estensione SSO viene usata per facilitare la richiesta SSO del browser
Versione dell'estensione Microsoft Entra SSO Nella scheda Dettagli aggiuntivi questo valore mostra la versione dell'app Microsoft Enterprise SSO Extension Broker.
ID dispositivo Se il dispositivo è registrato, l'estensione SSO può passare l'ID dispositivo per gestire le richieste di autenticazione del dispositivo.
Sistema operativo Mostra il tipo di sistema operativo.
Conforme L'estensione SSO può facilitare i criteri di conformità passando l'intestazione del dispositivo. I requisiti sono:
- Registrazione del dispositivo Microsoft Entra
- Gestione MDM
- Conformità partner di Intune o Intune
Gestito Indica che il dispositivo è in fase di gestione.
Tipo di aggiunta macOS e iOS, se registrati, possono essere di tipo solo: Microsoft Entra registrato.

Suggerimento

Se si usa Jamf Connect, è consigliabile seguire le indicazioni più recenti di Jamf sull'integrazione di Jamf Connect con Microsoft Entra ID. Il modello di integrazione consigliato garantisce che Jamf Connect funzioni correttamente con i criteri di accesso condizionale e Microsoft Entra ID Protection.

Passaggi successivi