Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Important
À compter du 1er mai 2025, Azure AD B2C ne sera plus disponible pour les nouveaux clients. Pour plus d’informations, consultez notre FAQ.
Cet article explique comment activer, personnaliser et améliorer l’expérience d’authentification Azure Active Directory B2C (Azure AD B2C) pour votre application web Python.
Avant de commencer, il est important de vous familiariser avec la configuration de l’authentification dans un exemple d’application web Python à l’aide d’Azure AD B2C.
Utiliser un domaine personnalisé
En utilisant un domaine personnalisé, vous pouvez entièrement personnaliser l’URL d’authentification. Du point de vue de l’utilisateur, les utilisateurs restent sur votre domaine pendant le processus d’authentification, plutôt que d’être redirigés vers le nom de domaine Azure AD B2C b2clogin.com.
Pour supprimer toutes les références à « b2c » dans l’URL, vous pouvez également remplacer votre nom de locataire B2C, contoso.onmicrosoft.com, dans l’URL de demande d’authentification par votre GUID d’ID de locataire. Par exemple, vous pouvez passer https://fabrikamb2c.b2clogin.com/contoso.onmicrosoft.com/ à https://account.contosobank.co.uk/<tenant ID GUID>/.
Pour utiliser un domaine personnalisé et votre ID de locataire dans l’URL d’authentification :
- Suivez les instructions de l’option Activer des domaines personnalisés.
- Dans le fichier app_config.py , mettez à jour le membre de
authority_templateclasse avec votre domaine personnalisé.
Le code Python suivant montre les paramètres de l’application avant la modification :
authority_template = "https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{user_flow}"
Le code Python suivant montre les paramètres de l’application après la modification :
authority_template = "https://custom.domain.com/00000000-0000-0000-0000-000000000000/{user_flow}"
Préremplir le nom de connexion
Pendant un parcours utilisateur de connexion, votre application peut cibler un utilisateur spécifique. Lorsqu’une application cible un utilisateur, elle peut spécifier dans la demande d’autorisation le login_hint paramètre de requête avec le nom de connexion de l’utilisateur. Azure AD B2C remplit automatiquement le nom de connexion, et l’utilisateur doit fournir uniquement le mot de passe.
Pour préremplir le nom de connexion, procédez comme suit :
- Si vous utilisez une stratégie personnalisée, ajoutez la revendication d’entrée requise comme décrit dans Configurer la connexion directe.
- Recherchez la
initiate_auth_code_flowméthode, puis ajoutez lelogin_hintparamètre avec le nom de domaine du fournisseur d’identité (par exemple, 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")
Préélectionner un fournisseur d’identité
Si vous avez configuré le parcours de connexion de votre application pour inclure des comptes sociaux, tels que Facebook, LinkedIn ou Google, vous pouvez spécifier le domain_hint paramètre. Ce paramètre de requête fournit un indicateur à Azure AD B2C sur le fournisseur d’identité sociale qui doit être utilisé pour la connexion. Par exemple, si l’application spécifie domain_hint=facebook.com, le flux de connexion passe directement à la page de connexion Facebook.
Pour rediriger les utilisateurs vers un fournisseur d’identité externe, procédez comme suit :
Vérifiez le nom de domaine de votre fournisseur d’identité externe. Pour plus d’informations, consultez Redirection de la connexion à un fournisseur de réseaux sociaux.
Recherchez la
initiate_auth_code_flowméthode, puis ajoutez ledomain_hintparamètre avec l’indicateur de connexion.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")
Étapes suivantes
- Pour plus d’informations, consultez les options de configuration MSAL pour Python.