Azure AD B2C: Hitelesítési protokollok

Fontos

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

Az Azure Active Directory B2C (Azure AD B2C) két iparági szabvány protokoll támogatásával biztosítja az alkalmazások identitását szolgáltatásként: az OpenID Connectet és az OAuth 2.0-t. A szolgáltatás szabványoknak megfelelő, de ezeknek a protokolloknak bármelyik két implementációja apró eltéréseket okozhat.

Az ebben az útmutatóban szereplő információk akkor hasznosak, ha a kódot a nyílt forráskódú kódtárak használata helyett közvetlenül HTTP-kérések küldésével és kezelésével írja. Javasoljuk, hogy az egyes protokollok részleteinek megismerése előtt olvassa el ezt a lapot. Ha azonban már ismeri az Azure AD B2C-t, közvetlenül a protokoll referencia-útmutatóihoz léphet.

Az alapok

Az Azure AD B2C-t használó összes alkalmazást regisztrálni kell a B2C-címtárban az Azure Portalon. Az alkalmazásregisztrációs folyamat összegyűjt és hozzárendel néhány értéket az alkalmazáshoz:

  • Alkalmazásazonosító, amely egyedileg azonosítja az alkalmazást.

  • Átirányítási URI vagy csomagazonosító, amely a válaszok visszairányítására használható az alkalmazásba.

  • Néhány más forgatókönyv-specifikus érték. További információkért olvassa el, hogyan regisztrálhatja az alkalmazást.

Az alkalmazás regisztrálása után a végpontra küldött kérésekkel kommunikál az Azure AD B2C-vel:

https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/oauth2/v2.0/authorize
https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/oauth2/v2.0/token

Ha egyéni tartományt használ, cserélje le {tenant}.b2clogin.com az egyéni tartományra, például contoso.coma végpontokon.

Az OAuth és az OpenID Connect szinte minden folyamatában négy fél vesz részt a cserében:

A négy OAuth 2.0 szerepkört bemutató ábra.

  • Az engedélyezési kiszolgáló az Azure AD B2C-végpont. Biztonságosan kezeli a felhasználói adatokkal és hozzáféréssel kapcsolatos adatokat. Emellett kezeli a folyamatokban részt vevő felek közötti megbízhatósági kapcsolatokat is. Feladata a felhasználó személyazonosságának ellenőrzése, az erőforrásokhoz való hozzáférés biztosítása és visszavonása, valamint a jogkivonatok kiállítása. Identitásszolgáltatóként is ismert.

  • Az erőforrás tulajdonosa általában a végfelhasználó. Ez az a fél, amely az adatokat birtokolja, és rendelkezik azzal a hatáskörrel, hogy lehetővé tegye harmadik felek számára az adatokhoz vagy erőforrásokhoz való hozzáférést.

  • Az OAuth-ügyfél az Ön alkalmazása. Az alkalmazásazonosítót használják az azonosításhoz. Általában ez az a fél, akivel a végfelhasználók kommunikálnak. Tokeneket is kér az engedélyező szervertől. Az erőforrás tulajdonosának engedélyt kell adnia az ügyfélnek az erőforrás eléréséhez.

  • Az erőforrás-kiszolgáló az, ahol az erőforrás vagy az adatok találhatók. Megbízik az engedélyezési kiszolgálón az OAuth-ügyfél biztonságos hitelesítésében és engedélyezésében. Emellett tulajdonosi hozzáférési jogkivonatokat is használ az erőforráshoz való hozzáférés biztosításához.

Szabályzatok és felhasználói folyamatok

Az Azure AD B2C szabályzatok bevezetésével kibővíti a szabványos OAuth 2.0 és OpenID Connect protokollokat. Ezek lehetővé teszik, hogy az Azure AD B2C sokkal többet végezzen, mint az egyszerű hitelesítés és engedélyezés.

A leggyakoribb identitásfeladatok beállításához az Azure AD B2C portál előre definiált, konfigurálható, felhasználói folyamatoknak nevezett szabályzatokat tartalmaz. A felhasználói folyamatok teljes mértékben leírják a fogyasztói identitást, beleértve a regisztrációt, a bejelentkezést és a profilszerkesztéseket. A felhasználói folyamatok felügyeleti felhasználói felületen definiálhatók. A http-hitelesítési kérelmekben egy speciális lekérdezési paraméterrel hajthatók végre.

A szabályzatok és a felhasználói folyamatok nem az OAuth 2.0 és az OpenID Connect szabványos funkciói, ezért időt kell szánnia ezek megértésére. További információkért tekintse meg az Azure AD B2C felhasználói folyamatának referencia-útmutatójában.

tokenek

Az OAuth 2.0 és az OpenID Connect Azure AD B2C-implementációja széles körben használja a tulajdonosi jogkivonatokat, beleértve a JSON webes jogkivonatként (JWT-ként) képviselt tulajdonosi jogkivonatokat is. A tulajdonosi jogkivonat egy egyszerűsített biztonsági jogkivonat, amely hozzáférést biztosít a "tulajdonos" számára egy védett erőforráshoz.

Az átvevő bármely fél, amely be tudja mutatni a jogkivonatot. Az Azure AD B2C-nek először hitelesítenie kell egy felet, mielőtt tulajdonosi jogkivonatot kap. Ha azonban a szükséges lépések nem történnek meg a jogkivonat átvitelben és tárolásban való védelméhez, azt elfoghatja és használhatja egy nem szándékos fél.

Egyes biztonsági jogkivonatok beépített mechanizmusokkal rendelkeznek, amelyek megakadályozzák, hogy jogosulatlan felek használják őket, de a tulajdonosi jogkivonatok nem rendelkeznek ezzel a mechanizmussal. Biztonságos csatornán kell szállítani őket, például egy átviteli rétegbeli biztonsági (HTTPS) csatornán.

Ha a tulajdonosi jogkivonatot egy biztonságos csatornán kívül továbbítják, a rosszindulatú felek egy középen belüli támadással szerezhetik meg a jogkivonatot, és használhatják arra, hogy jogosulatlan hozzáférést szerezzenek egy védett erőforráshoz. Ugyanezek a biztonsági alapelvek érvényesek a tulajdonosi jogkivonatok későbbi használatra történő tárolásakor vagy gyorsítótárazásakor. Mindig győződjön meg arról, hogy az alkalmazás biztonságos módon továbbítja és tárolja a tulajdonosi jogkivonatokat.

További tulajdonosi jogkivonat biztonsági szempontokat lásd: RFC 6750 5. szakasz.

Az Azure AD B2C-ben használt különféle jogkivonatok típusairól további információt az Azure AD B2C tokenreferenciájában talál.

Protokollok

Ha készen áll néhány példakérés áttekintésére, az alábbi oktatóanyagok egyikével kezdhet. Mindegyik egy adott hitelesítési forgatókönyvnek felel meg. Ha segítségre van szüksége a megfelelő folyamat meghatározásához, tekintse meg az Azure AD B2C használatával létrehozható alkalmazások típusait.