SAML 2
Qu'est-ce que le SAML 2.0 ?
Le SAML 2.0 est un protocole de sécurité dédié aux échanges d'informations d'authentification et d'autorisation. Ce protocole est basé sur l'exploitation de tokens de sécurité contenant des informations afin d'échanger des données entre une « autorité » SAML (Identity Provider) et un « consommateur » SAML (Service Provider).
Acronymes :
SAML : Security Assertion Markup Language
IDP : Identity Provider
SP : Service Provider
Pré-requis pour la fédération des identités :
Compatibilité avec les IDP et SP initiés par les connexions SAML 2.0.
Compatibilité avec les requêtes HTTP POST et les liens de redirections.
Compatibilité avec le protocole HTTPS.
Compatibilité avec les requêtes d'assertion SAML.
Métadonnées IDP et SP.
Comment configurer l'authentification SAML 2.0 sur votre chatbot ?
Si le protocole SAML est activé sur une chatbox, les utilisateurs finaux doivent s'authentifier pour recevoir des messages de la chatbox. Les utilisateurs non authentifiés peuvent envoyer autant de messages que possible à la chatbox mais ils ne recevront aucune réponse. La durée de la cache est de 5 minutes.
Remarque : une fois activée, l'authentification SAML s'appliquera à l'API Chat signifiant que tous vos chatboxs, peu importe les canaux (site web, Teams, Meta), ne répondront qu'aux utilisateurs authentifiés.
Par défaut, la page de configuration SAML ne s'affiche pas dans le menu principal. Pour la rendre visible, allez dans Préférences >Bot >Général >Connexion et cochez Activer SAML.
Puis la page de configuration SAML 2 apparaîtra dans le menu principal : Préférences > Api > Saml 2
Naviguez vers la page Saml 2 où vous verrez les paramètres suivants :
Dydu Service Provider (SP): vous pouvez télécharger les métadonnées du Fournisseur de Service (SP) requises par votre Fournisseur d'Identité (IDP).
Fournisseur d'identité (IDP): vous devez télécharger ici votre fichier IDP (obtenu via votre compte d'administration IDP).
Activer/Désactiver l'authentification SAML 2.0: vous pouvez facilement activer ou désactiver l'authentification SAML 2.0 sur votre chatbox.
**URLs de redirection autorisées (séparées par une virgule) ** - champ optionnel mais recommandé : pour empêcher les utilisateurs d'être redirigés vers des sites internet malveillants pendant leur processus d'authentification, vous pouvez spécifier ici des URLs de confiance afin que la redirection (nécessaire lors de l’authentification) s’effectue uniquement vers ces urls. En général, les URLs autorisées correspondent à l'URL de votre IDP et celles des pages web où votre chatbox est intégrée.
Protocole de connexion: nous recommandons d'utiliser le protocole HTTP-POST (sélectionné par défaut) en priorité.
Cliquez sur Envoyer. Vous verrez un message de confirmation que l'authentification SAML est effective sur votre chatbox.
La rubrique Current IDP info vous permettra d'obtenir un aperçu des informations IDP. Le fichier IDP que vous téléchargez peut contenir des erreurs qui conduisent à des bugs. Dans ce cas, vous devrez réparer le fichier.
La section Test de configuration vous permet de tester si SAML 2.0 fonctionne bien sur votre chatbox. Si oui, après avoir cliqué sur "Envoyer une demande d'authentification à IDP", vous devriez être redirigé vers votre page d'authentification IDP.
Cas pratique : configurer SAML avec Google comme Fournisseur d'identité
Dans cette section, nous vous guiderons dans la façon d'activer l'authentification SAML en utilisant Google comme fournisseur d'identité.
1. Télécharger les données de Dydu Service Provider à partir du BMS
Allez dans Préférences >APIS >SAML 2> Dydu Service Provider (SP).
Cliquez sur Télécharger les données.
2. Créer une application Google SAML
Connectez-vous à https://admin.google.com
Dirigez-vous sur l'élément Applications > Applications SAML puis cliquez sur le +.
Cliquez ensuite sur Configurer mon application personnalisée.
Utilisez l'option 2 et téléchargez les données IDP.
Suivez la procédure jusqu'à la page Détails relatifs au fournisseur de services.
Compléter les champs suivants :
ID d'entité : https://xxxxx.doyoudreamup.com/BOTID
Le format de l'ID du nom : EMAIL.
Terminez la procédure.
L'opération peut prendre un certain temps.
3. Activez SAML sur votre chatbox
Allez dans Préférences >APIS >SAML 2 dans la BMS.
Importer le fichier IDP dans la section IDP.
Cochez la case Activer / Désactiver l'authentification SAML2
Définissez votre URL de confiance si vous le souhaitez.
Choisissez le protocole HTTP-POST puis emailAddress comme protocole de format de nom.
Enfin, cliquez sur envoyer.
4. Testez l'authentification SAML sans une chatbox
Cliquez sur Send auth request to IDP. Vous devriez être redirigé vers la page d'authentification Google.
5.1. Testez l'authentification SAML sur une chatbox V4
Dirigez-vous sur la page Intégration > Chatbox.
Cliquez sur Ajouter ou sélectionnez une configuration existante.
Cliquez sur Afficher vue avancée puis positionnez-vous sur le module module.common.saml2.auth.
Cochez les deux cases du sous-menu Configurations (utiliser relay state et redirection globale).
Déployez votre configuration et effectuez un test de votre chatbox.
5.2. Testez l'authentification SAML sur une chatbox V5
Tout d'abord, vous devez définir la valeur du champs "SAML" comme "true" dans le fichier configuration.json de votre chatbox v5.
Ensuite, lancez votre chatbox et vous devriez être redirigé vers la page d'authentification.
Pour plus d'informations, contactez votre Customer Success Manager.
Mail d'alerte pour la fin de validité d'un certificat SAML
Un mail d'alerte est généré par DYDU toutes les semaines à partir d'un mois avant la fin de validité de votre certificat SP généré par DYDU. Ce certificat a une durée de validité de 3 ans.
Exemple de mail :
Cette alerte concerne uniquement le certificat SP, il existe deux cas possibles suite à ce mail :
Cas 1 : Seulement le certificat SP est expiré -> Suppression du certificat
--> Pas d'impact sur le bot.
Cas 2 : Le certificat SP ainsi que l'IDP sont expirés -> Suppression du certificat SP puis régénération de celui pour création d'un nouvel IDP à uploader dans le BMS
--> Impact sur le bot, il ne sera plus disponible lorsque l'IDP est expiré.
Comment vérifier la validité d'un certificat SP ?
Vous pouvez télécharger les données de votre certificat SP généré depuis votre BMS, dans le menu SAML 2.
Avec les données, vous pouvez vérifier la validité du certificat SP en copiant le certificat sur un décodeur de certificat par exemple : https://www.sslshopper.com/certificate-decoder.html
Exemple de résultat de certificat expiré depuis le 12 juin 2021:
Il est aussi possible de voir les certificats sur le /bo de votre bot :
chatbox.auth.saml.IDP : Certificat IDP
hatbox.auth.saml.key.cert : Certificat SP
Comment procéder au renouvellement des certificats SAML 2.0 ?
A- Pour générer un nouveau certificat SP:
Faire une demande à votre CSM.
B - Pour générer un nouveau certificat IDP :
Vous devez régénérer votre certificat et l'uploader à nouveau dans le formulaire SAML2 du BMS.
Dernière mise à jour