Dela via


Felsöka plugin-programmet för Microsoft Enterprise SSO-tillägg på Apple-enheter

Den här artikeln innehåller felsökningsvägledning som används av administratörer för att lösa problem med att distribuera och använda plugin-programmet Enterprise SSO. Apple SSO-tillägget kan distribueras till iOS/iPadOS och macOS.

Organisationer kan välja att distribuera enkel inloggning till sina företagsenheter för att ge slutanvändarna en bättre upplevelse. På Apple-plattformar innebär den här processen att implementera Jedinstveno prijavljivanje (SSO) via primära uppdateringstoken. Enkel inloggning gör att slutanvändarna slipper alltför stora autentiseringsprompter.

Microsoft har implementerat ett plugin-program som bygger på Apples SSO-ramverk, som tillhandahåller asynkron autentisering för program som är integrerade med Microsoft Entra-ID. Mer information finns i artikeln Microsoft Enterprise SSO-plugin-program för Apple-enheter.

Tilläggstyper

Apple stöder två typer av SSO-tillägg som ingår i dess ramverk: Omdirigering och autentiseringsuppgifter. Plugin-programmet Microsoft Enterprise SSO har implementerats som en omdirigeringstyp och passar bäst för koordinatorautentisering till Microsoft Entra-ID. I följande tabell jämförs de två typerna av tillägg.

Tilläggstyp Passar bäst för Hur det fungerar Viktiga skillnader
Omdirigera Moderna autentiseringsmetoder som OpenID Connect, OAUTH2 och SAML (Microsoft Entra ID) Operativsystemet fångar upp autentiseringsbegäran från programmet till url:erna för identitetsprovidern som definierats i mdm-konfigurationsprofilen för tillägget. Omdirigeringstillägg tar emot: URL:er, rubriker och brödtext. Begär autentiseringsuppgifter innan du begär data. Använder URL:er i MDM-konfigurationsprofilen.
Merit Autentiseringstyper för utmaning och svar som Kerberos (lokalni Active Directory Domain Services) Begäran skickas från programmet till autentiseringsservern (AD-domänkontrollant). Tillägg för autentiseringsuppgifter konfigureras med HOSTS i MDM-konfigurationsprofilen. Om autentiseringsservern returnerar en utmaning som matchar en värd som anges i profilen dirigerar operativsystemet utmaningen till tillägget. Tillägget kan välja att hantera eller avvisa utmaningen. Om det hanteras returnerar tillägget auktoriseringshuvudena för att slutföra begäran, och autentiseringsservern returnerar ett svar till anroparen. Begär data och utmanas sedan för autentisering. Använd HOST i MDM-konfigurationsprofilen.

Microsoft har implementeringar för asynkron autentisering för följande klientoperativsystem:

OS Autentiseringskoordinator
Windows Web Account Manager (WAM)
iOS/iPadOS Microsoft Authenticator
Android Microsoft Authenticator eller Microsoft Intune-företagsportalen
macOS Microsoft Intune-företagsportalen (via SSO-tillägg)

Alla Microsoft Broker-program använder en nyckelartefakt som kallas för en primär uppdateringstoken (PRT), som är en JSON-webbtoken (JWT) som används för att hämta åtkomsttoken för program och webbresurser som skyddas med Microsoft Entra-ID. När det distribueras via en MDM får Enterprise SSO-tillägget för macOS eller iOS en PRT som liknar de PRT som används på Windows-enheter av Web Account Manager (WAM). Mer information finns i artikeln Vad är en primär uppdateringstoken.

Felsökningsmodell

Följande flödesschema beskriver ett logiskt flöde för felsökning av SSO-tillägget. Resten av den här artikeln går in i detalj på stegen som beskrivs i det här flödesschemat. Felsökningen kan delas upp i två separata fokusområden: Distribution och programautentiseringsflöde.

Steg för att avanmäla dig från plattforms-SSO på macOS

Om du vill välja bort PSSO som aktiverats av misstag bör administratörer ta bort SSO-tilläggsprofilen med PSSO aktiverat från enheterna och distribuera en ny SSO-tilläggsprofil med PSSO-flaggor inaktiverade/borttagna.

  1. Ta bort målet för SSO-profilen med PSSO aktiverat
  2. Initiera enhetssynkronisering för att få SSO-profilen med PSSO aktiverad borttagen från enheten
  3. Rikta in dig på enheten med en ny SSO-profil med PSSO inaktiverat
  4. Initiera enhetssynkronisering för att få den nya profilen installerad på enheten

Viktigt!

Obs! Uppdatering av den befintliga SSO-profilen på enheten hjälper inte att inaktivera PSSO när PSSO-registreringen har slutförts. Endast en fullständig borttagning av SSO-profilen från enheten tar bort PSSO-tillståndet från enheten.

Kontext:

Användarna börjar se PSSO-registreringsmeddelanden på macOS 13+-enheter i två scenarier:

  1. Om enheten redan har Intune-företagsportalversionen som stöder PSSO och administratören distribuerar en ny SSO-tilläggsprincip med PSSO aktiverat
  2. Om användaren redan är mål för en SSO-tilläggsprincip med PSSO aktiverat och senare installeras en Version av Intune-företagsportalen som stöder PSSO på enheten.

Varning

Administratörer bör INTE rikta in sig på användare med en SSO-tilläggsprincip med PSSO aktiverat om de inte testas och är redo att distribueras, eftersom detta potentiellt kan bryta mot befintliga användare och deras efterlevnadsvillkor.

Viktigt!

Obs! För användare som slutför PSSO-registreringen tas den äldre WPJ-registreringen bort från nyckelringen. Om PSSO-registreringen gjordes av misstag , när administratören tar bort SSO-profilen med PSSO och installerar en ny profil utan PSSO, bör den äldre WPJ-registreringen göras igen för att enhetsefterlevnad ska fungera.

Felsökning av distribution

De flesta problem som kunder stöter på beror antingen på felaktiga MDM-konfigurationer (Mobile Upravljanje uređajima) för SSO-tilläggsprofilen eller en oförmåga för Apple-enheten att ta emot konfigurationsprofilen från MDM. Det här avsnittet beskriver de steg du kan vidta för att säkerställa att MDM-profilen har distribuerats till en Mac och att den har rätt konfiguration.

Distributionskrav

Kontrollera versionen av macOS-operativsystemet

Använd följande steg för att kontrollera operativsystemversionen (OS) på macOS-enheten. Apple SSO-tilläggsprofiler distribueras endast till enheter som kör macOS 10.15 (Catalina) eller senare. Du kan kontrollera macOS-versionen från antingen användargränssnittet eller från terminalen.

Användargränssnitt
  1. Från macOS-enheten väljer du på Apple-ikonen i det övre vänstra hörnet och väljer Om den här Mac-datorn.

  2. Operativsystemversionen visas bredvid macOS.

Terminal
  1. Dubbelklicka på mappen Program från macOS-enheten och dubbelklicka sedan på mappen Verktyg.

  2. Dubbelklicka på terminalprogrammet .

  3. När terminalen öppnas skriver du sw_vers i prompten och letar efter ett resultat som liknar följande:

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

Kontrollera versionen av iOS-operativsystemet

Använd följande steg för att kontrollera operativsystemversionen (OS) på iOS-enheten. Apple SSO-tilläggsprofiler distribueras endast till enheter som kör iOS 13 eller senare. Du kan kontrollera iOS-versionen från appen Inställningar. Öppna appen Inställningar:

Skärmbild som visar appikonen för iOS-inställningar.

Gå till Allmänt och sedan Om. Den här skärmen visar information om enheten, inklusive iOS-versionsnumret:

Skärmbild som visar iOS-versionen i appen Inställningar.

MDM-distribution av konfigurationsprofil för SSO-tillägg

Arbeta med MDM-administratören (eller Upravljanje uređajima team) för att säkerställa att tilläggskonfigurationsprofilen distribueras till Apple-enheterna. Tilläggsprofilen kan distribueras från valfri MDM som stöder macOS- eller iOS-enheter.

Viktigt!

Apple kräver att enheter registreras i en MDM för att SSO-tillägget ska distribueras.

Följande tabell innehåller specifika MDM-installationsvägledning beroende på vilket operativsystem du distribuerar tillägget till:

Viktigt!

Även om alla MDM stöds för att distribuera SSO-tillägget implementerar många organisationer enhetsbaserade principer för villkorsstyrd åtkomst genom att utvärdera MDM-efterlevnadsprinciper . Om en MDM från tredje part används kontrollerar du att MDM-leverantören stöder Intune-partnerefterlevnad om du vill använda enhetsbaserade principer för villkorsstyrd åtkomst. När SSO-tillägget distribueras via Intune eller en MDM-provider som stöder Intune-partnerefterlevnad kan tillägget skicka enhetscertifikatet till Microsoft Entra-ID så att enhetsautentiseringen kan slutföras.

Verifiera nätverkskonfiguration på macOS-enhet

SSO-tilläggsramverket från Apple och Microsoft Enterprise SSO-tillägget som bygger på det kräver att vissa domäner är undantagna från TLS-avlyssning/inspektion (även kallat bryt- och inspektionsproxy). Följande domäner får inte omfattas av TLS-inspektion:

  • app-site-association.cdn-apple.com
  • app-site-association.networking.apple
Kontrollera om SSO-konfigurationen har brutits på grund av TLS-inspektion

Du kan kontrollera om TLS-inspektionen påverkar SSO-konfigurationen genom att köra en sysdiagnose från Terminal-programmet på en påverkad enhet:

sudo sysdiagnose -f ~/Desktop/

Sysdiagnose sparas på skrivbordet som ett .tar.gz arkiv. Extrahera arkivet och öppna filen system_logs.logarchive . Detta öppnas i konsolprogrammet. Sök efter com.apple.appsso och ändra filtret till SUBSYSTEM:

Skärmbild som visar sysdiagnose.

Leta efter händelser som anger att det finns associerade domänfel, särskilt relaterade till Microsoft-domäner, till exempel login.microsoftonline.com. Dessa händelser kan tyda på problem med TLS-inspektion, vilket förhindrar att SSO-tillägget fungerar korrekt. Apple-domäner visas inte i sysdiagnose-loggen, även om de påverkas av en TLS-inspektionskonfiguration som inte stöds.

Verifiera TLS-inspektionskonfiguration

Apple tillhandahåller ett macOS-verktyg för att kontrollera ett antal vanliga konfigurationsproblem som kallas Mac Evaluation Utility. Det här verktyget kan laddas ned från AppleSeed för IT. Om du har åtkomst till AppleSeed för IT laddar du ned Mac Evaluation Utility från området Resurser. När du har installerat programmet kör du en utvärdering. När utvärderingen är klar går du till HTTPS-avlyssning> – Ytterligare innehåll –> och kontrollerar de två objekten nedan:

Skärmbild som visar verktyget Mac-utvärdering.

Om dessa kontroller har en varning eller ett fel kan TLS-inspektion inträffa på enheten. Arbeta med ditt nätverksteam för att undanta *.cdn-apple.com och *.networking.apple från TLS-inspektion.

Utdata detaljerade swcd-loggar

Apple tillhandahåller ett kommandoradsverktyg med namnet swcutil som gör det möjligt att övervaka förloppet för den associerade domänverifieringen. Du kan övervaka eventuella associerade domänfel med hjälp av följande kommando:

sudo swcutil watch --verbose

Leta upp följande post i loggarna och kontrollera om den har markerats som godkänd eller om det finns några fel:


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

Rensa macOS TLS-inspektionscache

Om du har problem med associerade domäner och har tillåtna domäner i TLS-inspektionsverktyget på enheten kan det ta lite tid innan Apples associerade domänverifieringscache ogiltigförklaras. Tyvärr finns det inga deterministiska steg som återutlöser associerad domänomvalidering på alla datorer, men det finns några saker som kan försökas.

Du kan köra följande kommandon för att återställa enhetens cacheminne:

pkill -9 swcd
sudo swcutil reset
pkill -9 AppSSOAgent

Testa konfigurationen av SSO-tillägget igen när cacheminnet har återställts.

Ibland är det här kommandot otillräckligt och återställer inte cacheminnet helt. I dessa fall kan du försöka med följande:

  • Ta bort eller flytta Intune-företagsportalappen till papperskorgen och starta sedan om enheten. När omstarten är klar kan du försöka installera om företagsportalappen.
  • Registrera enheten igen.

Om ingen av ovanstående metoder löser problemet kan det finnas något annat i din miljö som kan blockera den associerade domänverifieringen. Om detta händer kontaktar du Apple-supporten för ytterligare felsökning.

Verifiera SSO-konfigurationsprofil på macOS-enhet

Förutsatt att MDM-administratören har följt stegen i föregående avsnitt MDM-distribution av SSO-tilläggsprofil är nästa steg att kontrollera om profilen har distribuerats till enheten.

Leta upp MDM-konfigurationsprofil för SSO-tillägg
  1. Från macOS-enheten väljer du i Systeminställningar.

  2. När systeminställningarna visas skriver du Profiler och trycker på Retur.

  3. Den här åtgärden bör ta upp panelen Profiler .

    Skärmbild som visar konfigurationsprofiler.

    Skärmbild av pratbubblan beskrivning
    1 Anger att enheten är under MDM-hantering .
    2 Det kan finnas flera profiler att välja mellan. I det här exemplet kallas Microsoft Enterprise SSO-tilläggsprofilen Extensible Jedinstveno prijavljivanje Profile-32f37be3-302e-4549-a3e3-854d300e117a.

    Kommentar

    Beroende på vilken typ av MDM som används kan det finnas flera profiler i listan och deras namngivningsschema är godtyckligt beroende på MDM-konfigurationen. Markera var och en och kontrollera att raden Inställningar anger att det är ett Jedinstveno prijavljivanje-tillägg.

  4. Dubbelklicka på konfigurationsprofilen som matchar inställningsvärdet för Jedinstveno prijavljivanje-tillägget.

    Skärmbild som visar konfigurationsprofilen för SSO-tillägg.

    Skärmbild av pratbubblan Konfigurationsprofilinställning beskrivning
    1 Undertecknad Signeringsauktoriteten för MDM-providern.
    2 Installerad Datum/tidsstämpel som visar när tillägget installerades (eller uppdaterades).
    3 Inställningar: Jedinstveno prijavljivanje-tillägg Anger att den här konfigurationsprofilen är en Apple SSO-tilläggstyp .
    4 Förlängning Identifierare som mappar till paket-ID:t för programmet som kör Plugin-programmet för Microsoft Enterprise-tillägget. Identifieraren måste alltid anges till com.microsoft.CompanyPortalMac.ssoextension och teamidentifieraren måste visas som (UBF8T346G9) om profilen är installerad på en macOS-enhet. Om några värden skiljer sig åt anropar MDM inte tillägget korrekt.
    5 Typ Microsoft Enterprise SSO-tillägget måste alltid vara inställt på en typ av omdirigeringstillägg. Mer information finns i Omdirigering jämfört med tilläggstyper för autentiseringsuppgifter.
    6 URL:er Inloggnings-URL:er som tillhör identitetsprovidern (Microsoft Entra-ID). Se en lista över URL:er som stöds.

    Alla Omdirigeringstillägg för Apple SSO måste ha följande MDM Payload-komponenter i konfigurationsprofilen:

    MDM-nyttolastkomponent beskrivning
    Tilläggsidentifierare Innehåller både paketidentifieraren och teamidentifieraren för programmet på macOS-enheten och kör tillägget. Obs! Microsoft Enterprise SSO-tillägget bör alltid vara inställt på: com.microsoft.CompanyPortalMac.ssoextension (UBF8T346G9) för att informera macOS-operativsystemet om att tilläggsklientkoden är en del av Intune-företagsportalprogrammet.
    Typ Måste anges till Omdirigering för att ange en typ av omdirigeringstillägg .
    URL:er Slutpunkts-URL:er för identitetsprovidern (Microsoft Entra-ID), där operativsystemet dirigerar autentiseringsbegäranden till tillägget.
    Valfri tilläggsspecifik konfiguration Ordlistevärden som kan fungera som konfigurationsparametrar. I samband med Microsoft Enterprise SSO-tillägget kallas dessa konfigurationsparametrar för funktionsflaggor. Se definitioner för funktionsflagga.

    Kommentar

    MDM-definitionerna för Apples SSO-tilläggsprofil kan refereras i artikeln Utökningsbara MDM-nyttolastinställningar för enkel inloggning för Apple-enheter som Microsoft har implementerat vårt tillägg baserat på det här schemat. Se Microsoft Enterprise SSO-plugin-program för Apple-enheter

  5. För att verifiera att rätt profil för Microsoft Enterprise SSO-tillägget är installerad ska fältet Tillägg matcha: com.microsoft.CompanyPortalMac.ssoextension (UBF8T346G9).

  6. Anteckna fältet Installerat i konfigurationsprofilen eftersom det kan vara en användbar felsökningsindikator när ändringar görs i konfigurationen.

Om rätt konfigurationsprofil har verifierats fortsätter du till avsnittet Felsöka programautentiseringsflöde.

MDM-konfigurationsprofilen saknas

Om konfigurationsprofilen för SSO-tillägget inte visas i listan Profiler efter att ha följt föregående avsnitt kan det bero på att MDM-konfigurationen har mål för användare/enhet aktiverat, vilket effektivt filtrerar bort användaren eller enheten från att ta emot konfigurationsprofilen. Kontakta MDM-administratören och samla in konsolloggarna som finns i nästa avsnitt.

Samla in MDM-specifika konsolloggar
  1. Dubbelklicka på mappen Program från macOS-enheten och dubbelklicka sedan på mappen Verktyg.

  2. Dubbelklicka på konsolprogrammet .

  3. Klicka på startknappen för att aktivera spårningsloggning för konsolen.

    Skärmbild som visar konsolappen och startknappen som klickas på.

  4. Låt MDM-administratören försöka distribuera om konfigurationsprofilen till den här macOS-enheten/användaren och tvinga fram en synkroniseringscykel.

  5. Skriv subsystem:com.apple.ManagedClient i sökfältet och tryck på Retur.

    Skärmbild som visar konsolappen med undersystemfiltret.

  6. Där markören blinkar i sökfältet skriver du meddelandet:Extensible.

    Skärmbild som visar konsolen som filtreras ytterligare i meddelandefältet.

  7. Nu bör du se MDM-konsolloggarna filtrerade på extensible SSO-konfigurationsprofilaktiviteter . Följande skärmbild visar en loggpost Installerad konfigurationsprofil som visar att konfigurationsprofilen har installerats.

Felsöka programautentiseringsflöde

Vägledningen i det här avsnittet förutsätter att macOS-enheten har en korrekt distribuerad konfigurationsprofil. Se Verifiera SSO-konfigurationsprofil på macOS-enhet för stegen.

När microsoft Enterprise SSO-tillägget för Apple-enheter har distribuerats har det stöd för två typer av programautentiseringsflöden för varje programtyp. Vid felsökning är det viktigt att förstå vilken typ av program som används.

Programtyper

Apptyp Interaktiv autentisering Tyst autentisering beskrivning Exempel
Intern MSAL-app X X MSAL (Microsoft Authentication Library) är ett ramverk för programutvecklare som är skräddarsytt för att skapa program med Microsoft platforma za identitete (Microsoft Entra-ID).
Appar som bygger på MSAL version 1.1 eller senare kan integreras med Microsoft Enterprise SSO-tillägget.
Om programmet är SSO-tillägg (broker) medveten om att det använder tillägget utan ytterligare konfiguration för mer information, se vår MSAL-utvecklarexempeldokumentation.
Microsoft To Do
Icke-MSAL Native/Browser SSO X Program som använder Apples nätverkstekniker eller webbvyer kan konfigureras för att hämta en delad autentiseringsuppgift från SSO-tillägget
Funktionsflaggor måste konfigureras för att säkerställa att paket-ID:t för varje app får hämta den delade autentiseringsuppgiften (PRT).
Microsoft Word
Safari
Microsoft Edge
Visual Studio

Viktigt!

Alla inbyggda Microsoft-program från första part använder inte MSAL-ramverket. Vid tidpunkten för den här artikelns publicering förlitar sig de flesta av de Microsoft kancelarija macOS-programmen fortfarande på det äldre ADAL-biblioteksramverket och förlitar sig därför på SSO-flödet för webbläsare.

Så här hittar du paket-ID:t för ett program i macOS

  1. Dubbelklicka på mappen Program från macOS-enheten och dubbelklicka sedan på mappen Verktyg.

  2. Dubbelklicka på terminalprogrammet .

  3. När terminalen öppnas skriver osascript -e 'id of app "<appname>"' du i kommandotolken. Se några exempel:

    % 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. Nu när paket-ID:erna har samlats in följer du vår vägledning för att konfigurera funktionsflaggor för att säkerställa att icke-MSAL Native/Browser SSO-appar kan använda SSO-tillägget. Obs! Alla paket-ID:er är skiftlägeskänsliga för konfigurationen av funktionsflaggan.

Varning

Program som inte använder Apple Networking-tekniker (som WKWebview och NSURLSession) kommer inte att kunna använda delade autentiseringsuppgifter (PRT) från SSO-tillägget. Både Google Chrome och Mozilla Firefox faller i denna kategori. Även om de har konfigurerats i MDM-konfigurationsprofilen blir resultatet en vanlig autentiseringsfråga i webbläsaren.

Bootstrapping

Som standard anropar endast MSAL-appar SSO-tillägget och sedan hämtar tillägget i sin tur en delad autentiseringsuppgift (PRT) från Microsoft Entra-ID. Safari-webbläsarprogrammet eller andra icke-MSAL-program kan dock konfigureras för att hämta PRT. Se Tillåt användare att logga in från program som inte använder MSAL och Webbläsaren Safari. När SSO-tillägget har hämtat en PRT lagras autentiseringsuppgifterna i nyckelringen för användarinloggning. Kontrollera sedan att PRT finns i användarens nyckelring:

Kontrollera åtkomst till nyckelringar för PRT

  1. Dubbelklicka på mappen Program från macOS-enheten och dubbelklicka sedan på mappen Verktyg.

  2. Dubbelklicka på nyckelringsåtkomstprogrammet .

  3. Under Standardnyckelringar väljer du Lokala objekt (eller iCloud).

    • Kontrollera att alla objekt är markerade.
    • I sökfältet skriver du (För att filtrera) på höger sida primaryrefresh .

    skärmbild som visar hur du hittar PRT i nyckelringsåtkomstappen.

    Skärmbild av pratbubblan Komponent för nyckelringsautentiseringsuppgifter beskrivning
    1 Alla objekt Visar alla typer av autentiseringsuppgifter för nyckelringsåtkomst
    2 Sökfält för nyckelringar Tillåter filtrering efter autentiseringsuppgifter. Så här filtrerar du efter Microsoft Entra PRT-typen primaryrefresh
    3 Variant Refererar till typen av autentiseringsuppgifter. Microsoft Entra PRT-autentiseringsuppgifter är en typ av autentiseringsuppgifter för programlösenord
    4 Konto Visar Microsoft Entra-användarkontot, som äger PRT i formatet: UserObjectId.TenantId-login.windows.net
    5 Var Visar det fullständiga namnet på autentiseringsuppgifterna. Microsoft Entra PRT-autentiseringsuppgifterna börjar med följande format: primaryrefreshtoken-29d9ed98-a469-4536-ade2-f981bc1d605 29d9ed98-a469-4536-ade2-f981bc1d605 är program-ID:t för Microsoft Authentication Broker-tjänsten som ansvarar för att hantera PRT-förvärvsförfrågningar
    6 Modifierad Visar när autentiseringsuppgifterna senast uppdaterades. För Microsoft Entra PRT-autentiseringsuppgifter uppdateras datum/tidsstämpel varje gång autentiseringsuppgifterna startas eller uppdateras av en interaktiv inloggningshändelse
    7 Nyckelring Anger vilken nyckelring som den valda autentiseringsuppgiften finns i. Microsoft Entra PRT-autentiseringsuppgifterna finns i nyckelringen Lokala objekt eller iCloud . När iCloud är aktiverat på macOS-enheten blir nyckelringen Lokala objekt i iCloud-nyckelringen
  4. Om PRT inte hittas i Nyckelringsåtkomst gör du följande baserat på programtypen:

    • Intern MSAL: Kontrollera att programutvecklaren, om appen har skapats med MSAL version 1.1 eller senare, har aktiverat programmet för att vara koordinatormedvetet. Kontrollera även felsökningsstegen för distribution för att utesluta eventuella distributionsproblem.
    • Icke MSAL (Safari): Kontrollera att funktionsflaggan browser_sso_interaction_enabled är inställd på 1 och inte 0 i MDM-konfigurationsprofilen

Autentiseringsflöde efter start av en PRT

Nu när PRT (delade autentiseringsuppgifter) har verifierats är det bra att förstå de övergripande stegen för varje programtyp och hur den interagerar med plugin-programmet Microsoft Enterprise SSO Extension (broker app) innan du utför någon djupare felsökning. Följande animeringar och beskrivningar bör hjälpa macOS-administratörer att förstå scenariot innan de tittar på loggningsdata.

Inbyggt MSAL-program

Scenario: Ett program som utvecklats för att använda MSAL (Exempel: Microsoft To Do-klient ) som körs på en Apple-enhet måste logga in användaren med sitt Microsoft Entra-konto för att få åtkomst till en Microsoft Entra-skyddad tjänst (exempel: Microsoft To Do Service).

En GIF-animering som visar autentiseringsflödet för en MSAL-app med en PRT.

  1. MSAL-utvecklade program anropar SSO-tillägget direkt och skickar PRT till Microsoft Entra-tokenslutpunkten tillsammans med programmets begäran om en token för en Microsoft Entra-skyddad resurs
  2. Microsoft Entra-ID verifierar PRT-autentiseringsuppgifterna och returnerar en programspecifik token tillbaka till SSO-tilläggskoordinatorn
  3. SSO-tilläggskoordinatorn skickar sedan token till MSAL-klientprogrammet, som sedan skickar den till den Microsoft Entra-skyddade resursen
  4. Användaren är nu inloggad i appen och autentiseringsprocessen är klar
Enkel inloggning för icke-MSAL/webbläsare

Scenario: En användare på en Apple-enhet öppnar Safari-webbläsaren (eller en icke-MSAL-inbyggd app som stöder Apple Networking Stack) för att logga in på en Microsoft Entra-skyddad resurs (exempel: https://office.com).

En animering som visar autentiseringsflödet på hög nivå för en icke-MSAL-app med hjälp av SSO-tillägget.

  1. Med hjälp av ett icke-MSAL-program (exempel: Safari) försöker användaren logga in på ett Microsoft Entra-integrerat program (exempel: office.com) och omdirigeras för att hämta en token från Microsoft Entra-ID
  2. Så länge som det icke-MSAL-programmet tillåts i MDM-nyttolastkonfigurationen, fångar Apple-nätverksstacken upp autentiseringsbegäran och omdirigerar begäran till SSO-tilläggskoordinatorn
  3. När SSO-tillägget tar emot den avlyssnade begäran skickas PRT till Microsoft Entra-tokenslutpunkten
  4. Microsoft Entra-ID verifierar PRT och returnerar en programspecifik token tillbaka till SSO-tillägget
  5. Den programspecifika token ges till icke-MSAL-klientprogrammet och klientprogrammet skickar token för att komma åt den Microsoft Entra-skyddade tjänsten
  6. Användaren har nu slutfört inloggningen och autentiseringsprocessen är klar

Hämta loggarna för SSO-tillägget

Ett av de mest användbara verktygen för att felsöka olika problem med SSO-tillägget är klientloggarna från Apple-enheten.

Spara loggar för SSO-tillägg från företagsportalappen

  1. Dubbelklicka på mappen Program från macOS-enheten.

  2. Dubbelklicka på företagsportalprogrammet .

  3. När företagsportalen läses in går du till den översta menyraden: Hjälp-Spara> diagnostikrapport. Du behöver inte logga in på appen.

    Skärmbild som visar hur du navigerar på menyn Hjälp överst för att spara diagnostikrapporten.

  4. Spara loggarkivet för företagsportalen på valfri plats (till exempel: Desktop).

  5. Öppna arkivet CompanyPortal.zip och öppna filen SSOExtension.log med valfri textredigerare.

Dricks

Ett praktiskt sätt att visa loggarna är att använda Visual Studio Code och installera Log Viewer-tillägget.

Tailing SSO-tilläggsloggar på macOS med terminal

Under felsökningen kan det vara bra att återskapa ett problem när du skuggar SSOExtension-loggarna i realtid:

  1. Dubbelklicka på mappen Program från macOS-enheten och dubbelklicka sedan på mappen Verktyg.

  2. Dubbelklicka på terminalprogrammet .

  3. När terminalen öppnas skriver du:

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

    Kommentar

    Den avslutande /* anger att flera loggar kommer att skuggas om det skulle finnas

    % 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. När du återskapar problemet håller du terminalfönstret öppet för att observera utdata från de tailed SSOExtension-loggarna .

Exportera loggar för SSO-tillägg i iOS

Det går inte att visa iOS SSO-tilläggsloggar i realtid, som i macOS. IOS SSO-tilläggsloggarna kan exporteras från Microsoft Authenticator-appen och sedan granskas från en annan enhet:

  1. Öppna Microsoft Authenticator-appen:

    Skärmbild som visar ikonen för Microsoft Authenticator-appen i iOS.

  2. Tryck på menyknappen i det övre vänstra hörnet:

    Skärmbild som visar platsen för menyknappen i Microsoft Authenticator-appen.

  3. Välj alternativet "Skicka feedback":

    Skärmbild som visar platsen för alternativet Skicka feedback i Microsoft Authenticator-appen.

  4. Välj alternativet "Har problem":

    Skärmbild som visar platsen för att ha problemalternativet i Microsoft Authenticator-appen.

  5. Tryck på alternativet Visa diagnostikdata:

    Skärmbild som visar knappen Visa diagnostikdata i Microsoft Authenticator-appen.

    Dricks

    Om du arbetar med Microsoft Support kan du i det här skedet trycka på knappen Skicka för att skicka loggarna till supporten. Detta ger dig ett incident-ID som du kan ange för din Microsoft Support-kontakt.

  6. Tryck på knappen "Kopiera alla" för att kopiera loggarna till urklipp för din iOS-enhet. Du kan sedan spara loggfilerna någon annanstans för granskning eller skicka dem via e-post eller andra fildelningsmetoder:

    Skärmbild som visar alternativet Kopiera alla loggar i Microsoft Authenticator-appen.

Förstå loggarna för SSO-tillägget

Att analysera loggarna för SSO-tillägget är ett utmärkt sätt att felsöka autentiseringsflödet från program som skickar autentiseringsbegäranden till Microsoft Entra-ID. Varje gång SSO-tillägget Broker anropas resulterar en serie loggningsaktiviteter och dessa aktiviteter kallas auktoriseringsbegäranden. Loggarna innehåller följande användbara information för felsökning:

  • Konfiguration av funktionsflagga
  • Typer av auktoriseringsbegäran
    • Intern MSAL
    • Icke MSAL/Webbläsar-SSO
  • Interaktion med macOS-nyckelringen för retrival-/lagringsåtgärder för autentiseringsuppgifter
  • Korrelations-ID:t för Microsoft Entra-inloggningshändelser
    • PRT-förvärv
    • Enhetsregistrering

Varning

Loggarna för SSO-tillägget är mycket utförliga, särskilt när du tittar på nyckelringsautentiseringsåtgärder. Därför är det alltid bäst att förstå scenariot innan du tittar på loggarna under felsökningen.

Loggstruktur

Loggarna för SSO-tillägget är uppdelade i kolumner. Följande skärmbild visar kolumnuppdelningen av loggarna:

Skärmbild som visar kolumnstrukturen i loggarna för SSO-tillägget.

Column Kolumnnamn beskrivning
1 Lokalt datum/tid Det lokala datum och den tid som visas
2 I-Information
W-varning
E-fel
Visar information, varningar eller fel
3 Tråd-ID (TID) Visar tråd-ID för SSO-tillägget Broker Apps körning
4 MSAL-versionsnummer Microsoft Enterprise SSO-tillägget Broker Plugin skapas som en MSAL-app. Den här kolumnen anger vilken version av MSAL som broker-appen kör
5 macOS-version Visa versionen av macOS-operativsystemet
6 UTC-datum/tid UTC-datum och tid som visas
7 Korrelations-ID Rader i loggarna som har att göra med Microsoft Entra-ID- eller nyckelringsåtgärder utökar kolumnen UTC-datum/tid med ett korrelations-ID
8 Meddelande Visar detaljerade meddelanden i loggarna. Det mesta av felsökningsinformationen finns genom att undersöka den här kolumnen

Konfiguration av funktionsflagga

Under MDM-konfigurationen av Microsoft Enterprise SSO-tillägget kan ett valfritt tilläggsspecifika data skickas som instruktioner för att ändra hur SSO-tillägget fungerar. Dessa konfigurationsspecifika instruktioner kallas funktionsflaggor. Konfigurationen av funktionsflaggan är särskilt viktig för typer av Auktoriseringsbegäranden som inte är MSAL/Browser SSO, eftersom paket-ID:t kan avgöra om tillägget anropas eller inte. Se dokumentationen om funktionsflagga. Varje auktoriseringsbegäran börjar med en konfigurationsrapport för funktionsflaggan. Följande skärmbild går igenom ett exempel på konfiguration av funktionsflagga:

Skärmbild som visar ett exempel på konfiguration av funktionsflagga för Microsoft SSO-tillägget.

Bildtext Funktionsflagga beskrivning
1 browser_sso_interaction_enabled Icke-MSAL- eller Safari-webbläsare kan starta en PRT
2 browser_sso_disable_mfa (Nu inaktuell) Under start av PRT-autentiseringsuppgifter krävs som standard MFA. Observera att den här konfigurationen är inställd på null , vilket innebär att standardkonfigurationen tillämpas
3 disable_explicit_app_prompt Ersätter prompt=login authentication requests from applications to reduce prompt
4 AppPrefixAllowList Alla icke-MSAL-program som har ett paket-ID som börjar med com.micorosoft. kan fångas upp och hanteras av SSO-tilläggskoordinatorn

Viktigt!

Funktionsflaggor inställda på null innebär att standardkonfigurationen är på plats. Mer information finns i dokumentationen om funktionsflaggan

MSAL-inbyggt flöde för programinloggning

I följande avsnitt går vi igenom hur du undersöker loggarna för SSO-tillägg för det interna autentiseringsflödet för MSAL-programmet. I det här exemplet använder vi MSAL macOS/iOS-exempelprogrammet som klientprogram, och programmet anropar Microsoft Graph API för att visa inloggningsanvändarens information.

MSAL-inbyggt: Genomgång av interaktivt flöde

Följande åtgärder bör utföras för en lyckad interaktiv inloggning:

  1. Användaren loggar in på MSAL macOS-exempelappen.
  2. Microsoft SSO Extension Broker anropas och hanterar begäran.
  3. Microsoft SSO Extension Broker genomgår bootstrappingprocessen för att skaffa en PRT för den inloggade användaren.
  4. Lagra PRT i nyckelringen.
  5. Kontrollera om det finns ett enhetsregistreringsobjekt i Microsoft Entra ID (WPJ).
  6. Returnera en åtkomsttoken till klientprogrammet för att få åtkomst till Microsoft Graph med omfånget User.Read.

Viktigt!

Exempelloggfragmenten som följer har kommenterats med kommentarsrubriker // som inte visas i loggarna. De används för att illustrera en specifik åtgärd som vidtas. Vi har dokumenterat loggfragmenten på det här sättet för att hjälpa till med kopierings- och inklistringsåtgärder. Dessutom har loggexemplen trimmats för att endast visa rader av betydelse för felsökning.

Användaren klickar på knappen Anropa Microsoft Graph API för att anropa inloggningsprocessen.

Skärmbild som visar MSAL-exempelappen för macOS som startats med knappen Anropa Microsoft Graph API.

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

Loggningsexemplet kan delas upp i tre segment:

Segment beskrivning
get_accounts_operation Kontrollerar om det finns några befintliga konton i cacheminnet
- ClientID: Program-ID:t som registrerats i Microsoft Entra-ID för den här MSAL-appen
ADB 3.1.40 anger den versionen av plugin-programmet Microsoft Enterprise SSO Extension Broker
login Broker hanterar begäran om Microsoft Entra-ID:
- Hantera interaktiv SSO-begäran...: Anger en interaktiv begäran
- correlation_id: Användbart för korsreferenser med inloggningsloggarna på Microsoft Entra-serversidan
- omfång: Behörighetsomfånget User.Read API begärs från Microsoft Graph
- client_version: version av MSAL som programmet kör
- redirect_uri: MSAL-appar använder formatetmsauth.com.<Bundle ID>://auth
PRT-begäran Bootstrapping-processen för att hämta en PRT interaktivt har initierats och renderar Webview SSO-sessionen

Microsoft Authentication Broker Service
- clientId: 29d9ed98-a469-4536-ade2-f981bc1d605e
– Alla PRT-begäranden görs till Microsoft Authentication Broker Service

SSO Webview Controller visas och användaren uppmanas att ange sin Microsoft Entra-inloggning (UPN/e-post)

Skärmbild som visar Apple SSO-prompten med en användarinformation som anges och mer information i pratbubblan.

Kommentar

Om du klickar på i i det nedre vänstra hörnet på webbvisningsstyrenheten visas mer information om SSO-tillägget och detaljerna om appen som har anropat det.

Skärmbild som visar mer information om SSO-tillägget från skärmen för enkel inloggning. När användaren har angett sina Microsoft Entra-autentiseringsuppgifter skrivs följande loggposter till loggarna för SSO-tillägget

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.

Vid den här tidpunkten i autentiserings-/auktoriseringsflödet har PRT bootstrapped och den bör vara synlig i åtkomsten till macOS-nyckelringen. Se Kontrollera nyckelringsåtkomst för PRT. MSAL macOS-exempelprogrammet använder den åtkomsttoken som tas emot från Microsoft SSO Extension Broker för att visa användarens information.

Granska sedan inloggningsloggarna på serversidan i Microsoft Entra baserat på korrelations-ID:t som samlats in från SSO-tilläggsloggarna på klientsidan. Mer information finns i Inloggningsloggar i Microsoft Entra-ID.

Visa Microsoft Entra-inloggningsloggar efter korrelations-ID-filter
  1. Öppna Microsoft Entra-inloggningar för klientorganisationen där programmet är registrerat.
  2. Välj Användarinloggningar (interaktiva).
  3. Välj alternativknappen Lägg till filter och välj alternativknappen Korrelations-ID .
  4. Kopiera och klistra in korrelations-ID:t som hämtats från loggarna för SSO-tillägget och välj Använd.

För MSAL Interactive Login Flow förväntar vi oss att se en interaktiv inloggning för resursen Microsoft Authentication Broker Service. Den här händelsen är där användaren angav sitt lösenord för att starta PRT.

Skärmbild som visar interaktiva användarinloggningar från Microsoft Entra-ID som visar en interaktiv inloggning till Microsoft Authentication Broker Service.

Det finns också icke-interaktiva inloggningshändelser på grund av att PRT används för att hämta åtkomsttoken för klientprogrammets begäran. Följ inloggningsloggarna för Visa Microsoft Entra efter korrelations-ID-filter, men i steg 2 väljer du Användarinloggningar (icke-interaktiva).

Skärmbild som visar hur SSO-tillägget använder PRT för att hämta en åtkomsttoken för Microsoft Graph.

Inloggningsloggattribut beskrivning
Program Visningsnamn för programregistreringen i Microsoft Entra-klientorganisationen där klientprogrammet autentiseras.
Program-ID Hänvisade även till ClientID för programregistreringen i Microsoft Entra-klientorganisationen.
Resurs DEN API-resurs som klientprogrammet försöker få åtkomst till. I det här exemplet är resursen Microsoft Graph API.
Typ av inkommande token En inkommande tokentyp för primär uppdateringstoken (PRT) visar den indatatoken som används för att hämta en åtkomsttoken för resursen.
Användare Användaragentsträngen i det här exemplet visar att Microsoft SSO-tillägget är det program som bearbetar den här begäran. En användbar indikator på att SSO-tillägget används och att asynkron autentiseringsbegäran sker.
Microsoft Entra-appautentiseringsbibliotek När ett MSAL-program används skrivs informationen om biblioteket och plattformen här.
Information om Oauth-omfång Oauth2-omfångsinformationen som begärdes för åtkomsttoken. (User.Read,profile,openid,email).
MSAL Native: Genomgång av tyst flöde

Efter en tidsperiod är åtkomsttoken inte längre giltig. Så om användaren klickar på knappen Anropa Microsoft Graph API . SSO-tillägget försöker uppdatera åtkomsttoken med den redan förvärvade PRT:en.

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.

Loggningsexemplet kan delas upp i två segment:

Segment beskrivning
refresh Broker hanterar begäran om Microsoft Entra-ID:
- Hantera tyst SSO-begäran...: Anger en tyst begäran
- correlation_id: Användbart för korsreferenser med inloggningsloggarna på Microsoft Entra-serversidan
- omfång: Behörighetsomfånget User.Read API begärs från Microsoft Graph
- client_version: version av MSAL som programmet kör
- redirect_uri: MSAL-appar använder formatetmsauth.com.<Bundle ID>://auth

Uppdateringen har betydande skillnader i begärandenyttolasten:
- authority: Innehåller Microsoft Entra-klient-URL-slutpunkten i stället för den gemensamma slutpunkten
- home_account_id: Visa användarkontot i formatet <UserObjectId.<>TenantID>
- användarnamn: hashat UPN-format auth.placeholder-XXXXXXXX__domainname.com
PRT-uppdatering och hämta åtkomsttoken Den här åtgärden förnyar PRT och uppdaterar den om det behövs innan du returnerar åtkomsttoken tillbaka till det anropande klientprogrammet.

Vi kan återigen ta korrelations-ID:t som hämtats från loggarna för SSO-tillägg på klientsidan och korsreferenser med inloggningsloggarna på serversidan i Microsoft Entra.

Skärmbild som visar microsoft Entra-begäran om tyst inloggning med hjälp av plugin-programmet Enterprise SSO Broker.

Microsoft Entra-inloggningen visar identisk information med Microsoft Graph-resursen från inloggningsåtgärden i föregående interaktiva inloggningsavsnitt.

Inloggningsflöde för program som inte är MSAL/Browser SSO

I följande avsnitt går vi igenom hur du undersöker loggarna för SSO-tillägget för autentiseringsflödet Icke-MSAL/Webbläsarprogram. I det här exemplet använder vi Webbläsaren Apple Safari som klientprogram och programmet anropar webbprogrammet Office.com (OfficeHome).

Genomgång av SSO-flöde för icke-MSAL/webbläsare

Följande åtgärder bör utföras för en lyckad inloggning:

  1. Anta att användare som redan har genomgått bootstrappingprocessen har en befintlig PRT.
  2. På en enhet, med Microsoft SSO Extension Broker distribuerad, kontrolleras de konfigurerade funktionsflaggorna för att säkerställa att programmet kan hanteras av SSO-tillägget.
  3. Eftersom Safari-webbläsaren följer Apple Networking Stack försöker SSO-tillägget fånga upp Microsoft Entra-autentiseringsbegäran.
  4. PRT används för att hämta en token för den resurs som begärs.
  5. Om enheten är Microsoft Entra-registrerad skickar den enhets-ID:t tillsammans med begäran.
  6. SSO-tillägget fyller huvudet i webbläsarens begäran om att logga in på resursen.

Följande loggar för SSO-tillägg på klientsidan visar begäran som hanteras transparent av SSO-tilläggskoordinatorn för att uppfylla begäran.

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
Loggkomponent för SSO-tillägg beskrivning
Begäran om enkel inloggning i webbläsaren har skapats Alla icke-MSAL/Browser SSO-begäranden börjar med den här raden:
- bundle identifier: Bundle ID: com.apple.Safari
- initierar ursprung: Webb-URL som webbläsaren kommer åt innan den når någon av inloggnings-URL:erna för Microsoft Entra-ID (https://office.com)
Starta begäran om enkel inloggning i webbläsaren för utfärdare Löser antalet PRT och om enheten är registrerad:
https://login.microsoftonline.com/common, antal PRTs 1, enhet registrerad 1
Korrelations-ID [Webbläsar-SSO] Bearbeta begäran med PRT och korrelations-ID i huvuden (null), fråga CorrelationID>.< Det här ID:t är viktigt för korsreferenser med inloggningsloggarna på Microsoft Entra-serversidan
Enhetsregistrering Om enheten är Microsoft Entra-registrerad kan SSO-tillägget skicka enhetshuvudet i begäranden om enkel inloggning i webbläsaren:
– Hittade registrering registrerad i
- login.microsoftonline.com, isSameAsRequestEnvironment: Ja

Skicka enhetshuvud i webbläsarens enkel inloggning för enhets-ID 43cfaf69-0f94-4d2e-a815-c103226c4c04

Använd sedan korrelations-ID:t som hämtats från loggarna för webbläsar-SSO-tillägget för att korsreferensa inloggningsloggarna för Microsoft Entra.

Skärmbild som visar korsreferens i Inloggningsloggarna för Microsoft Entra för tillägget webbläsar-SSO.

Inloggningsloggattribut beskrivning
Program Visningsnamn för programregistreringen i Microsoft Entra-klientorganisationen där klientprogrammet autentiseras. I det här exemplet är visningsnamnet OfficeHome.
Program-ID Hänvisade även till ClientID för programregistreringen i Microsoft Entra-klientorganisationen.
Resurs DEN API-resurs som klientprogrammet försöker få åtkomst till. I det här exemplet är resursen OfficeHome-webbappen.
Typ av inkommande token En inkommande tokentyp för primär uppdateringstoken (PRT) visar den indatatoken som används för att hämta en åtkomsttoken för resursen.
Autentiseringsmetod har identifierats Under fliken Autentiseringsinformation är värdet för Plugin-programmet Microsoft Entra SSO användbar indikator på att SSO-tillägget används för att underlätta begäran om enkel inloggning i webbläsaren
Microsoft Entra SSO-tilläggsversion Under fliken Ytterligare information visar det här värdet versionen av Microsoft Enterprise SSO-tillägget Broker-appen.
Enhets-ID Om enheten är registrerad kan SSO-tillägget skicka enhets-ID:t för att hantera begäranden om enhetsautentisering.
Operativsystem Visar typ av operativsystem.
Eftergiven SSO-tillägget kan underlätta efterlevnadsprinciper genom att skicka enhetshuvudet. Kraven är:
- Registrering av Microsoft Entra-enheter
- MDM-hantering
- Intune- eller Intune-partnerefterlevnad
Hanterad Anger att enheten hanteras.
Kopplingstyp macOS och iOS, om de är registrerade, kan bara vara av typen: Microsoft Entra registrerad.

Dricks

Om du använder Jamf Connect rekommenderar vi att du följer den senaste Jamf-vägledningen för att integrera Jamf Connect med Microsoft Entra-ID. Det rekommenderade integrationsmönstret säkerställer att Jamf Connect fungerar korrekt med dina principer för villkorsstyrd åtkomst och Microsoft Entra ID Protection.

Nästa steg