Configuration de l’authentification sociale
Objectifs de formation
Après avoir terminé ce module, vous pourrez :
- Présenter un processus d'authentification
- Répertorier les fournisseurs d’authentification fournis avec Salesforce
- Configurer un fournisseur d’authentification
- Expliquer la valeur d’un gestionnaire d’enregistrement
Authentification sociale
Cela dure depuis la nuit des temps, avant même la formation de la Ligue Beigecoats. S’ils en ont la possibilité, les pionniers des colonies spatiales périphériques préfèrent utiliser leur compte social plutôt que de créer un compte en ligne pour chaque site Web. Ils peuvent se connecter une seule fois à leur compte social favori, par exemple ShadowMoon (ou l’une des vieilles ressources Facebook ou Google) pour accéder à d’autres comptes, notamment leur messagerie ou un compte bancaire en ligne. En configurant la connexion sociale, vous offrez à vos clients une expérience pratique et sécurisée des Universal Deliveries.
Pour permettre aux clients de se connecter à Salesforce avec leurs identifiants sociaux, vous configurez un fournisseur d’authentification (auth) pour le compte social. Voici comment votre client procède ensuite.
- Un client accède à une page de connexion Salesforce qui offre plusieurs options de connexion via Google, Facebook, Twitter, et en saisissant un nom d’utilisateur et un mot de passe. (1)
- Le client choisit de se connecter avec ses identifiants Facebook. (2)
- Salesforce rediriger le client vers Facebook. (3)
- Le client se connecte à Facebook. (4)
- Facebook connecte automatiquement le client à Salesforce, car Salesforce fait confiance au dispositif de contrôle de Facebook. (5)
Salesforce a le choix entre plusieurs fournisseurs d’authentification, et davantage si vous ajoutez les fournisseurs d’authentification que vos développeurs peuvent configurer à l’aide du protocole OpenID Connect. En outre, si vos développeurs souhaitent créer leur propre fournisseur d’authentification, ils peuvent utiliser les API Salesforce.
Création d’un fournisseur d’authentification
Vous choisissez les fournisseurs d’authentification qui peuvent accéder à votre organisation Salesforce dans la Configuration. En quelques clics, vous pouvez ajouter l’option de connexion via un ou plusieurs comptes sociaux. Voici comment configurer Facebook en tant que fournisseur d’authentification.
- Dans Configuration, saisissez Authentification dans la zone Recherche rapide, puis sélectionnez Fournisseurs d’authentification.
- Cliquez sur Nouveau, puis sélectionnez le type de fournisseur Facebook.
- Nommez le fournisseur d’authentification Facebook.
- Pour le Gestionnaire d’enregistrement, cliquez sur Créer automatiquement un modèle de gestionnaire d'enregistrement.
- Dans Exécuter l'enregistrement en tant que, choisissez vous-même. Important : cette étape est souvent négligée alors qu’elle est essentielle. En production, vous ne vous sélectionnez pas vous-même. Vous créez à la place un compte de service afin d’éviter tout problème ultérieur. Si vous utilisez votre propre nom et quittez la société, le processus échoue lorsque votre compte Salesforce est désactivé.
- Pour URL de l’icône, cliquez sur Sélectionnez l'une de nos icônes exemple, sélectionnez une icône, copiez l’URL, puis collez-la dans URL de l’icône.
- Laissez les autres champs vides. Salesforce fournit les valeurs, notamment la clé consommateur et le secret consommateur, lorsque vous utilisez les fournisseurs Salesforce prêts à l’emploi (Facebook, Google, etc.).
- Cliquez sur Enregistrer.
Lorsque vous avez défini le fournisseur d’authentification, Salesforce génère plusieurs URL. Utilisez l’URL d’initialisation test uniquement pour tester votre connexion au réseau social.
- Sur la page de détail du fournisseur d’authentification, sous Configuration Salesforce, copiez l’URL qui est affichée dans URL d’initialisation test uniquement.
- Collez l’URL dans un navigateur.
Si cela fonctionne, vous arrivez sur la page de connexion de Facebook.
- Connectez-vous à la page Facebook.
- À l’invite, autorisez votre application. Vous êtes redirigé(e) vers Salesforce, et les informations XML que Facebook nous a envoyées sont affichées.
Ces informations XML sont utiles pour le débogage et l’ajout de fonctionnalités à votre fournisseur d’authentification. Nous pouvons observer le nom de l’utilisateur Facebook, Mel Reynolds, son ID d’organisation, le lien vers son compte Facebook et son adresse e-mail.
Connexion avec Facebook
Vous avez créé un fournisseur d’authentification Facebook. Revenons maintenant à la page Connexion et inscription pour ajouter Facebook en tant qu’option de connexion.
- Dans Configuration, saisissez Sites dans la zone Recherche rapide, sélectionnez Tous les sites, puis cliquez sur Espaces de travail en regard des clients.
- Sélectionnez Administration, puis Connexion et inscription. Vous constaterez que l’option de connexion Facebook est désormais disponible.
- Sélectionnez Facebook, puis cliquez sur Enregistrer.
Pour confirmer votre modification, revenez à votre fenêtre de navigation privée, puis rechargez la page de connexion. Vérifiez que l’icône Facebook est affichée dans la page de connexion.
Essayez de vous connecter avec un compte Facebook. Une erreur semblable à la suivante est affichée ?
Ne vous inquiétez pas. Nous allons la corriger.
Mise à jour du gestionnaire d'enregistrement
La connexion Facebook ne fonctionne pas, car le gestionnaire d’enregistrement prêt à l’emploi de Salesforce ne fonctionne pas pour le fournisseur d’authentification Facebook. Pourquoi ? Les fournisseurs d’authentification tels que Facebook changent fréquemment les exigences d’authentification afin de renforcer la sécurité. Ce n'est pas un problème. Nous pouvons mettre à jour nous-mêmes le gestionnaire d’enregistrement.
Qu’est-ce qu’un gestionnaire d’enregistrement ?
Un gestionnaire d’enregistrement (parfois appelé reghandler) crée et met à jour un utilisateur sur-le-champ avec les informations d’identité extraites du fournisseur d’authentification, dans le cas présent Facebook. Un gestionnaire d’enregistrement permet de récupérer des informations supplémentaires depuis Facebook, par exemple la photo du profil, que vous pouvez utiliser lors de la création de l’utilisateur Salesforce.
Nous avons choisi le gestionnaire d’enregistrement prêt à l’emploi Facebook en sélectionnant le modèle Créer automatiquement un modèle de gestionnaire d'enregistrement dans la page Connexion et inscription.
Ouvrez le gestionnaire d’enregistrement auto-généré.
- Dans Configuration, saisissez Authentification dans la zone Recherche rapide, puis sélectionnez Fournisseurs d’authentification.
- En regard du fournisseur d’authentification Facebook, cliquez sur Modifier.
- Sous Gestionnaire d’enregistrement, cliquez sur
pour afficher le nom complet du gestionnaire d’enregistrement automatiquement créé, par exemple, AutocreatedRegHandler1467402405056.
- Dans Configuration, saisissez Classe Apex dans la zone Recherche rapide, puis sélectionnez Classes Apex.
- En regard de votre gestionnaire d’enregistrement, cliquez sur Modifier.
Oui, son code, sous la forme d’une classe Apex. Si vous ne savez pas coder, aucun problème. Vous n’allez pas coder. Vous allez faire un simple couper-coller pour remplacer cette classe Apex par celle fournie dans le référentiel Git de Salesforce Identity.
Remplacez le gestionnaire d’enregistrement par celui fourni dans le référentiel GitHub.
- Dans un autre onglet de navigateur, ouvrez le gestionnaire d’enregistrement, https://github.com/salesforceidentity/IdentityTrail-Module3/blob/master/SimpleFacebookRegistrationHandler.cls.
- Copiez le code sur GitHub et collez-le à la place du gestionnaire d’enregistrement généré automatiquement dans Salesforce.
- À la ligne 9 du fichier du gestionnaire d’enregistrement, pour INTERNAL_USER_PROFILE, remplacez « Standard User » (Utilisateur standard) par « System Administrator » (Administrateur système), puis cliquez sur Save (Enregistrer).
Dans cette unité Trailhead, utilisez votre compte pour créer le gestionnaire d’enregistrement. Étant donné que votre profil dans votre Trailhead Playground est Administrateur système, vous devez utiliser le profil Administrateur système dans le gestionnaire d’enregistrement. En production, utilisez le profil attribué au compte de service que vous utilisez pour créer le gestionnaire d’enregistrement.
Réessayez maintenant de vous connecter à Facebook.
- Revenez à la fenêtre de navigation privée, puis rechargez la page de connexion.
- Cliquez sur l’icône Facebook, puis saisissez votre nom d’utilisateur et votre mot de passe Facebook. Si la page ci-dessous est affichée, votre connexion Facebook fonctionne. Étant donné que vous avez construit le site avec le modèle Service client, vos clients sont accueillis sur une page comme celle-ci. La page dispose d’un lanceur d’application par le biais duquel les clients peuvent accéder aux applications avec l’authentification unique.
Le lanceur d’application est vide pour le moment, mais vous pouvez ajouter des applications pour optimiser l’expérience de vos utilisateurs. Ils pourront ainsi cliquer sur une icône pour accéder instantanément à des applications de support, de facturation, de collaboration, et bien plus.
Ressources
-
Aide Salesforce : Fournisseurs d’authentification
-
Aide Salesforce : Create a Custom External Authentication Provider
-
Vidéo : Configuration de l’authentification unique SAML avec Salesforce en tant que fournisseur d’identité (4:09)