Exemple de configuration SAML avec le composant Active Directory Federation Services (ADFS)

Cette page de documentation décrit les étapes de configuration permettant d’activer l’authentification SAML dans Cyberwatch via l’utilisation d’un Fournisseur d’Identité Microsoft ADFS.

Elle constitue un exemple simplifié, permettant de mettre en place une configuration minimale pour le fonctionnement du service SAML.

Prérequis

La procédure d’exemple suppose les prérequis suivants :

  • un Serveur Windows 2019 fonctionnel ;
  • une instance Active Directory dans laquelle l’attribut « email » des utilisateurs est définie ;
  • un certificat SSL pour la configuration côté ADFS ;
  • ADFS installé sur votre serveur Windows.

Ceux-ci peuvent bien entendu être adaptés à votre environnement, la procédure fonctionnera par exemple de façon similaire avec un serveur Windows 2016 plutôt qu’un serveur Windows 2019.

Obtention du certificat de l’IDP

Avant tout, récupérer le certificat de l’IDP, qui sera renseigné dans Cyberwatch à l’étape 5°).

Pour ce faire, télécharger le fichier XML de métadonnées de l’IDP depuis l’URL : https://[URL_IDP]/federationmetadata/2007-06/federationmetadata.xml

Le fichier obtenu doit contenir deux certificats contenu dans des champs <X509Certificate>. Extraire le premier certificat contenu dans la section <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> du XML.

Conserver ce certificat, il sera utilisé dans la prochaine étape pour la configuration SAML dans Cyberwatch.

Configuration SAML côté Cyberwatch

Commencer par configurer la partie SAML dans Cyberwatch, depuis le menu Administration > Fournisseur d’identité.

  1. Dans le champ « Format du nom d’identification » renseigner urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress
  2. Dans le champ « Texte du bouton de connexion », renseigner la valeur souhaitée, par exemple Connexion ADFS. Celle-ci sera utilisée pour le libellé du bouton de connexion SAML sur la page d’authentification de Cyberwatch
  3. Dans le champ « SP Entity ID », nommer l’identificateur d’approbation de partie de confiance de votre IDP, par exemple CYBERWATCH
  4. OPTIONNEL Il est possible de renseigner le champ « IDP Entity ID » avec la valeur du champ entityID issu des métadonnées de l’IDP, généralement de la forme http://[URL_IDP]/adfs/services/trust
  5. Dans le champ « URL cible SSO IDP », renseigner l’URL d’authentification SSO de l’ADFS. Celui-ci doit prendre la forme https://[URL_IDP]/adfs/ls
  6. Pour le « Certificat IDP », copier le certificat exporté à l’étape précédente
  7. Sauvegarder la configuration

Une fois la configuration sauvegardée, l’URL des métadonnées SP Cyberwatch devient disponible et propose un lien permettant de télécharger le fichier XML de métadonnées de l’application Cyberwatch nommé saml_metadata. Le télécharger, celui-ci sera utilisé pour automatiser une partie de la configuration dans l’ADFS.

OPTIONNEL - Configuration des attributs dans Cyberwatch

Afficher les détails de configuration des attributs

La configuration des attributs est facultative, elle va permettre de gérer automatiquement l’attribution des rôles des utilisateurs, des groupes, de l’adresse e-mail de l’utilisateur, etc. et d’autres attributs spécifiques à Cyberwatch comme l’accès à tous les actifs ou l’accès à Kibana.

Les éléments qui suivent montrent des exemples de configuration de ces éléments dans le cadre d’une utilisation de ces attributs avec SAML ADFS.

Configuration des rôles

Le champ « Attribut des rôles » permet de définir un attribut sur lequel se baser pour assigner automatiquement des rôles aux utilisateurs SAML dans Cyberwatch.

Selon la valeur de cet attribut, les utilisateurs se verront assigner un rôle parmi Administrateur, Administrateur système, Administrateur sécurité ou Auditeur en fonction de la valeur de l’attribut défini dans la configuration de Cyberwatch pour chacun de ces rôles.

Dans cet exemple, nous allons utiliser les groupes Active Directory des utilisateurs afin de définir leurs rôle dans Cyberwatch.

  1. Pour « Attribut des rôles » renseigner la valeur http://schemas.xmlsoap.org/claims/Group
  2. Pour « Administrateur » renseigner la valeur cbw_admin
  3. Pour « Administrateur système » renseigner la valeur cbw_admin_sys
  4. Pour « Administrateur sécurité » renseigner la valeur cbw_admin_secu
  5. Pour « Auditeur » renseigner la valeur cbw_audit

Avec cette configuration, un utilisateur qui dispose de l’un des groupes LDAP renseignés comme valeur se verra assigner le rôle associé à cette valeur.

Un utilisateur LDAP n’appartenant à aucun des groupes spécifiés se verra assigner le rôle Auditeur.

Un utilisateur LDAP appartenant à plusieurs de ces groupes se verra assigner le rôle avec le plus de privilèges.

Configuration des groupes

Le champ « Attribut des groupes » permet de définir un attribut sur lequel se baser pour assigner automatiquement des groupes aux utilisateurs SAML dans Cyberwatch.

Dans le champ « Attribut des groupes », renseigner la valeur http://schemas.xmlsoap.org/claims/Group.

Un utilisateur se connectant avec SAML se verra automatiquement assigner aux groupes AD dont il fait partie, à condition que ces groupes existent dans Cyberwatch.

Il est nécessaire que les groupes soient au préalables créés dans Cyberwatch et que leurs noms soient identiques aux noms des groupes AD/LDAP.

Accès à tous les actifs / Accès à Kibana

Le fonctionnement pour l’« Accès à tous les actifs » ou pour l’« Accès à Kibana » est identique.

Il consiste à définir un attribut sur lequel se baser pour accorder automatiquement l’accès à tous les actifs ou l’accès à Kibana aux utilisateurs SAML.

Toujours avec l’exemple des groupes LDAP, il est par exemple possible de se baser sur l’attribut http://schemas.xmlsoap.org/claims/Group.

On pourrait ainsi avoir :

Nom de l’accèsAttributcompris dans
Accès à tous les actifshttp://schemas.xmlsoap.org/claims/Groupcbw_all_assets
Accès à Kibanahttp://schemas.xmlsoap.org/claims/Groupcbw_kibana

Attributs Adresse e-mail, Description et Nom complet

Ces trois attributs fonctionnent de la même manière. Ils permettent de définir un attribut SAML dont la valeur sera utilisée pour remplir respectivement l’adresse e-mail, la description et le nom complet de l’utilisateur.

Ces éléments peuvent nécessiter des configurations complémentaires dans les règles de revendication côté ADFS.

Configuration côté ADFS

Création d’une approbation de partie de confiance

Depuis le serveur ADFS, ouvrir la console nommée « Gestion AD FS ».

Ajouter une approbation de partie de confiance en suivant les étapes ci-dessous :

  1. Ouvrir le dossier « AD FS » dans le menu de navigation de la console
  2. Clic droit « Approbations de partie de confiance »
  3. Sélectionner « Ajouter une approbation de partie de confiance… », l’assistant d’Ajout d’approbation de partie de confiance s’ouvre
  4. À l’étape « Bienvenue » de l’assistant, choisir l’option « Prise en charge des revendications »
  5. À l’étape « Sélectionner une source de données », sélectionner « Importer les données concernant la partie de confiance à partir d’un fichier » et importer le fichier saml_metadata généré plus tôt depuis Cyberwatch
  6. À l’étape « Entrer le nom complet », renseigner un nom permettant d’identifier facilement la partie de confiance : par exemple Cyberwatch SAML
  7. À l’étape « Sélectionner une stratégie de contrôle d’accès », sélectionner « Autoriser tout le monde » ou toute autre option que vous souhaiteriez configurer
  8. L’étape « Prêt à ajouter l’approbation » permet simplement de vérifier les éléments configurés si vous le souhaitez
  9. À l’étape « Terminer », cocher l’option « Configurer une stratégie d’émission de revendications pour cette application » et valider

Création des Règles de Revendications

Une fois l’approbation de partie de confiance créée, l’ajout de règles de revendication va permettre d’envoyer à Cyberwatch les informations nécessaires pour l’authentification.

Notre exemple propose de créer deux règles qui suffiront pour rendre l’authentification SAML fonctionnelle, selon la procédure suivante :

  1. Sur l’approbation de partie de confiance Cyberwatch SAML nouvellement créée, clic droit « Éditer la stratégie d’émission de revendication… »
  2. Une fenêtre s’ouvre, permettant la création de « Règles de transformation d’émission »
  3. Cliquer sur « Ajouter une règle… »
  4. À l’étape « Choisir le type de règle », sélectionner « Envoyer les attributs LDAP en tant que revendications »
  5. À l’étape « Configurer la règle de revendication » :

    • nommer la règle de revendication
    • sélectionner le magasin d’attribut « Active Directory »
    • dans le menu « Mappage des attributs LDAP aux types de revendications sortantes », sélectionner E-Mail-Addresses pour l’attribut LDAP et Adresse de messagerie pour le type de revendication sortante
    • pour la gestion permissions dans Cyberwatch par la suite, sélectionner par exemple une autre entrée Token-Groups - Noms non qualifiés pour l’attribut LDAP et Groupe pour le type de revendication sortante
    • confirmer la création de la règle
  6. Ajouter une nouvelle règle, cette fois en sélectionnant Transformer une revendication entrante pour le modèle de la règle. Dans l’étape de configuration de la règle :

    • nommer la règle de revendication
    • sélectionner Adresse de messagerie pour le champ « Type de revendication entrante »
    • laisser Non spécifié pour le « Format d’ID de nom entrant »
    • sélectionner ID de nom pour le champ « Type de revendication sortante »
    • sélectionner Adresse de messagerie pour le champ « Format d’ID de nom sortant »
    • sélectionner l’option Passer toutes les valeurs de revendication
    • valider la règle

La configuration côté ADFS devrait alors être valide.

Vérification du fonctionnement et troubleshooting

Ouvrir une nouvelle fenêtre de navigation privée et se rendre sur la page d’authentification de Cyberwatch.

Un nouveau bouton bleu Connexion ADFS (en fonction de la valeur renseignée à l’étape 1°) de la configuration dans Cyberwatch) devrait être disponible.

Cliquer sur ce bouton, si les configurations côté ADFS et Cyberwatch sont valides, le navigateur vous redirige vers la page d’authentification ADFS.

Renseigner les identifiants de votre compte LDAP pour vous authentifier au service SAML ADFS. Le navigateur vous redirige et vous authentifie sur l’application Cyberwatch avec votre utilisateur.

Vérifier ne pas déjà avoir un compte local/LDAP créé dans Cyberwatch utilisant la même adresse e-mail que celle utilisée pour l’authentification SAML, ou vous obtiendrez une erreur lors de votre tentative de connexion.

Aide au troubleshooting

Des étapes de troubleshooting peuvent s’avérer nécessaires, celles-ci sont possibles via la visualisation des requêtes SAML.

La visualisation de ces requêtes peuvent généralement se faire à l’aide d’une extension de navigateur comme SAML-tracer par exemple.

N’hésitez pas à nous contacter à l’adresse e-mail support@cyberwatch.fr pour tout accompagnement technique à la configuration.


Retour en haut