Configurer un fournisseur OpenID Connect

Les fournisseurs d’identité OpenID Connect sont des services compatibles avec la spécification Open ID Connect. OpenID Connect introduit le concept de jeton d’ID. Un jeton d’ID est un jeton de sécurité qui permet à un client de vérifier l’identité d’un utilisateur. Il fournit également des informations de profil de base sur les utilisateurs, appelées revendications.

Power Pages prend en charge les fournisseurs OpenID Connect ID externe Microsoft Entra, Microsoft Entra ID et Microsoft Entra ID avec plusieurs locataires. Cet article explique comment ajouter d’autres fournisseurs d’identité OpenID Connect à votre site Power Pages.

Flux d’authentification pris en charge et non pris en charge dans Power Pages

  • Octroi implicite
    • Ce flux est la méthode d’authentification par défaut pour les sites Power Pages.
  • Code d’autorisation
    • Power Pages utilise la méthode client_secret_post pour communiquer avec le point de terminaison du jeton du serveur d’identité.
    • Power Pages prend également en charge la méthode private_key_jwt pour s’authentifier auprès du point de terminaison de jeton. Pour activer cette méthode, créez un paramètre de site nommé Authentication/OpenIdConnect/{ProviderName}/TokenEndPointAuthenticatedMethod et définissez la valeur private_key_jwtsur . Une configuration supplémentaire est requise pour les paramètres de certificat et de jeton.
  • Hybride (prise en charge restreinte)
    • Power Pages requiert la présence de id_token dans la réponse, donc la valeur response_type = comme jeton de code n’est pas pris en charge.
    • Le flux hybride dans Power Pages suit le même flux que l'octroi implicite et utilise id_token pour connecter directement les utilisateurs.

Note

Les modifications des paramètres d’authentification de votre site peuvent prendre quelques minutes pour se refléter sur le site. Pour voir les modifications immédiatement, redémarrez le site dans le centre d’administration.

Configurer le fournisseur OpenID Connect dans Power Pages

  1. Dans votre site Power Pages, sélectionnez Sécurité>Fournisseurs d’identité.

    Si aucun fournisseur d’identité n’apparaît, vérifiez que Connexion externe est définie sur Activé dans les paramètres d’authentification généraux de votre site.

  2. Sélectionnez + Nouveau fournisseur.

  3. Sous Sélectionner un fournisseur de connexion, sélectionnez Autre.

  4. Sous Protocole, sélectionnez OpenID Connect.

  5. Entrez un nom pour le fournisseur.

    Le nom du fournisseur est le texte sur le bouton que les utilisateurs voient lorsqu’ils sélectionnent leur fournisseur d’identité sur la page de connexion.

  6. Sélectionnez Suivant.

  7. Sous URL de réponse, sélectionnez Copier.

    Ne fermez pas l’onglet de votre navigateur Power Pages. Vous y reviendrez bientôt.

Créer un enregistrement d’application dans le fournisseur d’identité

  1. Créez et inscrivez une application auprès de votre fournisseur d’identité à l’aide de l’URL de réponse que vous avez copiée.

  2. Copiez l’ID d’application ou de client et la clé secrète client.

  3. Recherchez les points de terminaison de l’application et copiez l’URL du Document de métadonnées OpenID Connect.

  4. Modifiez les autres paramètres selon les besoins de votre fournisseur d’identité.

Saisir les paramètres du site dans Power Pages

Retournez à la page Configurer le fournisseur d’identité de Power Pages que vous avez quittée précédemment et saisissez les valeurs suivantes. Modifiez éventuellement les paramètres supplémentaires selon vos besoins. Sélectionnez Confirmer lorsque vous avez terminé.

  • Autorité : saisissez l’URL de l’autorité au format suivant : https://login.microsoftonline.com/<Directory (tenant) ID>/, où <ID de répertoire (locataire)> est l’ID de répertoire (locataire) de l’application que vous avez créée. Par exemple, si l’ID d’annuaire (locataire) dans le portail Azure est aaaabbbb-0000-cccc-1111-dddd2222eeee, l’URL de l’autorité est https://login.microsoftonline.com/aaaabbbb-0000-cccc-1111-dddd2222eeee/​.

  • ID client : collez l’ID d’application ou de client de l’application que vous avez créée.

  • URL de redirection : si votre site utilise un nom de domaine personnalisé, saisissez l’URL personnalisée ; sinon, laissez la valeur par défaut. Assurez-vous que la valeur est exactement la même que l’URI de redirection de l’application que vous avez créée.

  • Adresse des métadonnées : collez l’URL du document de métadonnées OpenID Connect que vous avez copiée.

  • Étendue : entrez une liste d'étendues séparée par des espaces ou par des virgules pour les demander à l'aide du paramètre OpenID Connect scope. La valeur par défaut est openid.

    La valeur openid est obligatoire. En savoir plus sur les autres revendications que vous pouvez ajouter.

  • Type de réponse : saisissez la valeur du paramètre response_type d’OpenID Connect. Les valeurs possibles comprennent code, code id_token, id_token, id_token token et code id_token token La valeur par défaut est code id_token.

  • Clé secrète client : collez la clé secrète client de l’application du fournisseur. Elle peut également être appelée secret d’application ou secret consommateur. Ce paramètre est obligatoire si le type de réponse est code.

  • Mode de réponse : saisissez la valeur du paramètre response_mode d’OpenID Connect. Elle devrait être query si le type de réponse est code. La valeur par défaut est form_post.

  • Déconnexion externe : ce paramètre contrôle si votre site utilise la déconnexion fédérée. Avec la déconnexion fédérée, lorsque les utilisateurs se déconnectent d’une application ou d’un site, ils sont également déconnectés de toutes les applications et de tous les sites qui utilisent le même fournisseur d’identité. Activez ce paramètre pour rediriger les utilisateurs vers l’expérience de déconnexion fédérée lorsqu’ils se déconnectent de votre site Web. Désactivez ce paramètre pour déconnecter les utilisateurs de votre site Web uniquement.

  • URL de redirection post-déconnexion : saisissez l’URL où le fournisseur d’identité doit rediriger les utilisateur après leur déconnexion. Cet emplacement doit également être défini de manière appropriée dans la configuration du fournisseur d’identité.

  • Déconnexion initiée par la partie sollicitante : ce paramètre contrôle si la partie sollicitante (l’application cliente OpenID Connect) peut procéder à la déconnexion des utilisateurs. Pour utiliser ce paramètre, activez Déconnexion externe.

Paramètres supplémentaires dans Power Pages

Les paramètres supplémentaires fournissent un contrôle plus précis sur la façon dont les utilisateurs s’authentifient auprès de votre fournisseur d’identité OpenID Connect. Il n’est pas nécessaire de définir l’une de ces valeurs. Elles sont entièrement facultatives.

  • Filtre de l’émetteur : saisissez un filtre basé sur des caractères génériques qui associe tous les émetteurs dans tous les locataires. Par exemple, utilisez https://sts.windows.net/*/. Si vous utilisez un fournisseur d'authentification Microsoft Entra ID, le filtre d'URL de l'émetteur est https://login.microsoftonline.com/*/v2.0/.

  • Valider l’audience : activez ce paramètre pour valider l’audience lors de la validation du jeton.

  • Audiences valides : saisissez une liste séparée par des virgules des URL d’audience.

  • Valider les émetteurs : activez ce paramètre pour valider l’émetteur lors de la validation du jeton.

  • Émetteurs valides : saisissez une liste séparée par des virgules des URL d’émetteur.

  • Mappage des demandes d’inscription et Mappage des demandes de connexion : dans l’authentification de l’utilisateur, une revendication est une information qui décrit l’identité d’un utilisateur, comme une adresse e-mail ou une date de naissance. Lorsque vous vous connectez à une application ou à un site Web, un jeton est créé. Un jeton contient des informations sur votre identité, y compris toutes les revendications qui lui sont associées. Les jetons sont utilisés pour authentifier votre identité lorsque vous accédez à d’autres parties de l’application ou du site ou à d’autres applications et sites connectés au même fournisseur d’identité. Le Mappage des revendications est une façon de modifier les informations incluses dans un jeton. Il peut être utilisé pour personnaliser les informations disponibles pour l’application ou le site et pour contrôler l’accès aux fonctionnalités ou aux données. Le Mappage des demandes d’inscription modifie les revendications émises lorsque vous vous inscrivez à une application ou à un site. Le Mappage des demandes de connexion modifie les revendications émises lorsque vous vous connectez à une application ou à un site. En savoir plus sur les stratégies de mappage des revendications.

    Vous pouvez fournir des informations utilisateur de deux façons :

    • Revendications de jeton d’ID : les attributs de l’utilisateur de base tels que le prénom ou l’adresse e-mail se trouvent dans le jeton.
    • Point de terminaison UserInfo : API sécurisée qui renvoie des informations détaillées sur l’utilisateur après l’authentification.

    Pour utiliser le point de terminaison UserInfo, créez un Paramètre de site nommé Authentication/OpenIdConnect/{ProviderName}/UseUserInfoEndpointforClaims et définissez la valeur sur true.

    Si vous le souhaitez, vous pouvez créer un paramètre de site dénomméAuthentication/OpenIdConnect/{ProviderName}/UserInfoEndpoint et définir la valeur sur l'URL du point de terminaison UserInfo. Si vous ne fournissez pas ce paramètre, Power Pages tente de trouver le point de terminaison à partir des métadonnées OIDC.

    Gestion des erreurs :

    • Si l’URL du point de terminaison n’est pas définie et Power Pages ne la trouve pas dans les métadonnées, la connexion continue et enregistre un avertissement.
    • Si l’URL est définie mais n’est pas accessible, la connexion se poursuit avec un avertissement.
    • Si le point de terminaison renvoie une erreur d’authentification (comme 401 ou 403), la connexion continue avec un avertissement qui inclut le message d’erreur.

    Syntaxe de mappage :

    Pour utiliser les revendications UserInfo dans les mappages de revendications de connexion ou d’inscription, utilisez ce format :

    fieldName = userinfo.claimName

    Si UseUserInfoEndpointforClaims n’est pas activé, les mappages qui utilisent le préfixe userinfo. sont ignorés.

  • Durée de vie de Nonce : saisissez la durée de vie de la valeur Nonce, en minutes. La valeur par défaut est 10 minutes.

  • Non activé : ce paramètre contrôle si la validation nonce est activée pour le protocole OpenID Connect. La valeur par défaut est Activé. Désactivez cette option pour désactiver la validation du nonce (déconseillé en production).

  • Utiliser la durée de vie du jeton : ce paramètre contrôle si la durée de vie de la session d’authentification, comme les cookies, doit correspondre à celle du jeton d’authentification. Si vous l’activez, cette valeur remplace la valeur Délai d’expiration des cookies de l’application dans le paramètre de site Authentication/ApplicationCookie/ExpireTimeSpan.

  • Mappage des contacts avec l’e-mail : ce paramètre détermine si les contacts sont mappés à une adresse e-mail correspondante lorsqu’ils se connectent.

    • Activé : associe un enregistrement de contact unique à une adresse e-mail correspondante et attribue automatiquement le fournisseur d’identité externe au contact une fois que l’utilisateur se connecte avec succès.
    • Désactivé

Note

Le paramètre de requête UI_Locales est envoyé automatiquement dans la requête d’authentification et est défini sur la langue sélectionnée dans le portail.

Autres paramètres d’autorisation

Utilisez les paramètres d’autorisation suivants, mais ne les définissez pas dans le fournisseur OpenID Connect dans Power Pages :

  • acr_values : le acr_values paramètre permet aux fournisseurs d’identité d’appliquer des niveaux d’assurance de sécurité tels que l’authentification multifacteur (MFA). Il permet à l’application d’indiquer le niveau d’authentification requis.

    Pour utiliser le acr_values paramètre, créez un paramètre de site nommé Authentication/OpenIdConnect/{ProviderName}/AcrValues et définissez la valeur dont vous avez besoin. Lorsque vous définissez cette valeur, Power Pages inclut le acr_values paramètre dans la demande d’autorisation.

  • Paramètres d’autorisation dynamiques : les paramètres dynamiques vous permettent d’adapter la demande d’autorisation à différents contextes d’utilisation, comme des applications intégrées ou des scénarios à locataires multiples.

    • Paramètre d’invite :

      Ce paramètre détermine si la page de connexion ou l’écran de consentement s’affiche. Vous pouvez le configurer de deux façons :

      1. Paramètre de site (statique) : créez un paramètre de site nommé Authentication/OpenIdConnect/{ProviderName}/Prompt et définissez la valeur sur l’une des valeurs prises en charge répertoriées ci-dessous. Cette valeur s’applique à toutes les demandes d’authentification pour le fournisseur et prend la priorité sur le paramètre dynamique.
      2. Dynamique (par requête) : ajoutez une personnalisation pour l’envoyer en tant que paramètre de chaîne de requête au point de terminaison de connexion externe.

      Valeurs prises en charge :

      • Aucune
      • se connecter
      • Consentement
      • select_account
      • create

      Note

      Lorsque vous configurez le paramètre de site d’invite, il prend la priorité sur le paramètre d’invite dynamique transmis via la chaîne de requête.

      Format URL :

      {PortalUrl}/Account/Login/ExternalLogin?ReturnUrl=%2F&provider={ProviderName}&prompt={value}

      Power Pages envoie cette valeur au fournisseur d’identité dans le paramètre d’invite.

    • Paramètre d’indice de connexion :

      Ce paramètre vous permet de transmettre un identificateur utilisateur connu, comme un courrier électronique, pour préremplir ou contourner les écrans de connexion. Pour l’utiliser, ajoutez une personnalisation pour l’envoyer en tant que paramètre de chaîne de requête au point de terminaison ExternalLogin.

      Format URL :

      {PortalUrl}/Account/Login/ExternalLogin?ReturnUrl=%2F&provider={ProviderName}&login_hint={value}

      Ce paramètre permet de se connecter lorsque les utilisateurs sont déjà connectés via une autre identité, comme Microsoft Entra ID ou un compte Microsoft (MSA), dans la même session.

  • Paramètres d’autorisation personnalisés : certains fournisseurs d’identité prennent en charge des paramètres propriétaires pour un comportement d’autorisation spécifique. Power Pages permet aux créateurs de configurer et de transmettre ces paramètres en toute sécurité. Pour utiliser ces paramètres, ajoutez une personnalisation pour les envoyer en tant que paramètres de chaîne de requête au point de terminaison ExternalLogin.

    Créez un paramètre de site nommé Authentication/OpenIdConnect/{Provider}/AllowedDynamicAuthorizationParameters et définissez la valeur sur une liste de noms de paramètres séparés par des virgules, comme param1,param2,param3.

    Exemple de format de l’URL :

    {PortalUrl}/Account/Login/ExternalLogin?ReturnUrl=%2F&provider={ProviderName}&param1=value&param2=value&param3=value

    Si l’un des paramètres (param1, param2 ou param3) ne figure pas dans la liste des paramètres autorisés, Power Pages l’ignore.

    Ce paramètre définit une liste de paramètres personnalisés que vous pouvez envoyer dans la demande d’autorisation.

    Comportement

    • Transmettez les paramètres dans la chaîne de requête du point de terminaison ExternalLogin.
    • Power Pages inclut uniquement les paramètres de la liste dans la demande d’autorisation.
    • Les paramètres par défaut tels que prompt, login_hintet ReturnUrl sont toujours autorisés et n’ont pas besoin d’être répertoriés.

    Exemple de format de l’URL :

    {PortalUrl}/Account/Login/ExternalLogin?ReturnUrl=%2F&provider={ProviderName}&custom_param=value

    Si custom_param ce n'est pas dans la liste des paramètres autorisés, Power Pages l'ignore.

Voir aussi

Configurer l’ID externe Microsoft Entra avec Power Pages
Configurer un fournisseur OpenID Connect avec Microsoft Entra ID
FAQ sur OpenID Connect