Egyoldalas alkalmazás bejelentkezése az OAuth 2.0 implicit folyamat használatával Azure Active Directory B2C-ben

Fontos

2025. május 1-jéhez Azure AD B2C már nem lesz elérhető új ügyfelek számára. További információ a GYIK-ben.

Számos modern alkalmazás rendelkezik egyoldalas alkalmazás (SPA) előtérrel, amely elsősorban JavaScriptben van megírva. Az alkalmazást gyakran olyan keretrendszer használatával írják, mint a React, az Angular vagy a Vue.js. Az SPA-k és más, elsősorban böngészőben futó JavaScript-alkalmazások további kihívásokkal szembesülnek a hitelesítés során:

  • Ezeknek az alkalmazásoknak a biztonsági jellemzői eltérnek a hagyományos szerveralapú webalkalmazásokétól.

  • Számos engedélyezési kiszolgáló és identitásszolgáltató nem támogatja az eredetközi erőforrás-megosztási (CORS) kéréseket.

  • A teljes oldalas böngésző átirányítása az alkalmazástól invazív lehet a felhasználói élmény szempontjából.

Figyelmeztetés

Microsoft azt javasolja, hogy ne használja az implicit engedélyezési folyamatot. Az SLA-k támogatásának ajánlott módja az OAuth 2.0 engedélyezési kódfolyamat (PKCE-vel). A folyamat bizonyos konfigurációihoz nagyon nagy megbízhatóságra van szükség az alkalmazásban, és olyan kockázatokat hordoz, amelyek más folyamatokban nincsenek jelen. Ezt a folyamatot csak akkor érdemes használni, ha más biztonságosabb folyamatok nem életképesek. További információkért lásd az implicit engedélyezési folyamattal kapcsolatos biztonsági problémákat.

Egyes keretrendszerek, például aMSAL.js 1.x, csak az implicit engedélyezési folyamatot támogatják. Ezekben az esetekben Azure Active Directory B2C (Azure AD B2C) támogatja az OAuth 2.0 engedélyezési implicit engedélyezési folyamatot. Az adatfolyamot az OAuth 2.0 specifikáció 4.2. szakasza ismerteti. Implicit folyamat esetén az alkalmazás közvetlenül a Azure AD B2C-engedélyezési végponttól kap jogkivonatokat kiszolgáló–kiszolgáló közötti csere nélkül. Az összes hitelesítési logika és munkamenet-kezelés teljes egészében a JavaScript-kliensben történik, oldalátirányítással vagy felugró ablakkal.

Azure AD B2C a szabványos OAuth 2.0 implicit folyamatot több mint egyszerű hitelesítésre és engedélyezésre terjeszti ki. Azure AD B2C bevezeti a policy paramétert. A policy paraméterrel az OAuth 2.0 használatával szabályzatokat adhat hozzá az alkalmazáshoz, például regisztrációs, bejelentkezési és profilkezelési felhasználói folyamatokat. A cikkben található HTTP-kérések példájában a {tenant}.onmicrosoft.com szemléltetést használjuk. Cserélje le {tenant}a bérlő nevét , ha van ilyen. Emellett létre kell hoznia egy felhasználói folyamatot is.

Az alábbi ábrán szemléltetjük az implicit bejelentkezési folyamatot. Az egyes lépéseket a cikk későbbi részében ismertetjük részletesen.

Úszósáv-stílusú diagram, amely az OpenID Connect implicit áramlást mutatja

Hitelesítési kérelmek küldése

Ha a webalkalmazásnak hitelesítenie kell a felhasználót, és futtatnia kell egy felhasználói folyamatot, a felhasználót az Azure AD B2C /authorize végpontjára irányítja. A felhasználó a felhasználói folyamattól függően hajtja végre a műveletet.

Ebben a kérésben az ügyfél jelzi azokat az engedélyeket, amelyeket be kell szereznie a felhasználótól a scope paraméterben és a futtatni kívánt felhasználói folyamatban. Ha szeretné megtapasztalni, hogyan működik a kérés, próbálja meg beilleszteni a kérést egy böngészőbe, és futtatni. Helyettesít:

  • {tenant} az Azure AD B2C-bérlő nevével.

  • 00001111-aaaa-2222-bbbb-3333cccc4444 a bérlőben regisztrált alkalmazás alkalmazásazonosítójával.

  • {policy} egy bérlői szabályzat nevével, amit létrehoztál, például b2c_1_sign_in.

GET https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{policy}/oauth2/v2.0/authorize?
client_id=00001111-aaaa-2222-bbbb-3333cccc4444
&response_type=id_token+token
&redirect_uri=https%3A%2F%2Faadb2cplayground.azurewebsites.net%2F
&response_mode=fragment
&scope=openid%20offline_access
&state=arbitrary_data_you_can_receive_in_the_response
&nonce=12345

A HTTP GET kérelem paramétereit az alábbi táblázat ismerteti.

Paraméter Kötelező Leírás
{bérlő} Igen Azure AD B2C bérlő neve
politikai irányelv / szabályzat Igen A futtatni kívánt felhasználói folyamat neve. Adja meg a Azure AD B2C-bérlőben létrehozott felhasználói folyamat nevét. Például: b2c_1_sign_in, b2c_1_sign_upvagy b2c_1_edit_profile.
kliens_azonosító Igen Az alkalmazáshoz hozzárendelt Azure portál alkalmazásazonosító.
válasz_típus Igen Az OpenID Connect bejelentkezés tartalmaznia kell id_token. Tartalmazhatja a válasz típusát tokenis. Ha a következőt használja token, az alkalmazás azonnal kaphat hozzáférési jogkivonatot az engedélyezési végponttól anélkül, hogy második kérést küldene az engedélyezési végpontnak. Ha a token választípust használja, akkor a scope paraméternek tartalmaznia kell egy hatókört, amely jelzi, hogy melyik erőforráshoz kell a tokent kiadni.
átiranyítási_URI Nem Az alkalmazás átirányítási URI-ja, ahol az alkalmazás hitelesítési válaszokat küldhet és fogadhat. Pontosan meg kell egyeznie a portálon regisztrált alkalmazáshoz hozzáadott átirányítási URI-k egyikével, azzal a különbséggel, hogy URL-kódolásúnak kell lennie.
válasz_mód Nem Megadja annak a módszerét, hogy az eredményül kapott jogkivonat hogyan küldhető vissza az alkalmazás számára. Implicit folyamatok esetén használja a fragment.
hatókör Igen A hatókörök szóközzel elválasztott listája. Egyetlen hatókörérték jelzi a Microsoft Entra ID-nek, hogy mindkét kérelemhez tartozó engedélyt. A openid hatókör feljogosítja a felhasználó bejelentkeztetésére és az ő adatainak ID tokenek formájában történő lekérésére. A offline_access hatókör nem kötelező a webalkalmazások esetében. Azt jelzi, hogy az alkalmazásnak frissítési jogkivonatra van szüksége az erőforrásokhoz való hosszú élettartamú hozzáféréshez.
állam Nem A kérelemben szereplő érték, amely a jogkivonat-válaszban is visszaadódik. Ez lehet bármilyen használni kívánt tartalom karakterlánca. Általában véletlenszerűen generált, egyedi értéket használnak a webhelyek közötti kéréshamisítási támadások megakadályozására. Az állapot a felhasználó állapotára vonatkozó információk kódolására is használható az alkalmazásban a hitelesítési kérelem bekövetkezése előtt, például a felhasználó által használt oldalt vagy a végrehajtott felhasználói folyamatot.
egyszeri kulcs Igen A kérésben szereplő (az alkalmazás által generált) érték, amely igényként szerepel az eredményül kapott azonosító tokenben. Az alkalmazás ezután ellenőrizheti ezt az értéket a tokenek visszajátszási támadásainak csökkentése érdekében. Az érték általában egy véletlenszerű, egyedi sztring, amely a kérés eredetének azonosítására használható.
kér Nem A szükséges felhasználói beavatkozás típusa. Jelenleg az egyetlen érvényes érték a login. Ez a paraméter arra kényszeríti a felhasználót, hogy adja meg a hitelesítő adatait a kéréshez. Az egyetlen Sign-On nem lép életbe.

Ez a folyamat interaktív része. A rendszer megkéri a felhasználót, hogy fejezze be a szabályzat munkafolyamatát. Előfordulhat, hogy a felhasználónak meg kell adnia a felhasználónevét és jelszavát, be kell jelentkeznie egy közösségi identitással, regisztrálnia kell egy helyi fiókot, vagy bármilyen más lépést kell végrehajtania. A felhasználói műveletek a felhasználói folyamat definiálásától függenek.

Miután a felhasználó befejezte a felhasználói folyamatot, Azure az AD B2C a redirect_uri keresztül választ ad vissza az alkalmazásnak. A paraméterben megadott metódust response_mode használja. A válasz pontosan ugyanaz az egyes felhasználói műveleti forgatókönyvek esetében, függetlenül a végrehajtott felhasználói folyamattól.

Sikeres válasz

Sikeres válasz, amely response_mode=fragment és response_type=id_token+token használ, a következőképpen néz ki, olvashatóbbá tettük sortörésekkel:

GET https://aadb2cplayground.azurewebsites.net/#
access_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Ik5HVEZ2ZEstZnl0aEV1Q...
&token_type=Bearer
&expires_in=3599
&scope="00001111-aaaa-2222-bbbb-3333cccc4444 offline_access",
&id_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Ik5HVEZ2ZEstZnl0aEV1Q...
&state=arbitrary_data_you_sent_earlier
Paraméter Leírás
hozzáférési token Az Azure AD B2C által az alkalmazás számára kért hozzáférési jogkivonat.
token_típus Azonosító típusérték. Az AD B2C Azure csak a Bearer típust támogatja.
lejár_kor A hozzáférési jogkivonat érvényességi ideje (másodpercben).
hatókör Azok a hatókörök, amelyekre a jogkivonat érvényes. A hatóköröket is használhatja a tokenek gyorsítótárazásához a későbbi használatra.
id_token (azonosító token) Az alkalmazás által kért azonosító token. Az azonosító jogkivonat használatával ellenőrizheti a felhasználó identitását, és munkamenetet indíthat a felhasználóval. További információért az azonosító jogkivonatokról és azok tartalmáról lásd az Azure AD B2C-token referenciát.
állam Ha egy state paraméter szerepel a kérelemben, akkor ugyanaz az érték jelenik meg a válaszban. Az alkalmazásnak ellenőriznie kell, hogy a state kérés és a válasz értékei azonosak-e.

Hibaválasz

A hibaválaszok elküldhetők az átirányítási URI-nak is, hogy az alkalmazás megfelelően kezelje őket:

GET https://aadb2cplayground.azurewebsites.net/#
error=access_denied
&error_description=the+user+canceled+the+authentication
&state=arbitrary_data_you_can_receive_in_the_response
Paraméter Leírás
hiba A fellépő hibatípusok osztályozására használt kód.
hiba_leírás Egy adott hibaüzenet, amely segíthet azonosítani a hitelesítési hiba kiváltó okát.
állam Ha egy state paraméter szerepel a kérelemben, akkor ugyanaz az érték jelenik meg a válaszban. Az alkalmazásnak ellenőriznie kell, hogy a state kérés és a válasz értékei azonosak-e.

Az azonosító jogkivonat érvényesítése

Az azonosító jogkivonat fogadása nem elegendő a felhasználó hitelesítéséhez. Ellenőrizze az azonosító jogkivonat aláírását, és ellenőrizze a jogkivonatban szereplő jogcímeket az alkalmazás követelményeinek megfelelően. Azure Az AD B2C JSON webes jogkivonatokat (JWTs) és nyilvános kulcsú titkosítást használ a jogkivonatok aláírásához és érvényességének ellenőrzéséhez.

Számos nyílt forráskódú könyvtár érhető el a JWT-k érvényesítéséhez, attól függően, hogy melyik nyelvet részesíti előnyben. Fontolja meg az elérhető nyílt forráskódú kódtárak feltárását a saját érvényesítési logika megvalósítása helyett. A cikkben található információk segítségével elsajátíthatja, hogyan kell helyesen használni ezeket a kódtárakat.

Azure Az AD B2C rendelkezik OpenID Connect metaadat-végponttal. Az alkalmazások a végpont használatával lekérhetik Azure AD B2C-vel kapcsolatos információkat futásidőben. Ezek az információk a végpontokat, a jogkivonatok tartalmát és a jogkivonat-aláíró kulcsokat tartalmazzák. A Azure AD B2C-bérlő minden felhasználói folyamatához JSON-metaadat-dokumentum tartozik. A bérlőben b2c_1_sign_in elnevezett fabrikamb2c.onmicrosoft.com felhasználói folyamat metaadat-dokumentuma például a következő helyen található:

https://fabrikamb2c.b2clogin.com/fabrikamb2c.onmicrosoft.com/b2c_1_sign_in/v2.0/.well-known/openid-configuration

Ennek a konfigurációs dokumentumnak az egyik tulajdonsága a jwks_uri. Ugyanannak a felhasználói folyamatnak az értéke a következő lenne:

https://fabrikamb2c.b2clogin.com/fabrikamb2c.onmicrosoft.com/b2c_1_sign_in/discovery/v2.0/keys

Annak megállapításához, hogy melyik felhasználói folyamatot használta az azonosító jogkivonat aláírásához (és honnan kérje le a metaadatokat), az alábbi lehetőségek bármelyikét használhatja:

  • A felhasználói folyamat neve szerepel a jogcímben acrid_token. Az azonosító jogkivonat jogcímeinek elemzésével kapcsolatos információkért tekintse meg az Azure AD B2C-token referenciáját.

  • Kódolja a felhasználói folyamatot a state paraméter értékében a kérés kiadásakor. Ezután dekódolja a paramétert state annak meghatározásához, hogy melyik felhasználói folyamatot használta.

Miután beszerezte a metaadat-dokumentumot az OpenID Csatlakozás metaadat-végpontról, az RSA-256 nyilvános kulcsokkal (ezen a végponton található) ellenőrizheti az azonosító jogkivonat aláírását. Ezen a végponton bármely időpontban több kulcs is szerepelhet, amelyek mindegyikét egy kid azonosít. A id_token fejlécében egy kid állítás is található. Azt jelzi, hogy a kulcsok közül melyiket használta az azonosító jogkivonat aláírásához. További információkért, beleértve a tokenek érvényesítéséről való tanulást, lásd az Azure AD B2C token referenciát.

Az azonosító token aláírásának ellenőrzése után több állítást is meg kell vizsgálni. Például:

  • Ellenőrizze a nonce igényt a jogkivonat-visszajátszási támadások megakadályozása érdekében. Az értékének a bejelentkezési kérelemben megadott értéknek kell lennie.

  • Ellenőrizze az igényt aud, és győződjön meg arról, hogy az azonosító jogkivonat az Ön alkalmazásához került kiadásra. Az értékének az alkalmazás alkalmazásazonosítójának kell lennie.

  • Ellenőrizze a iat és exp állításokat, hogy a token nem járt-e le.

Számos további ellenőrzést, amelyeket el kell végeznie, részletesen ismerteti az OpenID Connect Core Spec. A forgatókönyvtől függően további igényeket is érvényesíthet. Néhány gyakori ellenőrzés a következők:

  • Annak biztosítása, hogy a felhasználó vagy szervezet regisztrált-e az alkalmazásra.

  • Annak biztosítása, hogy a felhasználó megfelelő engedélyekkel és jogosultságokkal rendelkezzen.

  • A hitelesítés bizonyos erősségének biztosítása, például Microsoft Entra többtényezős hitelesítés használatával.

Az egy azonosító tokenben lévő állításokról további információt az Azure AD B2C token referenciájában talál.

Az azonosító jogkivonat ellenőrzése után megkezdheti a munkamenetet a felhasználóval. Az alkalmazásban az azonosító jogkivonatban található jogcímekkel szerezze be a felhasználóval kapcsolatos információkat. Ezek az információk felhasználhatók megjelenítésre, rekordokra, engedélyezésre stb.

Hozzáférési jogkivonatok lekérése

Ha a webalkalmazásoknak csak felhasználói folyamatokat kell végrehajtaniuk, kihagyhatja a következő néhány szakaszt. Az alábbi szakaszokban szereplő információk csak azokra a webalkalmazásokra vonatkoznak, amelyeknek hitelesített hívásokat kell indítaniuk egy olyan webes API-ba, amelyet maga Azure AD B2C véd.

Most, hogy aláírta a felhasználót az SPA-ba, hozzáférési jogkivonatokat kaphat a Microsoft Entra ID által védett webes API-k meghívásához. Még ha már kapott is jogkivonatot a token választípus használatával, ezzel a módszerrel tud további erőforrások jogkivonatait szerezni anélkül, hogy a felhasználót újra bejelentkezésre kényszerítené.

Egy tipikus webalkalmazás-folyamatban kérést kell küldenie a /token végpontnak. A végpont azonban nem támogatja a CORS-kéréseket, így a frissítési jogkivonat lekéréséhez AJAX-hívások nem lehetségesek. Ehelyett egy rejtett HTML iframe-elem implicit folyamatával új jogkivonatokat szerezhet be más webes API-khoz. Íme egy példa sortörésekkel az olvashatóság érdekében:

https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{policy}/oauth2/v2.0/authorize?
client_id=00001111-aaaa-2222-bbbb-3333cccc4444
&response_type=token
&redirect_uri=https%3A%2F%2Faadb2cplayground.azurewebsites.net%2F
&scope=https%3A%2F%2Fapi.contoso.com%2Ftasks.read
&response_mode=fragment
&state=arbitrary_data_you_can_receive_in_the_response
&nonce=12345
&prompt=none
Paraméter Szükséges? Leírás
{bérlő} Kötelező Azure AD B2C bérlő neve
politikai irányelv / szabályzat Kötelező A futtatni kívánt felhasználói folyamat. Adja meg a Azure AD B2C-bérlőben létrehozott felhasználói folyamat nevét. Például: b2c_1_sign_in, b2c_1_sign_upvagy b2c_1_edit_profile.
kliens_azonosító Kötelező Az alkalmazáshoz rendelt alkalmazásazonosító a Azure portálon.
válasz_típus Kötelező Tartalmaznia kell id_token az OpenID Connect-bejelentkezéshez. Tartalmazhatja a válasz típusát tokenis. Ha itt használja token , az alkalmazás azonnal kaphat egy hozzáférési jogkivonatot az engedélyezési végponttól anélkül, hogy második kérést küldene az engedélyezési végpontnak. Ha a token választípust használja, akkor a scope paraméternek tartalmaznia kell egy hatókört, amely jelzi, hogy melyik erőforráshoz kell a tokent kiadni.
átiranyítási_URI Ajánlott Az alkalmazás átirányítási URI-ja, ahol az alkalmazás hitelesítési válaszokat küldhet és fogadhat. Pontosan meg kell egyeznie a portálon regisztrált átirányítási URI-k egyikével, kivéve, hogy URL-címkóddal kell rendelkeznie.
hatókör Kötelező A hatókörök szóközzel elválasztott listája. A jogkivonatok lekéréséhez adja meg a kívánt erőforráshoz szükséges összes hatókört.
válasz_mód Ajánlott Megadja azt a módszert, amellyel a rendszer visszaküldi az eredményül kapott jogkivonatot az alkalmazásnak. Implicit áramláshoz használja a fragment. Két másik mód is megadható, query és form_post, de nem működnek az implicit folyamatban.
állam Ajánlott A token válaszában visszaadott, a kérésben szereplő érték. Ez lehet bármilyen használni kívánt tartalom karakterlánca. Általában véletlenszerűen generált, egyedi értéket használnak a webhelyek közötti kéréshamisítási támadások megakadályozására. Az állapot a felhasználó állapotával kapcsolatos információk kódolására is használható az alkalmazásban a hitelesítési kérelem előtt. Például az az oldal vagy nézet, amelyen a felhasználó volt.
egyszeri kulcs Kötelező A kérelemben szereplő érték, amelyet az alkalmazás hoz létre, és amely jogcímként szerepel az eredményül kapott azonosító jogkivonatban. Az alkalmazás ezután ellenőrizheti ezt az értéket a tokenek visszajátszási támadásainak csökkentése érdekében. Az érték általában egy véletlenszerű, egyedi sztring, amely azonosítja a kérés eredetét.
kér Kötelező Ha frissíteni szeretne és jogkivonatokat kíván lekérni egy rejtett iframe-ben, akkor prompt=none használatával győződjön meg róla, hogy az iframe nem akad el a bejelentkezési oldalon, és azonnal visszatér.
bejelentkezési tipp Kötelező Ha frissíteni szeretné és jogkivonatokat szeretne lekérni egy rejtett iframe-ben, adja meg a felhasználó felhasználónevét ebben a tippben, hogy megkülönböztesse a felhasználó adott időpontban több munkamenetét. A felhasználónevet egy korábbi bejelentkezésből is kinyerheti a preferred_username jogosultság használatával (a profile hatókör szükséges a preferred_username jogosultság fogadásához).
tartomány_tipp Kötelező A következők egyike lehet: consumers vagy organizations. A tokenek frissítéséhez és beszerzéséhez a rejtett iframe-ben adja meg az domain_hint értéket a kérelemben. Az tid jogcímet egy korábbi bejelentkezési azonosító jogkivonatból bontsa ki annak érdekében, hogy eldönthesse, melyik értéket használja (a profile hatókör szükséges a tid jogcím fogadásához). Ha a tid jogcím értéke 9188040d-6c67-4c5b-b112-36a304b66dad, használja a domain_hint=consumers. Ellenkező esetben használja a domain_hint=organizations.

A paraméter beállításával prompt=none ez a kérés azonnal sikeres vagy sikertelen lesz, és visszatér az alkalmazáshoz. A rendszer sikeres választ küld az alkalmazásnak az átirányítási URI-n keresztül a paraméterben megadott response_mode metódussal.

Sikeres válasz

A sikeres válasz response_mode=fragment használatával ilyen példaként néz ki:

GET https://aadb2cplayground.azurewebsites.net/#
access_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Ik5HVEZ2ZEstZnl0aEV1Q...
&state=arbitrary_data_you_sent_earlier
&token_type=Bearer
&expires_in=3599
&scope=https%3A%2F%2Fapi.contoso.com%2Ftasks.read
Paraméter Leírás
hozzáférési token Az alkalmazás által kért token.
token_típus A token típusa mindig Bearer lesz.
állam Ha egy state paraméter szerepel a kérelemben, akkor ugyanaz az érték jelenik meg a válaszban. Az alkalmazásnak ellenőriznie kell, hogy a state kérés és a válasz értékei azonosak-e.
lejár_kor Mennyi ideig érvényes a hozzáférési jogkivonat (másodpercben).
hatókör Azok a hatókörök, amelyekre a hozzáférési jogkivonat érvényes.

Hibaválasz

A hibaválaszok az átirányítási URI-ra is elküldhetők, hogy az alkalmazás megfelelően tudja kezelni őket. A esetében prompt=nonea várt hiba az alábbi példához hasonlóan néz ki:

GET https://aadb2cplayground.azurewebsites.net/#
error=user_authentication_required
&error_description=the+request+could+not+be+completed+silently
Paraméter Leírás
hiba Hibakód-karakterlánc, amely a előforduló hibatípusok osztályozására használható. A sztring használatával is reagálhat a hibákra.
hiba_leírás Egy adott hibaüzenet, amely segíthet azonosítani a hitelesítési hiba kiváltó okát.

Ha ezt a hibát az iframe-kérelemben kapja, a felhasználónak újra interaktívan be kell jelentkeznie egy új jogkivonat lekéréséhez.

Tokenek frissítése

Az azonosító jogkivonatok és a hozzáférési jogkivonatok rövid idő után lejárnak. Az alkalmazásnak fel kell készülnie a jogkivonatok rendszeres frissítésére. Az implicit folyamatok biztonsági okokból nem teszik lehetővé frissítési jogkivonat beszerzését. Bármilyen típusú token frissítéséhez használja az implicit folyamatot a HTML iframe elemben. Az engedélyezési kérelemben adja meg a paramétert prompt=none . Új id_token érték fogadásához mindenképpen használja response_type=id_token a és , scope=openidvalamint egy nonce paramétert.

Bejelentkezési kérés küldése

Ha ki szeretné jelentkeztetni a felhasználót az alkalmazásból, átirányítsa a felhasználót Azure AD B2C kijelentkezési végpontjára. Ezután törölheti a felhasználó munkamenetét az alkalmazásban. Ha nem irányítja át a felhasználót, előfordulhat, hogy újrahitelesíteni tudják az alkalmazást anélkül, hogy újból meg kellene adniuk a hitelesítő adataikat, mert érvényes egyetlen Sign-On munkamenettel rendelkeznek Azure AD B2C-vel.

Egyszerűen átirányíthatja a felhasználót az end_session_endpoint című témakörben leírt OpenID Csatlakozás metaadat-dokumentumban felsorolt adatokra. Például:

GET https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{policy}/oauth2/v2.0/logout?post_logout_redirect_uri=https%3A%2F%2Faadb2cplayground.azurewebsites.net%2F
Paraméter Kötelező Leírás
{bérlő} Igen Az Azure AD B2C-bérlő neve.
politikai irányelv / szabályzat Igen Az a felhasználói folyamat, amellyel ki szeretné jelentkeztetni a felhasználót az alkalmazásból. Ennek ugyanannak a felhasználói folyamatnak kell lennie, amelyet az alkalmazás a felhasználó bejelentkezéséhez használt.
kijelentkezés_utáni_átirányítás_uri Nem A sikeres kijelentkezés után a felhasználónak átirányítandó URL-cím. Ha nem tartalmazza, Azure AD B2C egy általános üzenetet jelenít meg a felhasználónak.
állam Nem Ha egy state paraméter szerepel a kérelemben, akkor ugyanaz az érték jelenik meg a válaszban. Az alkalmazásnak ellenőriznie kell, hogy a kérelemben és a válaszban szereplő state értékek azonosak-e.

Megjegyzés:

A felhasználó end_session_endpoint-ra irányítása részben törli a felhasználó Single Sign-On állapotát az Azure AD B2C-vel. Azonban nem jelentkezteti ki a felhasználót a felhasználó közösségi identitásszolgáltatói munkamenetéből. Ha a felhasználó ugyanazt az identitásszolgáltatót választja ki egy későbbi bejelentkezés során, a rendszer újra hitelesíti magát a hitelesítő adatai megadása nélkül. Ha egy felhasználó ki szeretne jelentkezni az Azure AD B2C-alkalmazásból, az nem feltétlenül jelenti azt, hogy például teljesen ki szeretne jelentkezni a Facebook-fiókjából. Helyi fiókok esetén azonban a felhasználó munkamenete megfelelően véget ér.

Következő lépések

Tekintse meg a következő kódmintát: Bejelentkezés az Azure AD B2C használatával JavaScript SPA-ban.