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:
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.com
dialogové 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.
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:
- Informace o základních konceptech ověřování a autorizace na platformě Microsoft Identity Platform najdete v tématu Ověřování a autorizace .
- Informace o použití přístupových tokenů, obnovovacích tokenů a tokenů ID při ověřování a autorizaci najdete v tématu Tokeny zabezpečení.
- Informace o procesu registrace aplikace, aby bylo možné ji integrovat s platformou Microsoft Identity Platform, najdete v aplikačním modelu .
- Informace o bezpečném použití deklarací identity pro autorizační logiku v aplikacích najdete v tématu Zabezpečené aplikace a rozhraní API.
Další informace o toku přihlašování k aplikaci:
- Další informace o dalších scénářích ověřování uživatelů podporovaných platformou Microsoft Identity Platform najdete v tématu Toky ověřování a scénáře aplikací.
- V knihovnách MSAL se dozvíte o knihovnách Microsoftu, které vám pomůžou vyvíjet aplikace, které pracují s účty Microsoft, účty Microsoft Entra a uživateli Azure AD B2C, a to v jediném zjednodušeném programovacím modelu.