Pour les entreprises, l’authentification des utilisateurs finaux est importante dans de nombreuses situations. Si vous fournissez une assistance conversationnelle, il est possible que les utilisateurs veuillent avoir une conversation sur plusieurs appareils et plusieurs canaux. En authentifiant les utilisateurs finaux, vous pouvez vous assurer que tous les points de contact sont associés au bon utilisateur final. Cela peut améliorer la qualité de l’assistance que fournissent vos agents et renforcer la sécurité des informations sensibles qui peuvent être révélées lors des interactions d’assistance.
À propos de l’authentification des utilisateurs finaux dans la messagerie.
- Les agents sont plus sûrs que les utilisateurs finaux auxquels ils parlent sont bien qui ils prétendent être.
- Il est possible d’identifier un utilisateur sur tous les canaux si vous incorporez le widget à plusieurs domaines ou êtes connecté à des services externes, comme Shopify.
- Il est possible d’identifier un utilisateur sur plusieurs appareils et dans plusieurs navigateurs.
Terminologie de l’authentification dans la messagerie
- JWT : Zendesk utilise des tokens Web JSON (JWT) signés pour l’authentification des utilisateurs finaux dans la messagerie. Ces tokens contiennent des détails qui vérifient l’identité des utilisateurs finaux. Pour en savoir plus sur JWT, consultez jwt.io.
- Clé de connexion : une clé de connexion est créée par un administrateur Zendesk dans le Centre d’administration et partagée avec un développeur dans votre équipe qui l’utilise alors pour signer le token Web JSON (JWT) en fonction des besoins.
- ID externe : une chaîne alphanumérique, comme un nom ou ID d’utilisateur provenant d’un système externe, qui est unique à chaque utilisateur. C’est l’identifiant principal pour l’authentification dans la messagerie, même quand une adresse e-mail est incluse au JWT.
- Nom d’utilisateur : (facultatif) le nom de l’utilisateur final associé à l’ID externe ou l’adresse e-mail. Si vous incluez le nom d’utilisateur au JWT, il s’affiche dans l’espace de travail d’agent. Ces informations peuvent aider les agents à communiquer avec les utilisateurs finaux.
- E-mail : (facultatif) l’adresse e-mail unique associée à un utilisateur final.
Aperçu de l’implémentation de l’authentification dans la messagerie pour les utilisateurs finaux
- Pour commencer le processus d’authentification dans la messagerie, un administrateur doit générer une clé de connexion et la fournir à un développeur. Ensuite, le développeur utilise cette clé de connexion pour implémenter un service de backend capable de créer des JWT pour les utilisateurs.
- Quand nécessaire, ce service de backend crée et renvoie des JWT signés à votre site Web ou votre application mobile. Les JWT créés par ce service doivent inclure un ID externe unique et, facultativement, une adresse e-mail pour permettre l’identification de l’utilisateur final.
- Chaque fois qu’un utilisateur est connecté, votre site Web ou votre application doivent appeler une API de connexion équivalente, disponible pour le Web Widget et les Mobile SDK, et à ce moment-là, le JWT est transféré à Zendesk pour que le système vérifie l’identité prétendue de l’utilisateur.
Exigences pour l’authentification des utilisateurs finaux dans la messagerie
- L’espace de travail d’agent Zendesk est activé.
- Vous utilisez les canaux Web Widget ou Mobile SDK pour la messagerie.
- Vous associez les identités d’adresses e-mail aux utilisateurs finaux.
- Si vous voulez que les utilisateurs authentifiés aient des identités d’adresses e-mail vérifiées, les JWT que vous émettez pour les utilisateurs finaux doivent contenir les revendications
email
ETemail_verified: true
.
Authentification des utilisateurs finaux dans la messagerie - Expérience des agents
Les agents voient une icône de coche verte en regard du nom du visiteur et l’ID externe de l’utilisateur final est visible en regard du profil de l’utilisateur quand l’utilisateur final est authentifié.
En outre, chaque réponse publiée par un utilisateur final une fois qu’il a été authentifié est accompagnée d’une coche verte.
Un utilisateur final authentifié peut participer à une conversation sur plusieurs appareils de façon synchrone. Pour les utilisateurs finaux non authentifiés, des conversations et des enregistrements d’utilisateur séparés sont créés pour chaque appareil utilisé. Si un utilisateur final s’authentifie en cours de conversation, les conversations avant et après authentification sont automatiquement fusionnées pour assurer la continuité, que ce soit pour l’agent ou l’utilisateur final.
Si vous utilisez les identités d’adresses e-mail, le mappage des utilisateurs finaux avec les enregistrements d’utilisateur varie en fonction des paramètres de vos identités d’adresses e-mail. Avec la plupart des configurations, les imposteurs s’affichent comme des enregistrements d’utilisateur séparés et il n’y a pas de coche verte en regard de leur nom, car il est impossible de les authentifier. Si vous autorisez vos utilisateurs non authentifiés à demander des adresses e-mail vérifiées, les identités d’adresses e-mail sont associées au premier utilisateur qui demande l’adresse. Si deux utilisateurs finaux demandent la même adresse, l’identité d’adresse e-mail est associée à l’enregistrement d’utilisateur de l’utilisateur final qui parvient à s’authentifier et à vérifier l’adresse e-mail.
En cas de conflit, les identités d’adresses e-mail vérifiées l’emportent sur les identités non vérifiées. Par exemple, si un utilisateur non authentifié fournit une adresse e-mail déjà associée à une identité vérifiée, Zendesk crée une nouvelle session et un nouvel enregistrement d’utilisateur non authentifiés sans identité d’adresse e-mail pour l’utilisateur non authentifié qui essaie de se faire passer pour un utilisateur vérifié. De même, si un utilisateur non authentifié fournit une adresse e-mail mais ne peut pas la vérifier et qu’ultérieurement, un autre utilisateur fournit la même adresse e-mail et réussit à la vérifier et à se connecter avec son JWT, l’identité d’adresse e-mail sera associée à l’utilisateur authentifié et supprimée de l’enregistrement de l’utilisateur non authentifié.
Les agents peuvent fusionner les enregistrements d’utilisateur dupliqués et ajouter manuellement une identité d’adresse e-mail aux enregistrements d’utilisateur. Nous vous conseillons de former vos agents aux contrôles d’identité des utilisateurs finaux avant qu’ils n’effectuent ces actions.
Authentification dans la messagerie - Expérience des utilisateurs finaux
Une fois que vous avez implémenté l’authentification des utilisateurs finaux dans la messagerie, les utilisateurs finaux ne devraient pas voir une grande différence. Une fois qu’il a été authentifié et que son identité a été vérifiée par Zendesk, les bots de messagerie ne demandent pas à l’utilisateur final de fournir son nom ou son adresse e-mail dans le cadre de la réponse de messagerie par défaut.
Quand un utilisateur final est authentifié, les conversations sont synchronisées sur tous les appareils. Des conversations et des enregistrements d’utilisateur séparés sont créés pour les utilisateurs finaux non authentifiés. Si un utilisateur final s’authentifie en cours de conversation, la conversation anonyme créée avant qu’il ne se connecte est automatiquement fusionnée avec la conversation authentifiée pour assurer la continuité des conversations.
Création et partage d’une clé de connexion
Les clés de connexion sont utilisées par les développeurs pour créer des JWT pour les utilisateurs finaux. Vous devez être administrateur pour créer une clé de connexion. Vous pouvez créer un maximum de 10 clés. Si vous essayez de créer une nouvelle clé après avoir atteint cette limite, vous êtes invité à supprimer les clés inutilisées.
- Dans le Centre d’administration, cliquez sur Compte () dans la barre latérale, puis sélectionnez Sécurité > Authentification des utilisateurs finaux.
- Cliquez sur l’onglet Messagerie, puis sur Créer une clé.
Si vous créez votre première clé, Créer une clé s’affiche en bas de la page et sinon, en haut à droite de la page.
- Saisissez un nom pour la clé et cliquez sur Suiv.
- À l’invite, cliquez sur Copier pour copier le secret partagé, puis cliquez sur Masquer la clé définitivement.
La clé est enregistrée et un ID est affecté automatiquement. Vous pouvez trouver l’ID d’une clé dans la liste des clés de l’onglet Messagerie à la page d’authentification des utilisateurs finaux.
- Envoyez l’ID de la clé et le secret partagé que vous avez copié à votre développeur de façon confidentielle.
Authentification des utilisateurs finaux avec un ID externe uniquement
-
external_id : (obligatoire) une chaîne alphanumérique unique qui peut être utilisée pour identifier chaque utilisateur. Ces ID proviennent souvent de systèmes externes. Un ID ne doit pas dépasser 255 caractères.
Zendesk utilise
external_id
comme identifiant principal pour les utilisateurs qui s’authentifient via la messagerie. Quand vous authentifiez un utilisateur avec un JWT valide, Zendesk commence par résoudre un utilisateur existant avecexternal_id
. Si aucunexternal_id
correspondant n’est trouvé, les utilisateurs sont associés avec l’adresse e-mail fournie. Consultez Émission de JWT avec les adresses e-mail. -
scope : (obligatoire) la portée d’accès de l’appelant. La seule valeur valide est
user
. - name : (facultatif) le nom de l’utilisateur. L’inclusion du nom à la charge utile du JWT permet à Zendesk d’afficher le nom de l’utilisateur dans l’espace de travail d’agent et aide vos agents à fournir une assistance plus personnalisée.
{
"external_id": "12345678",
"scope": "user",
"name": "Jane Soap"
}
Incorporation des identités d’adresses e-mail à l’authentification de vos utilisateurs finaux
- Les utilisateurs authentifiés le sont via des JWT signés.
L’utilisation de JWT signés fournit une approche sûre et fiable car les utilisateurs finaux ne peuvent pas falsifier leur contenu. Si les attaques d’usurpation d’identité vous préoccupent, associez les identités d’adresse e-mail aux utilisateurs finaux authentifiés uniquement. C’est l’option la plus sécurisée et l’approche par défaut pour tous les nouveaux comptes Zendesk.
- Les utilisateurs non authentifiés sont les utilisateurs finaux qui fournissent une adresse e-mail à l’invite d’un bot Zendesk.
Attention, si vous autorisez l’utilisation des identités d’adresses e-mail pour les utilisateurs non authentifiés, vous vous exposez à ce que des utilisateurs se fassent passer pour d’autres en fournissant une adresse e-mail qui ne leur appartient pas.
Configuration des identités d’adresses e-mail
Avec les nouveaux comptes Zendesk, les identités d’adresses e-mail sont activées et configurées de façon à n’utiliser que des adresses e-mail vérifiées. C’est l’option la plus sécurisée. Les comptes plus anciens sont configurés de façon à utiliser les adresses e-mail vérifiées et non vérifiées. Avant d’ajouter des adresses e-mail à vos JWT, passez vos options en revue et mettez vos paramètres à jour en fonction de vos besoins.
- Dans le Centre d’administration, cliquez sur l’icône Canaux dans la barre latérale, puis sélectionnez Messagerie et réseaux sociaux > Messagerie.
- Cliquez sur Gérer les paramètres.
- Cliquez sur Identités d’adresses e-mail, puis sélectionnez l’une des options ci-dessous :
-
Utiliser uniquement des adresses e-mail vérifiées : les identités d’adresse e-mail sont créées uniquement pour les utilisateurs qui sont authentifiés et ont une adresse e-mail vérifiée incluse dans leur JWT émis. Les agents peuvent toujours ajouter une identité d’adresse e-mail à un enregistrement d’utilisateur manuellement.
Avec cette option, l’agent voit l’adresse e-mail fournie par l’utilisateur non authentifié dans l’historique de chats, mais il ne voit pas d’identité d’adresse e-mail associée à l’utilisateur dans la fiche d’information. Si un agent a besoin d’envoyer un e-mail de suivi à un utilisateur non authentifié, il doit ajouter l’identité d’adresse e-mail à cet enregistrement d’utilisateur manuellement. Si l’adresse e-mail de l’utilisateur non authentifié existe déjà dans un autre enregistrement d’utilisateur, l’agent peut fusionner ces deux enregistrements.
Avant d’ajouter manuellement une identité d’adresse e-mail ou de fusionner deux enregistrements d’utilisateur, nous vous conseillons de demander à vos agents d’effectuer un contrôle de la vérification d’identité pour éviter les attaques d’ingénierie sociale.
-
Utiliser des adresses e-mail vérifiées et non vérifiées : les identités d’adresses e-mail sont créées pour les utilisateurs qui sont authentifiés et ont une adresse e-mail vérifiée dans leur JWT, mais aussi pour les utilisateurs non authentifiés qui fournissent une adresse e-mail par le biais des workflows de bot. Avec cette option, les agents ont plus de chances de trouver l’adresse e-mail de l’utilisateur final dans la fiche d’information et les identités pour les adresses e-mail non vérifiées sont clairement signalées comme telles dans l’espace de travail d’agent. Si besoin est, les agents peuvent demander aux utilisateurs finaux de s’authentifier s’ils ont besoin d’envoyer des e-mails de suivi.
En cas de conflit, les identités d’adresses e-mail vérifiées l’emportent sur les identités non vérifiées.
-
Utiliser uniquement des adresses e-mail vérifiées : les identités d’adresse e-mail sont créées uniquement pour les utilisateurs qui sont authentifiés et ont une adresse e-mail vérifiée incluse dans leur JWT émis. Les agents peuvent toujours ajouter une identité d’adresse e-mail à un enregistrement d’utilisateur manuellement.
- (facultatif mais déconseillé) Si vous voulez que tous les utilisateurs, même les utilisateurs non authentifiés, puissent revendiquer les adresses e-mail vérifiées, sélectionnez Un utilisateur non authentifié peut revendiquer des adresses e-mail vérifiées.
Quand vous sélectionnez cette option, le statut de vérification des identités d’adresses e-mail recueillies à partir des canaux de messagerie n’est plus fiable, car un imposteur peut arriver après l’authentification d’un utilisateur et prendre possession de son statut d’adresse e-mail dans une interaction de messagerie ultérieure. Cela signifie que les attaques d’usurpation d’identité ont plus de chances de réussir et les agents n’ont que de moyens limités de savoir si l’utilisateur final est vraiment qui il prétend être. Cependant, les identités d’adresses e-mail vérifiées ont toujours préséances sur les identités d’adresses e-mail non vérifiées, et l’identité d’adresse e-mail est supprimée de l’enregistrement d’utilisateur de l’imposteur.
- Cliquez sur Enregistrer les paramètres.
Émission de JWT avec les adresses e-mail
-
external_id : (obligatoire) une chaîne alphanumérique unique qui peut être utilisée pour identifier chaque utilisateur. Ces ID proviennent souvent de systèmes externes. Un ID ne doit pas dépasser 255 caractères.
Zendesk utilise
external_id
comme identifiant principal pour les utilisateurs qui s’authentifient via la messagerie. Quand vous authentifiez un utilisateur avec un JWT valide, Zendesk commence par résoudre un utilisateur existant avecexternal_id
. Si aucunexternal_id
correspondant n’est trouvé, les utilisateurs sont associés avec l’adresse e-mail fournie. Consultez Émission de JWT avec les adresses e-mail. -
scope : (obligatoire) la portée d’accès de l’appelant. La seule valeur valide est
user
. - name : (facultatif) le nom de l’utilisateur. L’inclusion du nom à la charge utile du JWT permet à Zendesk d’afficher le nom de l’utilisateur dans l’espace de travail d’agent et aide vos agents à fournir une assistance plus personnalisée.
-
email : (obligatoire) adresse e-mail de l’utilisateur en cours de connexion. Elle doit être unique à l’utilisateur.
Configurez l’adresse e-mail pour qu’elle corresponde à l’adresse e-mail principale de l’utilisateur dans l’espace de travail d’agent. L’inclusion d’adresses e-mail secondaires aux JWT n’est pas prise en charge.
-
email_verified : (facultatif) indique si l’utilisateur final en question a prouvé qu’il est propriétaire de l’adresse e-mail. Si vous voulez que les utilisateurs finaux aient des identités d’adresses e-mail vérifiées, les JWT que vous émettez doivent contenir les revendications
email
ET"email_verified": true
.
{
"external_id": "12345678",
"email": "janes@soap.com",
"email_verified": true,
"name": "Jane Soap",
"scope": "user"
}
Résolution des conflits entre les ID externes et les e-mails dans les JWT
Zendesk utilise l’ID externe comme identifiant principal et les adresses e-mail ne sont utilisées que si aucune correspondance n’est trouvée pour l’ID externe. Si cependant, l’adresse e-mail présentée dans un JWT est déjà associée à un autre ID externe, Zendesk refuse le JWT et la tentative de connexion de l’utilisateur final échoue. Dans ce cas, la conversation commence avec l’utilisateur dans un statut non authentifié.
- Mettez le JWT à jour pour qu’il utilise une autre valeur
external_id
ou adresseemail
.OU
- Supprimez l’utilisateur avec la valeur
external_id
à l’origine du conflit, ce qui la libère et permet à un autre utilisateur de s’en servir. Consultez la section sur la suppression d’un utilisateur dans l’API Sunshine Conversations.