Povolení možností ověřování ve webové aplikaci v Pythonu pomocí Azure AD B2C
Tento článek popisuje, jak povolit, přizpůsobit a vylepšit prostředí ověřování Azure Active Directory B2C (Azure AD B2C) pro webovou aplikaci v Pythonu.
Než začnete, je důležité se seznámit s tím, jak nakonfigurovat ověřování v ukázkové webové aplikaci v Pythonu pomocí Azure AD B2C.
Použití vlastní domény
Pomocí vlastní domény můžete adresu URL ověřování plně o značit. Z pohledu uživatele zůstanou uživatelé během procesu ověřování ve vaší doméně, místo aby byli přesměrováni na Azure AD B2C b2clogin.com název domény.
Pokud chcete v adrese URL odebrat všechny odkazy na b2c, můžete v adrese URL žádosti o ověření nahradit název tenanta B2C contoso.onmicrosoft.com identifikátorem GUID vašeho tenanta. Můžete například změnit https://fabrikamb2c.b2clogin.com/contoso.onmicrosoft.com/
na https://account.contosobank.co.uk/<tenant ID GUID>/
.
Použití vlastní domény a ID tenanta v adrese URL ověřování:
- Postupujte podle pokynů v tématu Povolení vlastních domén.
- V souboru app_config.py aktualizujte
authority_template
člena třídy vlastní doménou.
Následující kód Pythonu ukazuje nastavení aplikace před změnou:
authority_template = "https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{user_flow}"
Následující kód Pythonu ukazuje nastavení aplikace po změně:
authority_template = "https://custom.domain.com/00000000-0000-0000-0000-000000000000/{user_flow}"
Předem vyplní přihlašovací jméno.
Během přihlašovací cesty uživatele může vaše aplikace cílit na konkrétního uživatele. Když aplikace cílí na uživatele, může v žádosti o login_hint
autorizaci zadat parametr dotazu s přihlašovacím jménem uživatele. Azure AD B2C automaticky vyplní přihlašovací jméno a uživatel musí zadat jenom heslo.
Pokud chcete přihlašovací jméno předem naplnit, postupujte takto:
- Pokud používáte vlastní zásadu, přidejte požadovanou vstupní deklaraci identity, jak je popsáno v tématu Nastavení přímého přihlášení.
- Vyhledejte metodu
initiate_auth_code_flow
a pak přidejtelogin_hint
parametr s názvem domény zprostředkovatele identity (například 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")
Předběžný výběr zprostředkovatele identity
Pokud jste nakonfigurovali přihlašovací cestu pro vaši aplikaci tak, aby zahrnovala účty sociálních sítí, jako je Facebook, LinkedIn nebo Google, můžete zadat domain_hint
parametr . Tento parametr dotazu poskytuje nápovědu k Azure AD B2C o zprostředkovateli sociální identity, který by se měl použít pro přihlášení. Pokud například aplikace zadá domain_hint=facebook.com
, tok přihlášení přejde přímo na přihlašovací stránku Facebooku.
Pokud chcete uživatele přesměrovat na externího zprostředkovatele identity, postupujte takto:
Zkontrolujte název domény externího zprostředkovatele identity. Další informace najdete v tématu Přesměrování přihlášení k poskytovateli sociálních sítí.
Vyhledejte metodu
initiate_auth_code_flow
a pak přidejtedomain_hint
parametr s nápovědou k přihlášení.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")
Další kroky
- Další informace najdete v tématu MSAL pro možnosti konfigurace Pythonu.