Sdílet prostřednictvím


Povolení možností ověřování ve webové aplikaci v Pythonu pomocí Azure AD B2C

Důležité

Od 1. května 2025 už nebude Azure AD B2C k dispozici k nákupu pro nové zákazníky. Další informace najdete v našich nejčastějších dotazech.

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 plně označit adresu URL ověřování. Z pohledu uživatele zůstanou uživatelé ve vaší doméně během procesu ověřování místo přesměrování na název domény Azure AD B2C b2clogin.com.

Pokud chcete odebrat všechny odkazy na "b2c" v adrese URL, můžete také nahradit název tenanta B2C, contoso.onmicrosoft.com, v adrese URL žádosti o ověření 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 vašeho tenanta v ověřovací adrese URL:

  1. Postupujte podle pokynů v části Povolení vlastních domén.
  2. V souboru app_config.py aktualizujte člena authority_template třídy pomocí vlastní domény.

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íte přihlašovací jméno.

Během cesty uživatele přihlašování 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.

Chcete-li předvyplnit přihlašovací jméno, postupujte takto:

  1. Pokud používáte vlastní zásady, přidejte požadovanou vstupní deklaraci identity, jak je popsáno v tématu Nastavení přímého přihlášení.
  2. initiate_auth_code_flow Vyhledejte metodu a poté přidejte login_hint parametr s názvem domény poskytovatele 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ředem vyberte zprostředkovatele identity

Pokud jste nakonfigurovali cestu přihlášení pro aplikaci tak, aby zahrnovala sociální účty, jako je Facebook, LinkedIn nebo Google, můžete zadat domain_hint parametr. Tento parametr dotazu poskytuje nápovědu pro Azure AD B2C o zprostředkovateli sociálních identit, který by se měl použít pro přihlášení. Pokud například aplikace určí 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:

  1. Zkontrolujte název domény vašeho 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í.

  2. initiate_auth_code_flow Vyhledejte metodu a poté přidejte domain_hint parametr s nápovědou pro 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