Hitelesítési beállítások engedélyezése Python-webalkalmazásokban Azure AD B2C használatával
Ez a cikk bemutatja, hogyan engedélyezheti, szabhatja testre és javíthatja az Azure Active Directory B2C (Azure AD B2C) hitelesítési élményét a Python-webalkalmazásban.
Mielőtt hozzákezd, fontos megismernie, hogyan konfigurálhatja a hitelesítést egy minta Python-webalkalmazásban Azure AD B2C használatával.
Egyéni tartomány használata
Egyéni tartomány használatával teljes mértékben megadhatja a hitelesítési URL-címet. Felhasználói szempontból a felhasználók a hitelesítési folyamat során a tartományon maradnak, ahelyett, hogy átirányítanák a Azure AD B2C b2clogin.com tartománynévre.
Ha az URL-címben el szeretné távolítani a "b2c" kifejezésre mutató összes hivatkozást, a B2C-bérlő nevét (contoso.onmicrosoft.com) is lecserélheti a hitelesítési kérelem URL-címében a bérlőazonosító GUID azonosítójára. Módosíthatja például https://fabrikamb2c.b2clogin.com/contoso.onmicrosoft.com/
a következőre: https://account.contosobank.co.uk/<tenant ID GUID>/
.
Egyéni tartomány és a bérlőazonosító használata a hitelesítési URL-címben:
- Kövesse az Egyéni tartományok engedélyezése című témakör útmutatását.
- A app_config.py fájlban frissítse az
authority_template
osztálytagot az egyéni tartománnyal.
Az alábbi Python-kód a módosítás előtt megjeleníti az alkalmazásbeállításokat:
authority_template = "https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{user_flow}"
Az alábbi Python-kód a módosítás után megjeleníti az alkalmazásbeállításokat:
authority_template = "https://custom.domain.com/00000000-0000-0000-0000-000000000000/{user_flow}"
A bejelentkezési név előzetes feltöltése
A bejelentkezési felhasználói folyamat során előfordulhat, hogy az alkalmazás egy adott felhasználót céloz meg. Amikor egy alkalmazás megcélz egy felhasználót, az engedélyezési kérelemben megadhatja a login_hint
lekérdezési paramétert a felhasználó bejelentkezési nevével. Azure AD B2C automatikusan kitölti a bejelentkezési nevet, és a felhasználónak csak a jelszót kell megadnia.
A bejelentkezési név előzetes feltöltéséhez tegye a következőket:
- Ha egyéni szabályzatot használ, adja hozzá a szükséges bemeneti jogcímet a Közvetlen bejelentkezés beállítása című cikkben leírtak szerint.
- Keresse meg a metódust
initiate_auth_code_flow
, majd adja hozzá alogin_hint
paramétert az identitásszolgáltató tartománynevével (például facebook.com).
def _build_auth_code_flow(authority=None, scopes=None):
return _build_msal_app(authority=authority).initiate_auth_code_flow(
scopes or [],
redirect_uri=url_for("authorized", _external=True),
login_hint="bob@contoso.com")
Identitásszolgáltató előzetes kiválasztása
Ha úgy konfigurálta az alkalmazás bejelentkezési útját, hogy közösségi fiókokat ( például Facebook, LinkedIn vagy Google) tartalmazzon, megadhatja a paramétert domain_hint
. Ez a lekérdezési paraméter a B2C Azure AD a bejelentkezéshez használni kívánt közösségi identitásszolgáltatóra vonatkozó tippet. Ha például az alkalmazás megadja domain_hint=facebook.com
, a bejelentkezési folyamat közvetlenül a Facebook bejelentkezési oldalára kerül.
A felhasználók külső identitásszolgáltatóhoz való átirányításához tegye a következőket:
Ellenőrizze a külső identitásszolgáltató tartománynevét. További információ: Bejelentkezés átirányítása közösségi szolgáltatóhoz.
Keresse meg a metódust
initiate_auth_code_flow
, majd adja hozzá adomain_hint
paramétert a bejelentkezési emlékeztetővel.def _build_auth_code_flow(authority=None, scopes=None): return _build_msal_app(authority=authority).initiate_auth_code_flow( scopes or [], redirect_uri=url_for("authorized", _external=True), domain_hint="facebook.com")
Következő lépések
- További információ: MSAL a Python konfigurációs lehetőségeihez.