Authentification du portail (Dynamics CRM 2015)

 

Date de publication : novembre 2016

S’applique à : Dynamics CRM 2015

Compte Microsoft permet aux utilisateurs de s’authentifier sur votre site Web sans devoir créer vos propres fournisseurs de sécurité. Cette rubrique explique comment utiliser l’authentification Compte Microsoft avec votre site Web à l’aide des Extensions développeur pour Microsoft Dynamics CRM 2015 et la boîte à outils du portail.

Contenu de la rubrique

Enregistrer votre site Web avec le compte Microsoft

Ajouter le contrôle LiveIdLoginStatus

Ajouter le fournisseur d’appartenances et le service gestionnaire

Forcer l’enregistrement

Enregistrer votre site Web avec le compte Microsoft

Pour commencer, vous devez enregistrer votre site Web avec Compte Microsoft:

https://account.live.com/developers/applications

Lors de l’enregistrement de votre site, fournissez le nom de domaine complet, par exemple « yoursite.yourdomain.com », pas simplement « yourdomain.com ».

Vous devez également fournir une URL vers laquelle les demandes Compte Microsoft sont redirigées lorsque les utilisateurs sont déconnectés. Il s’agira de votre Service Gestionnaire, qui sera abordé plus loin dans ce document, mais, par défaut, l’URL à entrer est :

http://yoursite.yourdomain.com/liveid.axd. 

Après avoir enregistré votre site Web, vous recevez un ID d’application et un mot de passe secret à utiliser pour vous connecter à votre fichier web.config afin que le site puisse se connecter à Compte Microsoft.

Voici certains points à noter :

Les noms de domaine ne peuvent pas contenir de chaînes telles que localhost, 127.0.0.1 ou le mot « live ».

Vous ne pouvez pas partager la gestion du site Web avec d’autres utilisateurs.

Vous ne pouvez pas modifier votre nom de domaine après l’avoir enregistré.

Ajouter le contrôle LiveIdLoginStatus

La dernière étape consiste à ajouter le contrôle LiveIdLoginStatus, qui fonctionne comme le contrôle LoginStatus. Il affiche un lien d’ouverture de session pour les utilisateurs qui ne sont pas authentifiés et un lien de déconnexion pour les utilisateurs qui sont authentifiés.

En cas de connexion anonyme, le lien dirige l’utilisateur vers Windows Live ou éventuellement (en utilisant Loginhref) vers une page d’accueil spécifiée qui indique à l’utilisateur qu’il est redirigé vers Windows Live.

Après l’authentification, le lien de déconnexion redéfinit l’identité de l’utilisateur comme utilisateur anonyme.

<crm:LiveIdLoginStatus runat="server" /> 

Cela suppose que le préfixe de balise « crm » a été enregistré dans « Microsoft.Xrm.Portal.Web.UI.WebControls ».

Ajouter le fournisseur d’appartenances et le service gestionnaire

Le fournisseur d’appartenance gère les informations de connexion de l’utilisateur. L’utilisation de Compte Microsoft implique l’utilisation du fournisseur d’appartenances Compte Microsoft :

<membership defaultProvider="CrmMembershipProvider">
    <providers>
        <add name="CrmMembershipProvider" type="Microsoft.Xrm.Portal.Web.Security.LiveIdMembershipProvider, Microsoft.Xrm.Portal" liveIdConnectionStringName="Live"/>
    </providers>
</membership>

Le service gestionnaire vérifie si l’utilisateur authentifié a été enregistré sur votre site Web. Si vous exécutez un site Internet Information Services (IIS) 7 en mode intégré, vous devez vous assurer que les informations suivantes sont ajoutées dans la section <handlers> :

<add name="LiveId" verb="*" path="LiveID.axd" preCondition="integratedMode" type="Microsoft.Xrm.Portal.Web.Handlers.LiveIdWebAuthenticationHandler, Microsoft.Xrm.Portal" />

Si vous exécutez le mode pipeline classique ou IIS6, le service gestionnaire est configuré dans la section <httpHandlers> de votre fichier Web.config.

<add verb="*" path="LiveID.axd" type="Microsoft.Xrm.Portal.Web.Handlers.LiveIdWebAuthenticationHandler, Microsoft.Xrm.Portal"/>

Forcer l’enregistrement

Lorsque vous utilisez Compte Microsoft pour l’authentification, seul l’identificateur unique Passport (PUID) est connu. Si vous souhaitez obtenir des informations supplémentaires sur l’utilisateur (comme un nom complet ou une adresse de messagerie), vous devez les obtenir auprès de l’utilisateur. Deux méthodes courantes s’offrent à vous :

  • Configurez une page où l’utilisateur peut remplir les informations à sa convenance, une fois connecté.

  • Collectez les informations avant qu’il ne puisse s’authentifier sur votre site.

Pour la deuxième méthode, vous devez configurer Compte Microsoft d’une façon particulière.

  1. Dans le cadre de l’enregistrement de l’utilisateur, Microsoft Dynamics 365 a besoin du PUID de l’utilisateur afin qu’il puisse l’associer aux coordonnées Microsoft Dynamics 365 de l’utilisateur. En d’autres termes, vous devez forcer l’utilisateurs à se connecter avec Compte Microsoft, puis rediriger l’utilisateur vers votre page d’enregistrement. Pour ce faire, ajoutez l’attribut RegistrationUrl au contrôle LiveIdLoginStatus.

    <crm:LiveIdLoginStatus runat="server" RegistrationUrl="/CreateUser" /> 
    
  2. Dans le code sous-jacent de votre page d’enregistrement, vous devez ajouter le code pour conserver le jeton Compte Microsoft et créer un utilisateur une fois que vous avez collecté les informations souhaitées.

    protected void Page_Load(object sender, EventArgs e)
    {
      if (InvitationCode == null || InvitedContact == null)
      {
        var page = SiteContext.Current.Website.GetPageBySiteMarkerName("Home");
        Response.Redirect(page.GetUrl());
      }
    
      // Add the Live ID variables that come from the authentication handler to hidden 
      // script variables.
      if (Request["live-id-action"] == "register")
      {
        Page.ClientScript.RegisterHiddenField("live-id-token", 
          Request["live-id- token"]);
        Page.ClientScript.RegisterHiddenField("live-id-action", 
          Request["live-id-action"]);
      }
    }
    

Voir aussi

Guide destiné aux développeurs du portail pour Microsoft Dynamics CRM 2015
Préparer le développement du portail (Dynamics CRM 2015)
Formulaires Web ASP.NET et liaison de données
Gérer le contenu du portail (Dynamics CRM 2015)
Procédures pas-à-pas du portail pour Dynamics CRM 2015

© 2017 Microsoft. Tous droits réservés. Copyright