Tok přihlašování aplikací pomocí platformy Microsoft Identity Platform

Toto téma popisuje základní tok přihlašování pro webové, desktopové a mobilní aplikace pomocí platformy Microsoft Identity Platform. Informace o scénářích přihlašování podporovaných platformou Microsoft Identity Platform najdete ve scénářích ověřování a scénářích aplikací.

Tok přihlášení k webové aplikaci

Když uživatel přejde v prohlížeči do webové aplikace, stane se toto:

  • Webová aplikace určuje, jestli je uživatel ověřený.
  • Pokud uživatel není ověřený, webová aplikace deleguje na ID Microsoft Entra, aby se přihlásila. Toto přihlášení bude vyhovovat zásadám organizace, což může znamenat, že uživatel zadá svoje přihlašovací údaje pomocí vícefaktorového ověřování (někdy označovaného jako dvojúrovňové ověřování nebo 2FA) nebo vůbec nepoužívá heslo (například windows Hello).
  • Uživateli se zobrazí výzva k vyjádření souhlasu s přístupem, který klientská aplikace potřebuje. To je důvod, proč musí být klientské aplikace zaregistrované v Microsoft Entra ID, aby platforma Microsoft Identity Platform mohl doručovat tokeny představující přístup, ke kterému uživatel souhlasil.

Po úspěšném ověření uživatele:

  • Platforma Microsoft Identity Platform odešle do webové aplikace token.
  • Soubor cookie se uloží, přidružený k doméně Microsoft Entra, která obsahuje identitu uživatele v souboru cookie souboru JAR prohlížeče. Když příště aplikace použije prohlížeč k přechodu na koncový bod autorizace Microsoft Identity Platform, prohlížeč zobrazí soubor cookie, aby se uživatel nemusel znovu přihlásit. To je také způsob, jakým se jednotné přihlašování dosahuje. Soubor cookie je vytvořen společností Microsoft Entra ID a lze jej pochopit pouze pomocí Microsoft Entra ID.
  • Webová aplikace pak token ověří. Pokud ověření proběhne úspěšně, webová aplikace zobrazí chráněnou stránku a uloží soubor cookie relace do souboru cookie prohlížeče. Když uživatel přejde na jinou stránku, webová aplikace ví, že se uživatel ověřuje na základě souboru cookie relace.

Následující sekvenční diagram shrnuje tuto interakci:

web app authentication process

Jak webová aplikace určuje, jestli je uživatel ověřený

Vývojáři webových aplikací můžou označit, jestli všechny nebo jenom některé stránky vyžadují ověření. Například v ASP.NET/ASP.NET Core se to provádí přidáním [Authorize] atributu do akcí kontroleru.

Tento atribut způsobí, že ASP.NET zkontroluje přítomnost souboru cookie relace obsahujícího identitu uživatele. Pokud soubor cookie není k dispozici, ASP.NET přesměruje ověřování na zadaného zprostředkovatele identity. Pokud je zprostředkovatelem identity Microsoft Entra ID, webová aplikace přesměruje ověřování na https://login.microsoftonline.comdialogové okno pro přihlášení.

Jak webová aplikace deleguje přihlášení k platformě Microsoft Identity Platform a získá token

Ověřování uživatelů probíhá prostřednictvím prohlížeče. Protokol OpenID používá standardní zprávy protokolu HTTP.

  • Webová aplikace odešle do prohlížeče http 302 (přesměrování), aby používala platformu Microsoft Identity Platform.
  • Při ověření uživatele odešle platforma Microsoft Identity Platform token do webové aplikace pomocí přesměrování v prohlížeči.
  • Přesměrování poskytuje webová aplikace ve formě identifikátoru URI přesměrování. Tento identifikátor URI přesměrování je registrován v objektu aplikace Microsoft Entra. Může existovat několik identifikátorů URI přesměrování, protože aplikace se může nasadit na několik adres URL. Webová aplikace tedy bude také muset zadat identifikátor URI přesměrování, který se má použít.
  • ID Microsoft Entra ověřuje, že identifikátor URI přesměrování odeslaný webovou aplikací je jedním z registrovaných identifikátorů URI přesměrování aplikace.

Tok přihlášení k desktopové a mobilní aplikaci

Výše popsaný tok platí pro desktopové a mobilní aplikace s mírnými rozdíly.

Desktopové a mobilní aplikace můžou k ověřování použít vložený webový ovládací prvek nebo systémový prohlížeč. Následující diagram znázorňuje, jak desktopová nebo mobilní aplikace používá knihovnu MSAL (Microsoft Authentication Library) k získání přístupových tokenů a volání webových rozhraní API.

Desktop app how it appears to be

Knihovna MSAL používá k získání tokenů prohlížeč. Stejně jako u webových aplikací se ověřování deleguje na platformu Microsoft Identity Platform.

Vzhledem k tomu, že Microsoft Entra ID ukládá stejný soubor cookie identity v prohlížeči jako u webových aplikací, pokud nativní nebo mobilní aplikace používá systémový prohlížeč, okamžitě získá jednotné přihlašování s odpovídající webovou aplikací.

Služba MSAL ve výchozím nastavení používá systémový prohlížeč. Výjimkou jsou desktopové aplikace rozhraní .NET Framework, kde se k zajištění integrovaného uživatelského prostředí používá vložený ovládací prvek.

Další kroky

Další témata týkající se základů ověřování a autorizace:

Další informace o toku přihlašování k aplikaci: