Řešení potíží s modulem plug-in Microsoft Enterprise SSO Extension na zařízeních Apple
Tento článek obsahuje pokyny pro řešení potíží, které správci používají k řešení problémů s nasazením a používáním modulu plug-in Enterprise SSO. Rozšíření Apple SSO je možné nasadit do iOS/iPadOS a macOS.
Organizace se můžou rozhodnout nasadit jednotné přihlašování do firemních zařízení, aby poskytly koncovým uživatelům lepší prostředí. Tento proces na platformách Apple zahrnuje implementaci Jednotné přihlašování (SSO) prostřednictvím primárních obnovovacích tokenů. Jednotné přihlašování ulehčuje koncovým uživatelům od nadměrného množství výzev k ověřování.
Microsoft implementoval modul plug-in založený na rozhraní jednotného přihlašování společnosti Apple, který poskytuje zprostředkované ověřování pro aplikace integrované s Microsoft Entra ID. Další informace najdete v článku modul plug-in Microsoft Enterprise SSO pro zařízení Apple.
Typy rozšíření
Apple podporuje dva typy SSO rozšíření, která jsou součástí jeho rámce: Přesměrování a přihlašovací údaje. Plugin Microsoft Enterprise SSO je implementován jako přesměrovací typ a nejlépe se hodí k zprostředkování ověření do Microsoft Entra ID. Následující tabulka porovnává dva typy rozšíření.
Typ rozšíření | Nejvhodnější pro | Jak to funguje | Klíčové rozdíly |
---|---|---|---|
Přesměrování | Moderní metody ověřování, jako je OpenID Connect, OAUTH2 a SAML (Microsoft Entra ID) | Operační systém zachytává požadavek na ověření z aplikace a směruje jej na adresy URL zprostředkovatele identity, které jsou definovány v konfiguračním profilu pro rozšíření MDM. Rozšíření pro přesměrování přijímají: adresy URL, hlavičky a tělo. | Před vyžádáním dat požádejte o přihlašovací údaje. Používá adresy URL v konfiguračním profilu MDM. |
Ověření | Typy ověřování pro výzvy a odpovědi, jako je Kerberos (místní Active Directory Domain Services) | Požadavek se odešle z aplikace na ověřovací server (řadič domény AD). Rozšíření přihlašovacích údajů jsou nakonfigurovaná s HOSTS v konfiguračním profilu MDM. Pokud ověřovací server vrátí výzvu, která odpovídá hostiteli uvedenému v profilu, operační systém směruje výzvu k rozšíření. Rozšíření má na výběr zpracování nebo odmítnutí výzvy. Pokud je požadavek zpracován, rozšíření vrátí autorizační hlavičky pro dokončení požadavku a ověřovací server vrátí odpověď volajícímu. | Požádejte o data a pak budete vyzváni k ověření. Použití HOST v konfiguračním profilu MDM |
Microsoft má implementace pro zprostředkované ověřování pro následující klientské operační systémy:
Operační systém | Zprostředkovatel ověřování |
---|---|
Windows | Správce webových účtů (WAM) |
iOS/iPadOS | Microsoft Authenticator |
Android | Microsoft Authenticator nebo Microsoft Portál společnosti Intune |
macOS | Microsoft Portál společnosti Intune (prostřednictvím rozšíření jednotného přihlašování) |
Všechny zprostředkovací aplikace Microsoftu používají klíčový artefakt známý jako primární obnovovací token (PRT), což je webový token JSON (JWT) používaný k získání přístupových tokenů pro aplikace a webové prostředky zabezpečené pomocí Microsoft Entra ID. Při nasazení prostřednictvím MDM získá rozšíření Enterprise SSO pro macOS nebo iOS PRT, které se podobá PRT používaným na zařízeních s Windows prostřednictvím Správce webových účtů (WAM). Další informace najdete v článku Co je primární obnovovací token.
Model řešení potíží
Následující vývojový diagram popisuje logický tok pro řešení potíží s rozšířením jednotného přihlašování. Zbytek tohoto článku podrobně popisuje kroky popsané v tomto vývojovém diagramu. Řešení potíží je možné rozdělit do dvou samostatných oblastí zaměření: nasazení a tok ověřování aplikací.
Postup odhlášení z jednotného přihlašování k platformě v systému macOS
Aby se správci odhlásili z PSSO, které bylo omylem povoleno, měli by odebrat profil rozšíření SSO s povoleným PSSO ze zařízení a nasadit nový profil rozšíření SSO s vypnutými nebo odebranými příznaky PSSO.
- Odeberte cílení profilu jednotného přihlašování s povoleným PSSO.
- Zahajte synchronizaci zařízení, abyste odstranili profil jednotného přihlašování (SSO) s povoleným PSSO ze zařízení.
- Zaměřte zařízení na nový profil SSO se zakázaným režimem PSSO
- Inicializovat synchronizaci zařízení, aby se nový profil nainstaloval do zařízení
Důležité
Poznámka: Aktualizace existujícího profilu SSO na zařízení v žádném případě nepomůže zakázat PSSO po dokončení registrace. Pouze úplné odebrání profilu SSO ze zařízení odstraní stav PSSO ze zařízení.
Kontext:
Uživatelé začnou na zařízeních s macOS 13 nebo vyšším vidět oznámení o registraci PSSO ve dvou scénářích:
- Pokud už zařízení má Portál společnosti Intune verzi podporující PSSO a správce nasadí nové zásady rozšíření jednotného přihlašování s povoleným PSSO.
- Pokud už má uživatel cílené zásady rozšíření jednotného přihlašování s aktivovaným PSSO a později je na zařízení nainstalována verze Portálu společnosti Intune podporující PSSO.
Upozornění
Správci by neměli cílit na uživatele se zásadami rozšíření SSO, pokud mají povolené PSSO, ledaže by byli otestováni a připraveni k nasazení, protože by to mohlo potenciálně narušit stávající uživatele a jejich podmínky pro dodržování předpisů.
Důležité
Poznámka: Pro uživatele, kteří dokončí registraci PSSO, bude původní registrace WPJ odebrána z klíčenky. Pokud byla registrace PSSO provedena omylem, po odstranění profilu SSO správcem a instalaci nového profilu bez PSSO by se měla starší registrace WPJ provést znovu, aby byl zajištěn soulad zařízení.
Řešení potíží s nasazením
Většina problémů, se kterými se zákazníci setkávají, vychází buď z nesprávné konfigurace profilu rozšíření jednotného přihlašování (SSO) v rámci správy mobilních zařízení (MDM), nebo neschopnosti zařízení Apple přijmout konfigurační profil z MDM. Tato část popisuje kroky, které můžete provést, abyste zajistili, že je profil MDM nasazený na Počítač Mac a že má správnou konfiguraci.
Požadavky na nasazení
- operační systém macOS: verze 10.15 (Catalina) nebo novější.
- Operační systém iOS: verze 13 nebo vyšší.
- Zařízení spravované jakýmkoli dodavatelem MDM, který podporuje Apple macOS nebo iOS (registrace MDM).
- Nainstalovaný software zprostředkovatele ověřování: Microsoft Portál společnosti Intune nebo Microsoft Authenticator pro iOS.
Kontrola verze operačního systému macOS
Pomocí následujícího postupu zkontrolujte verzi operačního systému (OS) na zařízení s macOS. Profily rozšíření Apple SSO se nasazují pouze na zařízení s macOS 10.15 (Catalina) nebo novějším. Verzi systému macOS můžete zkontrolovat v uživatelském rozhraní nebo v terminálu.
Uživatelské rozhraní
V zařízení s macOS vyberte v levém horním rohu ikonu Apple a vyberte O tomto Macu.
Verze operačního systému je uvedena vedle macOS.
Terminál
V zařízení s macOS poklikejte na složku Aplikace a potom poklikejte na složku Nástroje .
Poklepejte dvakrát na aplikaci Terminál.
Když se terminál otevře, na příkazovém řádku zadejte sw_vers , vyhledejte výsledek podobný tomuto:
% sw_vers ProductName: macOS ProductVersion: 13.0.1 BuildVersion: 22A400
Kontrola verze operačního systému iOS
Pomocí následujících kroků zkontrolujte verzi operačního systému (OS) na zařízení s iOSem. Profily rozšíření Jednotného přihlašování Apple se nasazují jenom na zařízení s iOSem 13 nebo novějším. Verzi pro iOS můžete zkontrolovat v aplikaci Nastavení. Otevřete aplikaci Nastavení:
Přejděte na Obecné a pak O aplikaci. Tato obrazovka obsahuje informace o zařízení, včetně čísla verze iOSu:
Nasazení konfiguračního profilu rozšíření jednotného přihlašování (MDM)
Spolupracujte se správcem MDM (nebo týmem pro správu zařízení) a ujistěte se, že je konfigurační profil rozšíření nasazen na zařízeních Apple. Profil rozšíření je možné nasadit z libovolného MDM, který podporuje zařízení s macOS nebo iOS.
Důležité
Apple vyžaduje, aby byla zařízení zaregistrovaná v MDM, aby bylo možné nasadit rozšíření jednotného přihlašování.
Následující tabulka obsahuje konkrétní pokyny k instalaci MDM v závislosti na tom, do kterého operačního systému nasazujete rozšíření:
- iOS/iPadOS: Nasazení modulu plug-in Microsoft Enterprise SSO
- macOS: Nasazení modulu plug-in Microsoft Enterprise SSO
Důležité
Ačkoli je podporována jakákoli MDM pro nasazení rozšíření jednotného přihlašování, mnoho organizací implementuje zásady podmíněného přístupu na základě zařízení prostřednictvím vyhodnocování zásad dodržování předpisů MDM. Pokud se používá MDM třetí strany, ujistěte se, že dodavatel MDM podporuje dodržování předpisů partnerů Intune, pokud chcete použít zásady podmíněného přístupu založené na zařízeních. Když se rozšíření jednotného přihlašování nasadí přes Intune nebo poskytovatele MDM, který podporuje dodržování předpisů partnerů Intune, může rozšíření předat certifikát zařízení do Microsoft Entra ID, aby bylo možné dokončit ověřování zařízení.
Ověření konfigurace sítě na zařízení s macOS
Architektura rozšíření jednotného přihlašování od společnosti Apple a rozšíření Microsoft Enterprise SSO založené na něm vyžaduje, aby některé domény byly vyloučeny z zachycení/kontroly protokolu TLS (označované také jako přerušení a kontrola proxy serveru). Na následující domény se nesmí vztahovat kontrola protokolu TLS:
- app-site-association.cdn-apple.com
- app-site-association.networking.apple
Zkontrolujte, zda není konfigurace SSO (jednotného přihlašování) narušena kvůli kontrole provozu TLS.
Můžete ověřit, zda inspekce TLS ovlivňuje konfiguraci vašeho SSO, spuštěním nástroje sysdiagnose z aplikace Terminál na daném zařízení:
sudo sysdiagnose -f ~/Desktop/
Sysdiagnose se uloží na plochu jako soubor .tar.gz. Extrahujte archiv a otevřete soubor system_logs.logarchive . Tím se otevře konzolová aplikace. Vyhledejte com.apple.appsso a změňte filtr na SUBSYSTÉM:
Vyhledejte události, které uvádějí, že došlo k selháním přidružené domény, zejména v souvislosti s doménami Microsoftu, jako je login.microsoftonline.com. Tyto události můžou znamenat problémy s kontrolou protokolu TLS, které zabrání správnému fungování rozšíření jednotného přihlašování. Domény Apple se v protokolu sysdiagnose nezobrazí, i když jsou ovlivněny nepodporovanou konfigurací kontroly protokolu TLS.
Ověření konfigurace kontroly protokolu TLS
Apple poskytuje nástroj pro macOS pro kontrolu řady běžných problémů s konfigurací označovaných jako Nástroj pro vyhodnocení Macu. Tento nástroj si můžete stáhnout z AppleSeed pro IT. Pokud máte přístup k AppleSeed pro IT, stáhněte si Nástroj pro hodnocení mac z oblasti Prostředky. Po instalaci aplikace spusťte vyhodnocení. Po dokončení vyhodnocení přejděte na HTTPS Interception -->Additional Content –> a zkontrolujte následující dvě položky:
Pokud tyto kontroly obsahují upozornění nebo chybu, může na zařízení dojít k kontrole protokolu TLS. Spolupracujte se svým síťovým týmem, abyste z kontroly protokolu TLS vyloučili *.cdn-apple.com a *.networking.apple .
Výstup podrobných protokolů služby swcd
Apple poskytuje nástroj příkazového řádku, swcutil
který umožňuje monitorovat průběh přidruženého ověření domény. K monitorování jakýchkoli souvisejících chyb domény můžete použít následující příkaz:
sudo swcutil watch --verbose
V protokolech vyhledejte následující položku a zkontrolujte, jestli je označená jako schválená, nebo jestli nedošlo k nějakým chybám:
```
Entry s = authsrv, a = UBF8T346G9.com.microsoft.CompanyPortalMac, d = login.microsoftonline.com
```
Vymazání mezipaměti kontroly protokolu TLS pro macOS
Pokud máte problémy s přidruženými doménami a máte domény uvedené v seznamu povolených v nástroji pro kontrolu protokolu TLS na zařízení, může to chvíli trvat, než se zruší platnost mezipaměti ověření domény přidružené společnosti Apple. Bohužel neexistují žádné deterministické kroky, které aktivují opětovné ověření přidružené domény na všech počítačích, ale existuje několik věcí, které se dají pokusit.
K resetování mezipaměti zařízení můžete spustit následující příkazy:
pkill -9 swcd
sudo swcutil reset
pkill -9 AppSSOAgent
Po resetování mezipaměti znovu otestujte konfiguraci rozšíření jednotného přihlašování.
Někdy je tento příkaz nedostatečný a mezipaměť úplně neobnovuje. V těchto případech se můžete pokusit o následující:
- Odeberte nebo přesuňte aplikaci Portál společnosti Intune do koše a restartujte zařízení. Po dokončení restartu můžete zkusit znovu nainstalovat aplikaci Portál společnosti.
- Znovu zaregistrujte zařízení.
Pokud váš problém nevyřeší žádná z výše uvedených metod, může ve vašem prostředí existovat něco jiného, co by mohlo blokovat přidružené ověření domény. Pokud k tomu dojde, obraťte se prosím na podporu Společnosti Apple a požádejte o další řešení potíží.
Ujistěte se, že je povolená ochrana integrity systému (SIP).
Architektura podnikového jednotného přihlašování vyžaduje úspěšné ověření podepisování kódu. Pokud byl stroj explicitně vyloučen ze System Integrity Protection (SIP), nemusí podepisování kódu správně fungovat. V takovém případě dojde k selhání sysdiagnose počítače, jako je následující chyba:
Error Domain=com.apple.AppSSO.AuthorizationError Code=-1000 "invalid team identifier of the extension=com.microsoft.CompanyPortalMac.ssoextension" UserInfo={NSLocalizedDescription=invalid team identifier of the extension=com.microsoft.CompanyPortalMac.ssoextension}
Pokud chcete tento problém vyřešit, proveďte jeden z následujících kroků:
- Znovu povolte ochranu integrity systému na ovlivněném počítači.
- Pokud opětovné povolení ochrany integrity systému není možné, ujistěte se, že
sudo nvram boot-args
nemá nastavenou hodnotuamfi_get_out_of_my_way
nastavenou na1
. Pokud ano, odeberte tuto hodnotu nebo ji nastavte na0
, abyste problém vyřešili.
Ověření konfiguračního profilu jednotného přihlašování na zařízení s macOS
Za předpokladu, že správce MDM postupoval podle kroků v předchozí části Nasazení profilu rozšíření jednotného přihlašování, dalším krokem je ověření úspěšného nasazení profilu do zařízení.
Vyhledání konfiguračního profilu SSO MDM
V zařízení s macOS vyberte v nastavení systému.
Jakmile se zobrazí nastavení systému , zadejte Profily a stiskněte return.
Tato akce by měla vyvolat panel Profily .
Popisek snímku obrazovky Popis 1 Označuje, že zařízení je ve správě MDM . 2 Může existovat více profilů, ze které si můžete vybrat. V tomto příkladu se profil Microsoft Enterprise SSO Extension nazývá Extensible Single Sign On Profile-32f37be3-302e-4549-a3e3-854d300e117a. Poznámka:
V závislosti na použitém typu MDM může být uvedeno několik profilů a jejich schéma pojmenování je libovolné v závislosti na konfiguraci MDM. Vyberte každý z nich a zkontrolujte, že řádek Nastavení označuje, že se jedná o rozšíření Jednotné přihlašování.
Poklikejte na konfigurační profil, který odpovídá hodnotě Nastavení rozšíření Jednotné přihlašování.
Vysvětlivka snímku obrazovky Nastavení konfiguračního profilu Popis 1 Podepsaný Podpisová autorita poskytovatele MDM. 2 Nainstalovaný Datum a časové razítko ukazující, kdy bylo rozšíření nainstalováno (nebo aktualizováno). 3 Nastavení: rozšíření jednotného přihlašování Označuje, že tento konfigurační profil je typu Apple SSO rozšíření. 4 Rozšíření Identifikátor, který se mapuje na ID balíčku aplikace, která spouští plugin Microsoft Enterprise Extension. Identifikátor musí být vždy nastavený com.microsoft.CompanyPortalMac.ssoextension
a pokud je profil nainstalovaný na zařízení s macOS, musí se identifikátor týmu zobrazovat jako (UBF8T346G9 ). Pokud se některé hodnoty liší, MDM rozšíření nevyvolá správně.5 Typ Rozšíření Microsoft Enterprise SSO musí být vždy nastaveno na typ rozšíření Přesměrování. Další informace naleznete v tématu Redirect vs Credential Extension Types. 6 Adresy URL Přihlašovací adresy URL, které patří zprostředkovateli Identity (Microsoft Entra ID). Podívejte se na seznam podporovaných adres URL. Všechna rozšíření pro přesměrování funkcí jednotného přihlašování Apple musí v konfiguračním profilu obsahovat následující součásti datové části MDM:
Komponenta datové části MDM Popis Identifikátor rozšíření Zahrnuje identifikátor sady i identifikátor týmu aplikace na zařízení s macOS, na kterém běží rozšíření. Poznámka: Rozšíření Microsoft Enterprise SSO by mělo být vždy nastaveno na: com.microsoft.CompanyPortalMac.ssoextension (UBF8T346G9), aby informoval operační systém macOS, že kód klienta rozšíření je součástí aplikace Portál společnosti Intune. Typ Musí být nastaveno na Redirect, aby označovalo typ Redirect Extension. Adresy URL Adresy URL koncového bodu zprostředkovatele identity (Microsoft Entra ID), kde operační systém směruje žádosti o ověření do rozšíření. Volitelná konfigurace specifická pro rozšíření Hodnoty slovníku, které mohou fungovat jako parametry konfigurace. V kontextu rozšíření Microsoft Enterprise SSO se tyto parametry konfigurace nazývají příznaky funkcí. Viz definice příznaků funkcí. Poznámka:
Definice MDM pro profil Rozšíření jednotného přihlašování společnosti Apple jsou uvedeny v článku Rozšiřitelná nastavení datové části MDM pro zařízení Apple. Společnost Microsoft implementovala naše rozšíření na základě tohoto schématu. Podívejte se na plug-in Microsoft Enterprise SSO pro zařízení Apple.
Chcete-li ověřit, zda je nainstalován správný profil rozšíření microsoft Enterprise SSO, musí pole Rozšíření odpovídat: com.microsoft.CompanyPortalMac.ssoextension (UBF8T346G9).
Poznamenejte si pole Nainstalováno v konfiguračním profilu, protože může být užitečným indikátorem řešení potíží při změně konfigurace.
Pokud byl ověřen správný konfigurační profil, přejděte do části Řešení potíží s tokem ověřování aplikací.
Chybí konfigurační profil MDM.
Pokud se konfigurační profil rozšíření jednotného přihlašování nezobrazuje v seznamu profilů po provedení předchozí části, může to být v tom, že konfigurace MDM má povolené cílení na uživatele nebo zařízení, což efektivně vyfiltruje uživatele nebo zařízení z příjmu konfiguračního profilu. Obraťte se na správce MDM a shromážděte protokoly konzoly , které najdete v další části.
Shromažďování protokolů konzoly specifických pro MDM
V zařízení s macOS poklikejte na složku Aplikace a potom poklikejte na složku Nástroje .
Dvakrát klikněte na aplikaci Console.
Kliknutím na tlačítko Start povolte protokolování trasování konzoly.
Požádejte správce MDM, aby se pokusil znovu nasadit konfigurační profil na toto zařízení/uživatele macOS a vynutit cyklus synchronizace.
Do vyhledávacího panelu zadejte subsystem:com.apple.ManagedClient a stiskněte return.
V místě, kde bliká kurzor v panelu hledání, napište zprávu:Extensible.
Teď byste měli vidět protokoly konzoly MDM filtrované podle aktivit konfiguračního profilu rozšiřitelného jednotného přihlašování . Následující snímek obrazovky ukazuje položku protokolu Nainstalovaný konfigurační profil, který ukazuje, že byl nainstalován konfigurační profil.
Řešení potíží s tokem ověřování aplikací
Pokyny v této části předpokládají, že zařízení s macOS má správně nasazený konfigurační profil. Postup najdete v části Ověření konfiguračního profilu jednotného přihlašování na zařízení s macOS.
Po nasazení Microsoft Enterprise SSO rozšíření pro zařízení Apple podporuje dva typy toků ověřování pro každý typ aplikace. Při řešení potíží je důležité porozumět typu používané aplikace.
Typy aplikací
Typ aplikace | Interaktivní ověřování | Tiché ověřování | Popis | Příklady |
---|---|---|---|---|
Nativní aplikace MSAL | X | X | MSAL (Microsoft Authentication Library) je architektura pro vývojáře aplikací přizpůsobená pro vytváření aplikací pomocí platformy Microsoft Identity Platform (Microsoft Entra ID). Aplikace založené na knihovně MSAL verze 1.1 nebo vyšší můžou integrovat s rozšířením Microsoft Enterprise SSO. Pokud je aplikace vědoma rozšíření SSO (zprostředkovatel), využívá toto rozšíření bez další konfigurace. Pro více informací si přečtěte naši ukázkovou dokumentaci pro vývojáře MSAL. |
Microsoft To Do |
Non-MSAL Native/Browser SSO | X | Aplikace, které používají síťové technologie Apple nebo webviews, je možné nakonfigurovat tak, aby získaly sdílené přihlašovací údaje z rozšíření jednotného přihlašování. Příznaky funkcí musí být nakonfigurovány, aby se zajistilo, že identifikátor balíčku pro každou aplikaci může získat sdílený přihlašovací údaj (PRT). |
Microsoft Word Safari Microsoft Edge Visual Studio |
Důležité
Ne všechny nativní aplikace Microsoftu používají architekturu MSAL. V době publikování tohoto článku většina aplikací Microsoft Office pro macOS stále spoléhá na starší knihovní rámec ADAL, a proto na tok přihlášení pomocí prohlížeče.
Jak najít identifikátor balíčku aplikace v systému macOS
V zařízení s macOS poklikejte na složku Aplikace a potom poklikejte na složku Nástroje .
Dvakrát klikněte na aplikaci Terminál.
Když se terminál otevře, zadejte
osascript -e 'id of app "<appname>"'
na příkazovém řádku. Podívejte se na některé příklady:% 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
Teď, když byly shromážděny ID sady, postupujte podle našich pokynů a nakonfigurujte funkční přepínače, aby aplikace jednotného přihlašování bez MSAL pro nativní aplikace/prohlížeč mohly využívat rozšíření jednotného přihlašování. Poznámka: V konfiguraci funkce feature flag se rozlišují velká a malá písmena pro ID balíčků.
Upozornění
Aplikace, které nepoužívají síťové technologie Apple (například WKWebview a NSURLSession), nebudou moct používat sdílené přihlašovací údaje (PRT) z rozšíření jednotného přihlašování. Google Chrome i Mozilla Firefox spadají do této kategorie. I když jsou nakonfigurované v konfiguračním profilu MDM, výsledkem bude běžná výzva k ověření v prohlížeči.
Nastavení od základů
Ve výchozím nastavení volají rozšíření SSO pouze aplikace MSAL, a následně toto rozšíření získá sdílené přihlašovací údaje (PRT) z Microsoft Entra ID. Aplikaci prohlížeče Safari nebo jiné aplikace mimo MSAL je však možné nakonfigurovat pro získání PRT. Viz Možnost Povolit uživatelům přihlášení z aplikací, které nepoužívají knihovnu MSAL a prohlížeč Safari. Jakmile rozšíření SSO získá PRT, uloží tyto přihlašovací údaje do uživatelovy klíčenky pro přihlášení. Dále zkontrolujte, jestli se prT nachází v klíčence uživatele:
Kontrola přístupu ke klíčence pro PRT
V zařízení s macOS poklikejte na složku Aplikace a potom poklikejte na složku Nástroje .
Dvakrát klikněte na Keychain Access.
V rámci Výchozí svazky klíčů vyberte Místní položky (nebo iCloud).
- Ujistěte se, že je vybraná možnost Všechny položky .
- Na panelu hledání na pravé straně zadejte
primaryrefresh
(Filtr).
Poznámka snímku obrazovky Komponenta přihlašovacích údajů řetězce klíčů Popis 1 Všechny položky Zobrazuje všechny typy pověření v Keychain Access. 2 Vyhledávací lišta klíčenky Umožňuje filtrování podle přihlašovacích údajů. Filtrování pro typ Microsoft Entra PRT primaryrefresh
3 Kind Odkazuje na typ přihlašovacích údajů. Přihlašovací údaje Microsoft Entra PRT jsou přihlašovacím typem hesla aplikace. 4 Účet Zobrazí uživatelský účet Microsoft Entra, který vlastní PRT ve formátu: UserObjectId.TenantId-login.windows.net
5 Kde Zobrazí úplný název přihlašovacích údajů. Přihlašovací údaje Microsoft Entra PRT začínají následujícím formátem: primaryrefreshtoken-29d9ed98-a469-4536-ade2-f981bc1d605
29d9ed98-a469-4536-ade2-f981bc1d605 je ID aplikace pro službu Microsoft Authentication Broker zodpovědné za zpracování žádostí o získání PRT.6 Upravený Zobrazuje, kdy se přihlašovací údaje naposledy aktualizovaly. Pro přihlašovací údaje Microsoft Entra PRT, kdykoli jsou přihlašovací údaje inicializovány nebo aktualizovány prostřednictvím interaktivní přihlašovací události, se aktualizuje datum a časové razítko. 7 Řetězce klíčů Určuje, ve které klíčence se nacházejí vybrané přihlašovací údaje. Přihlašovací údaje Microsoft Entra PRT se nacházejí v místní položkách nebo v klíčence iCloudu . Když je na zařízení s macOS povolený iCloud, klíčenka místních položek se stane klíčenkou iCloud. Pokud se prT nenajde v klíčence Accessu, postupujte podle typu aplikace takto:
- Nativní knihovna MSAL: Zkontrolujte, zda vývojář aplikace, pokud byla aplikace vytvořena pomocí MSAL verze 1.1 nebo vyšší, zajistil, že aplikace je schopna spolupracovat s brokerem. Také zkontrolujte postup řešení potíží s nasazením, abyste vyloučili případné problémy s nasazením.
-
Jiný než MSAL (Safari):Zkontrolujte, jestli je příznak
browser_sso_interaction_enabled
funkce nastavený na hodnotu 1 a ne 0 v konfiguračním profilu MDM.
Tok ověřování po inicializaci primárního obnovovacího tokenu (PRT)
Nyní, když byl ověřen PRT (sdílený token), je před zahájením hlubšího řešení potíží užitečné pochopit základní kroky pro každý typ aplikace a způsob, jakým interaguje se zásuvným modulem Microsoft Enterprise SSO Extension (zprostředkovací aplikace). Následující animace a popisy by měly pomoci správcům macOS pochopit scénář předtím, než se podívají na data protokolování.
Nativní aplikace MSAL
Scénář: Aplikace vyvinutá tak, aby používala službu MSAL (příklad: klient Microsoft To Do ), která běží na zařízení Apple, musí uživatele přihlásit pomocí svého účtu Microsoft Entra, aby bylo možné získat přístup ke službě chráněné microsoftem Entra (příklad: Služba Microsoft To Do).
- Aplikace vyvinuté pomocí MSAL volají přímo rozšíření jednotného přihlašování a odesílají PRT do koncového bodu tokenu Microsoft Entra spolu s požadavkem aplikace na token pro prostředek chráněný Microsoft Entra.
- Microsoft Entra ID ověří přihlašovací údaje PRT a vrátí token specifický pro aplikaci zpět zprostředkovateli rozšíření SSO.
- Zprostředkovatel rozšíření Jednotného přihlašování pak předá token klientské aplikaci MSAL, která ho pak odešle k prostředku chráněnému Microsoftem Entra.
- Uživatel je teď přihlášený k aplikaci a proces ověřování je dokončený.
Ne MSAL/prohlížeč SSO
Scénář: Uživatel na zařízení Apple otevře webový prohlížeč Safari (nebo libovolnou nativní aplikaci bez MSAL, která podporuje Apple Networking Stack), aby se přihlásil k prostředku chráněnému Microsoft Entra (příklad: https://office.com
).
- Pomocí aplikace bez MSAL (příklad: Safari) se uživatel pokusí přihlásit k integrované aplikaci Microsoft Entra (příklad: office.com) a přesměruje se na získání tokenu z Microsoft Entra ID.
- Pokud je ne-MSAL aplikace povolená v konfiguraci datové části MDM, zachytí síťový zásobník Apple požadavek na ověření a přesměruje požadavek na zprostředkovatele rozšíření SSO.
- Jakmile rozšíření jednotného přihlašování přijme zachycený požadavek, PRT je odeslán do koncového bodu tokenu Microsoft Entra.
- Id Microsoft Entra ověří PRT a vrátí token specifický pro aplikaci zpět do rozšíření jednotného přihlašování.
- Token specifický pro aplikaci je udělen klientské aplikaci non-MSAL a klientská aplikace odešle token pro přístup k chráněné službě Microsoft Entra.
- Uživatel teď dokončil přihlášení a proces ověřování je dokončený.
Získání protokolů rozšíření jednotného přihlašování
Jedním z nejužitečnějších nástrojů pro řešení různých problémů s rozšířením jednotného přihlašování jsou protokoly klienta ze zařízení Apple.
Ukládání protokolů rozšíření jednotného přihlašování z aplikace Portál společnosti
V zařízení s macOS poklikejte na složku Aplikace .
Poklikejte na aplikaci Portál společnosti.
Když se Portál společnosti načte, přejděte na horní řádek nabídek: Nápověda->Uložit diagnostickou sestavu. K aplikaci se nemusíte přihlašovat.
Uložte archiv protokolu portálu společnosti na místo svého výběru (například na plochu).
Otevřete archiv CompanyPortal.zip a otevřete soubor SSOExtension.log v libovolném textovém editoru.
Tip
Užitečný způsob, jak zobrazit protokoly, je použití editoru Visual Studio Code a instalace rozšíření Prohlížeče protokolů.
Protokoly rozšíření jednotného přihlašování v systému macOS v terminálu - sledování změn
Při řešení potíží může být užitečné reprodukovat problém, přičemž budeme v reálném čase sledovat protokoly SSOExtension:
V zařízení s macOS poklikejte na složku Aplikace a potom poklikejte na složku Nástroje .
Poklikejte na aplikaci Terminál .
Když se terminál otevře, zadejte:
tail -F ~/Library/Containers/com.microsoft.CompanyPortalMac.ssoextension/Data/Library/Caches/Logs/Microsoft/SSOExtension/*
Poznámka:
Koncové /* značí, že v případě existence více protokolů budou tyto protokoly sledovány.
% 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)
Při opakování problému mějte okno terminálu otevřeno, abyste mohli pozorovat výstup z protokolů SSOExtension sledovaných pomocí nástroje tail.
Export logů SSO rozšíření v iOSu
V reálném čase není možné zobrazit protokoly rozšíření jednotného přihlašování pro iOS, protože je v systému macOS. Protokoly rozšíření jednotného přihlašování pro iOS je možné exportovat z aplikace Microsoft Authenticator a pak zkontrolovat z jiného zařízení:
Otevřete aplikaci Microsoft Authenticator:
Stiskněte tlačítko nabídky v levém horním rohu.
Zvolte možnost Odeslat názor:
Zvolte možnost "Máte potíže":
Stiskněte možnost Zobrazit diagnostická data:
Tip
Pokud pracujete s podporou Microsoftu, můžete v této fázi stisknout tlačítko Odeslat pro odeslání protokolů podpoře. Tím získáte ID incidentu, které můžete poskytnout vašemu kontaktu z podpory Microsoftu.
Stisknutím tlačítka Kopírovat vše zkopírujte protokoly do schránky zařízení s iOSem. Soubory protokolu pak můžete uložit na jiném místě, kde je můžete zkontrolovat, nebo je odeslat e-mailem nebo jinými metodami sdílení souborů:
Pochopení protokolů rozšíření jednotného přihlašování
Analýza protokolů rozšíření jednotného přihlašování je skvělým způsobem, jak řešit potíže s tokem ověřování z aplikací odesílacích žádosti o ověření do Microsoft Entra ID. Kdykoli je vyvolán Zprostředkovatel rozšíření jednotného přihlašování, dochází k sérii aktivit protokolování, které jsou označovány jako Žádosti o autorizaci. Protokoly obsahují následující užitečné informace pro řešení potíží:
- Konfigurace přepínače funkcí
- Typy žádostí o autorizaci
- Nativní komponenta MSAL
- Jednotné přihlašování nepoužívající MSAL ani prohlížeč
- Interakce s klíčenkou macOS pro načítání a ukládání přihlašovacích údajů
- ID korelace pro události přihlašování Microsoft Entra
- Získání PRT
- Registrace zařízení
Upozornění
Protokoly rozšíření jednotného přihlašování jsou nesmírně podrobné, zejména při práci s operacemi přihlašovacích údajů v Keychainu. Z tohoto důvodu je vždy nejlepší pochopit scénář předtím, než se podíváte na protokoly během řešení potíží.
Struktura protokolu
Protokoly rozšíření SSO jsou rozdělené do sloupců. Následující snímek obrazovky ukazuje rozpis sloupců protokolů:
Sloupec | Název sloupce | Popis |
---|---|---|
1 | Místní datum a čas | Zobrazí se místní datum a čas. |
2 |
I-Information W-Varování Chyba E |
Zobrazí informace, upozornění nebo chyby. |
3 | ID vlákna (TID) | Zobrazí ID vlákna běhu aplikace zprostředkovatele jednotného přihlašování. |
4 | Číslo verze MSAL | Modul plug-in brokeru rozšíření Microsoft Enterprise SSO je postaven jako aplikace MSAL. Tento sloupec označuje verzi knihovny MSAL, kterou používá zprostředkační aplikace. |
5 | Verze macOS | Zobrazení verze operačního systému macOS |
6 | Datum a čas UTC | Zobrazí se datum a čas UTC . |
7 | ID korelace | Řádky v protokolech, které se týkají Microsoft Entra ID nebo operací Keychain, rozšiřují sloupec Datum/Čas UTC o ID korelace. |
8 | Zpráva | Zobrazuje podrobné zprávy protokolů. Většinu informací o řešení potíží najdete v tomto sloupci. |
Konfigurace spouštěcího příznaku
Během konfigurace MDM rozšíření Microsoft Enterprise SSO lze odeslat nepovinná data specifická pro rozšíření jako pokyny ke změně chování SSO rozšíření. Tyto pokyny specifické pro konfiguraci se označují jako příznaky funkcí. Konfigurace přepínače funkce je obzvláště důležitá pro typy žádostí o autorizaci přes jednotné přihlašování, které není typu MSAL/Browser, protože ID balíčku může určit, jestli se rozšíření vyvolá nebo ne. Viz dokumentaci k přepínači funkcí. Každá žádost o autorizaci začíná zprávou o konfiguraci funkčního příznaku. Následující snímek obrazovky vás provede příkladem konfigurace vlajky funkce:
Poznámka | Příznak funkce | Popis |
---|---|---|
1 | prohlížeč_sso_interakce_povolena | Prohlížeč, který není Safari ani založený na MSAL, může inicializovat PRT. |
2 | prohlížeč_sso_deaktivace_mfa | (Nyní zastaralé) Při spouštění přihlašovacích údajů PRT se ve výchozím nastavení vyžaduje vícefaktorové ověřování. Všimněte si, že tato konfigurace je nastavená na hodnotu null , což znamená, že se vynucuje výchozí konfigurace. |
3 | disable_explicit_app_prompt | Nahradí prompt=login v žádostech o ověření z aplikací, aby se snížila četnost výzev. |
4 | Seznam povolených předpon aplikací | Jakákoli aplikace, která není na MSAL založená a má identifikátor balíčku, který začíná na com.microsoft. , může být zachycena a zpracována zprostředkovatelem rozšíření jednotného přihlašování. |
Důležité
Příznaky funkcí nastavené na hodnotu null znamenají, že je nastavená jejich výchozí konfigurace. Podívejte se do dokumentace Feature Flag pro více podrobností.
Tok přihlášení nativní aplikace MSAL
V následující části se dozvíte, jak prozkoumat protokoly rozšíření SSO pro proces ověřování nativní aplikace MSAL. V tomto příkladu jako klientskou aplikaci používáme ukázkovou aplikaci MSAL pro macOS/iOS a aplikace volá rozhraní Microsoft Graph API k zobrazení informací o uživateli přihlášení.
Nativní MSAL: Interaktivní průvodce průchodem
Pro úspěšné interaktivní přihlašování by se měly provést následující akce:
- Uživatel se přihlásí k ukázkové aplikaci MSAL macOS.
- Zprostředkovatel rozšíření jednotného přihlašování Microsoftu je spuštěn a zpracuje požadavek.
- Zprostředkovatel rozšíření Microsoft SSO prochází procesem inicializace, aby získal primární obnovovací token (PRT) pro přihlášeného uživatele.
- Uložte PRT do řetězce klíčů.
- Zkontrolujte přítomnost objektu Registrace zařízení v Microsoft Entra ID (WPJ).
- Vraťte klientským aplikacím přístupový token pro přístup k Microsoft Graphu s oborem User.Read.
Důležité
Ukázkové fragmenty protokolu, které následují, byly opatřeny poznámkami s hlavičkami komentáře //, které se v protokolech nezobrazují. Slouží k ilustraci konkrétní akce, která se provádí. Zdokumentovali jsme fragmenty protokolů tímto způsobem, abychom vám pomohli s operacemi kopírování a vkládání. Kromě toho byly příklady protokolů zkráceny tak, aby zobrazovaly pouze důležité řádky pro řešení potíží.
Uživatel klikne na tlačítko pro spuštění Microsoft Graph API, aby vyvolal proces přihlášení.
//////////////////////////
//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.
Ukázku protokolování je možné rozdělit do tří segmentů:
Segment | Popis |
---|---|
get_accounts_operation |
Zkontroluje, jestli v mezipaměti existují nějaké existující účty. - ClientID: ID aplikace zaregistrované v Microsoft Entra ID pro tuto aplikaci MSAL ADB 3.1.40 označuje verzi modulu plug-in Microsoft Enterprise SSO Extension Broker. |
login |
Zprostředkovatel zpracovává žádost o ID Microsoft Entra: - Zpracování interaktivní žádosti pro jednotné přihlašování (SSO)...: Značí interaktivní žádost. - correlation_id: Užitečné pro referenční srovnávání s protokoly přihlašování na straně serveru Microsoft Entra. - scope: Obor oprávnění rozhraní User.Read API, který se požaduje z Microsoft Graphu - client_version: verze knihovny MSAL, na které aplikace běží - redirect_uri: Aplikace MSAL používají formát msauth.com.<Bundle ID>://auth |
Žádost PRT | Inicializační proces pro interaktivní získání PRT byl zahájen a spustí relaci SSO ve Webview. Microsoft Authentication Broker Service - clientId: 29d9ed98-a469-4536-ade2-f981bc1d605e – Všechny žádosti PRT se provádějí ve službě Microsoft Authentication Broker Service. |
Zobrazí se kontroler jednotného přihlašování a uživateli se zobrazí výzva k zadání přihlašovacího jména Microsoft Entra (UPN/e-mail).
Poznámka:
Kliknutím na i v levém dolním rohu kontroleru webového zobrazení se zobrazí další informace o rozšíření jednotného přihlašování a o specifikách aplikace, která ji vyvolala.
Po úspěšném zadání přihlašovacích údajů Microsoft Entra se do protokolů rozšíření jednotného přihlašování zapíšou následující položky protokolu.
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.
V tomto bodě v toku ověřování/autorizace byl PRT spuštěn a měl by být viditelný v přístupu ke klíčence v macOS. Viz Kontrola přístupu ke klíčence pro PRT. Ukázková aplikace MSAL macOS používá přístupový token přijatý zprostředkovatele rozšíření jednotného přihlašování Microsoftu k zobrazení informací o uživateli.
Dále zkontrolujte protokoly přihlašování Microsoft Entra na straně serveru na základě ID korelace shromážděné z protokolů rozšíření jednotného přihlašování na straně klienta. Další informace najdete v protokolech přihlášení v Microsoft Entra ID.
Zobrazení protokolů přihlášení k Microsoft Entra podle filtru ID korelace
- Otevřete přihlášení Microsoft Entra pro tenanta, ve kterém je aplikace zaregistrovaná.
- Vyberte přihlášení uživatelů (interaktivní).
- Vyberte možnost Přidat filtry a zvolte přepínač Identifikátor korelace.
- Zkopírujte a vložte ID korelace získané z protokolů rozšíření pro jednotné přihlašování a vyberte Použít.
Během procesu interaktivního přihlášení MSAL očekáváme, že se pro prostředek Microsoft Authentication Broker zobrazí interaktivní přihlášení. Tato událost nastane, když uživatel zadá heslo pro inicializaci PRT.
K neinteraktivním přihlašovacím událostem dochází také proto, že PRT je používán k získání přístupového tokenu pro žádost klientské aplikace. Postupujte podle protokolů přihlášení Microsoft Entra pomocí filtru korelačního ID, ale v kroku 2 vyberte Přihlášení uživatelů (neinteraktivní).
Atribut protokolu přihlášení | Popis |
---|---|
Aplikace | Zobrazovaný název registrace aplikace v tenantovi Microsoft Entra, kde se klientská aplikace ověřuje. |
ID aplikace | Jde také o ID klienta pro registraci aplikace v tenantovi Microsoft Entra. |
Prostředek | Prostředek rozhraní API, ke kterému se klientská aplikace pokouší získat přístup. V tomto příkladu je prostředek rozhraní Microsoft Graph API. |
Typ příchozího tokenu | Příchozí typ tokenu Primárního obnovovacího tokenu (PRT) ukazuje vstupní token, který se používá k získání přístupového tokenu pro prostředek. |
Uživatelský agent | Řetězec uživatelského agenta v tomto příkladu ukazuje, že Microsoft SSO Extension je aplikace, která zpracovává tento požadavek. Užitečný indikátor, že se používá rozšíření jednotného přihlašování a probíhá žádost o ověření zprostředkovatele. |
Microsoft Entra App Authentication Library | Když se používá aplikace MSAL, podrobnosti o knihovně a platformě jsou zde zapsány. |
Informace o oboru Oauth | Informace o rozsahu Oauth2 požadované pro přístupový token. (User.Read, profile, openid, email). |
MSAL Native: Návod pro tichý tok
Po určité době už přístupový token nebude platný. Pokud tedy uživatel znovu klikne na tlačítko Volat rozhraní Microsoft Graph API. Rozšíření jednotného přihlašování se pokusí aktualizovat přístupový token pomocí již získaného PRT.
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.
Ukázku protokolování je možné rozdělit do dvou segmentů:
Úsek | Popis |
---|---|
refresh |
Zprostředkovatel zpracovává žádost o ID Microsoft Entra: - Zpracování tichého požadavku jednotného přihlášení...: Označuje tichý požadavek. - correlation_id: Užitečné pro vzájemné odkazování s protokoly přihlašování na straně serveru Microsoft Entra - scope: Obor oprávnění rozhraní User.Read API, který se požaduje z Microsoft Graphu - client_version: verze knihovny MSAL, na které aplikace běží - redirect_uri: Aplikace MSAL používají formát msauth.com.<Bundle ID>://auth Obnovení má výrazné rozdíly v datovém obsahu požadavku: - authority: Obsahuje koncový bod adresy URL tenanta Microsoft Entra místo společného koncového bodu. - home_account_id: Zobrazte uživatelský účet ve formátu <UserObjectId.><ID tenanta> - uživatelské jméno: formát hlavního názvu uživatele (UPN) s hodnotou hash auth.placeholder-XXXXXXXX__domainname.com |
Aktualizace a získání přístupového tokenu PRT | Tato operace znovu ověřuje PRT a v případě potřeby jej obnoví před tím, než vrátí přístupový token volající klientské aplikaci. |
Můžeme znovu použít ID korelace získané z protokolů rozšíření SSO na straně klienta a porovnat je s protokoly přihlašování Microsoft Entra na straně serveru.
Přihlášení Microsoft Entra zobrazuje stejné informace jako prostředek Microsoft Graph z operace login v předchozí části interaktivního přihlášení.
Tok přihlášení aplikace bez MSAL/prohlížečového SSO
V následující části se dozvíte, jak prozkoumat protokoly rozšíření jednotného přihlašování pro tok ověřování aplikací jiného typu než MSAL/Browser. V tomto příkladu jako klientskou aplikaci používáme prohlížeč Apple Safari a aplikace volá webovou aplikaci Office.com (OfficeHome).
Procházení procesu jednotného přihlašování, které není založeno na MSAL ani na prohlížeči
Pro úspěšné přihlášení by se měly provést následující akce:
- Předpokládejme, že uživatel, který už prošel procesem bootstrappingu, má existující PRT.
- Na zařízení se nasazeným nástrojem Microsoft SSO Extension Broker se kontrolují nakonfigurované příznaky funkcí, aby se zajistilo, že rozšíření jednotného přihlašování dokáže aplikaci zpracovat.
- Vzhledem k tomu, že prohlížeč Safari dodržuje Apple Networking Stack, se rozšíření jednotného přihlašování pokusí zachytit žádost o ověření Microsoft Entra.
- PRT se používá k získání tokenu pro požadovaný prostředek.
- Pokud je zařízení zaregistrované v Microsoft Entra, předá ID zařízení spolu s požadavkem.
- Rozšíření jednotného přihlašování naplní hlavičku požadavku prohlížeče pro přihlášení k prostředku.
Následující protokoly na straně klienta SSO Extension ukazují, že požadavek je transparentně zpracováván zprostředkovatelem rozšíření SSO, aby byl požadavek splněn.
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
Komponenta protokolu rozšíření SSO | Popis |
---|---|
Vytvoření žádosti o jednotné přihlašování v prohlížeči | Všechny požadavky na jednotné přihlašování jiné než MSAL/Browser začínají tímto řádkem: - identifikátor balíčku: ID balíčku: com.apple.Safari - iniciace zdroje: Webová adresa URL, ke které prohlížeč přistupuje, před přístupem na některou z přihlašovacích adres URL pro Microsoft Entra ID (https://office.com) |
Spuštění žádosti o jednotné přihlašování v prohlížeči pro autentizační autoritu | Vyřeší počet PRT a zjistí, zda je zařízení zaregistrované: https://login.microsoftonline.com/common, počet PRTů 1, zařízení registrováno 1 |
Identifikátor korelace | [Jednotné přihlašování prohlížeče] Zpracování požadavku s PRTs a ID korelace v hlavičkách (null), dotazu <CorrelationID>. Toto ID je důležité pro křížové odkazování s protokoly přihlašování na straně serveru Microsoft Entra. |
Registrace zařízení | Volitelně, pokud je zařízení zaregistrováno v Microsoft Entra, dokáže rozšíření SSO předat hlavičku zařízení v žádostech o SSO v prohlížeči: - Nalezena registrace v - login.microsoftonline.com, isSameAsRequestEnvironment: Ano Předání hlavičky zařízení v jednotném přihlašování v prohlížeči pro ID zařízení 43cfaf69-0f94-4d2e-a815-c103226c4c04 |
Dále použijte ID korelace získané z protokolů rozšíření jednotného přihlašování prohlížeče ke zkřížení s protokoly přihlášení v Microsoft Entra.
Atribut protokolu přihlášení | Popis |
---|---|
Aplikace | Zobrazovaný název registrace aplikace v tenantovi Microsoft Entra, kde se klientská aplikace ověřuje. V tomto příkladu je zobrazovaný název OfficeHome. |
ID aplikace | Je také označováno jako ID klienta registrace aplikace tenanta Microsoft Entra. |
Prostředek | Prostředek rozhraní API, ke kterému se klientská aplikace pokouší získat přístup. V tomto příkladu je zdrojem webová aplikace OfficeHome . |
Typ příchozího tokenu | Typ příchozího tokenu primárního obnovovacího tokenu (PRT) ukazuje vstupní token, který se používá k získání přístupového tokenu pro prostředek. |
Zjištěná metoda ověřování | Na kartě Podrobnosti o ověřování je hodnota modulu plug-in Microsoft Entra SSO užitečným indikátorem, že se rozšíření pro jednotné přihlašování používá k usnadnění žádosti o jednotné přihlašování v prohlížeči. |
Verze rozšíření Microsoft Entra SSO | Na kartě Další podrobnosti tato hodnota zobrazuje verzi aplikace zprostředkovatele rozšíření jednotného přihlašování Microsoft Enterprise. |
ID zařízení | Pokud je zařízení zaregistrované, rozšíření jednotného přihlašování může předat ID zařízení pro zpracování žádostí o ověření zařízení. |
Operační systém | Zobrazuje typ operačního systému. |
Vyhovující | Rozšíření jednotného přihlašování může usnadnit zásady souladu předáním informací o zařízení. Požadavky: - Registrace zařízení Microsoft Entra - Správa MDM - Intune nebo Dodržování předpisů pro partnery Intune |
Spravované | Označuje, že zařízení je pod správou. |
Typ spojení | macOS a iOS, pokud jsou zaregistrované, mohou být pouze typu: Microsoft Entra registrované. |
Tip
Pokud používáte Jamf Connect, doporučujeme postupovat podle nejnovějších pokynů Jamf k integraci Jamf Connect s Microsoft Entra ID. Doporučený model integrace zajišťuje, aby Jamf Connect správně fungoval s vašimi zásadami podmíněného přístupu a ochranou Microsoft Entra ID Protection.