Présentation
Le SSO (Single Sign-On) permet aux utilisateurs qui ont un compte Microsoft de s’identifier dans Visult sans utiliser leur mot de passe Visult.
La connexion par mot de passe Visult peut être désactivée par l’administrateur, dans ce cas il est obligatoire de posséder un compte Microsoft.
Il existe deux types de comptes Microsoft.
- Le compte « personnel » : On peut utiliser ce type de compte pour se connecter à Visult uniquement quand l’utilisateur est déjà enregistré dans Visult avec la même adresse mail.
Quand le compte personnel a des adresses mail secondaires, elles ne sont pas utilisées par Visult. C’est l’adresse mail principale qui doit être enregistrée.
Seule l’authentification est possible. Toutes les autres fonctions décrites dans ce document ne sont pas utilisables avec un compte personnel. - Le compte « professionnel ou scolaire » : Ce compte est lié à une organisation (professionnelle ou scolaire) qui est le plus souvent décrite et managée dans « Azure Active Directory » (AAD). Cela peut être lié ou non à une organisation ayant souscrit à « Microsoft 365 ».
Les organisations utilisant « Microsoft Active Directory » (On-Premise) ne peuvent pas directement utiliser le SSO de Visult. Cependant il est possible de créer un annuaire « Azure Active Directory » ou « Microsoft 365 » et de le synchroniser avec « Microsoft Active Directory ».
https://docs.microsoft.com/fr-fr/microsoft-365/enterprise/set-up-directory-synchronization?view=o365-worldwide
Tous les utilisateurs ayant un compte Microsoft et déjà inscrits dans Visult, peuvent utiliser le SSO Microsoft pour se connecter à Visult (sauf quand Visult est déclaré dans l’organisation AAD et qu’un administrateur a mis en place une stratégie pour interdire l’utilisation de Visult).
Quand un administrateur ADD et Visult a configuré son organisation dans Visult et installé l’application Visult dans Active Directory, les fonctionnalités décrites dans ce document sont accessibles.
Technologie utilisée
Il existe plusieurs technologies pour le SSO, notamment OpenID Connect (OIDC) et SAML
https://docs.microsoft.com/fr-fr/azure/active-directory/manage-apps/sso-options
Visult a choisi OIDC qui est plus souple et plus simple à mettre en œuvre pour les administrateurs Active Directory et qui est la technologie préconisée par Microsoft.
Voici une description technique de OpenID Connect :
https://docs.microsoft.com/fr-fr/azure/active-directory/develop/v2-protocols-oidc
Configuration
Création de l’organisation dans Visult
Cette opération est réalisée par un super administrateur Visult. Vous devez lui fournir le nom de votre organisation (qui n’est pas nécessairement celui qui est utilisé dans AAD) et les informations (nom et adresse mail) de la personne qui sera en charge de l’administration de Visult et qui doit avoir les droits d’administration dans Azure Active Directory (au minimum, installer des applications, gérer les utilisateurs et les groupes).
Dans l’exemple utilisé dans cette documentation, l’organisation est « Darnwell » et l’administrateur est « admin@darnwell.eu »

Il est conseillé de vérifier qu’il est possible de se connecter à Visult avec le bouton [S’identifier] puis utiliser le menu de profil, administration, organisation.

A ce stade il n’existe pas d’informations SSO Microsoft pour l’organisation.
Connexion de l’organisation
La façon la plus simple est de se reconnecter à Visult avec le bouton [S’identifier avec Microsoft]
Si cela ne fonctionne pas directement il est probable que votre organisation ait interdit l’installation automatique des applications. Si cela a fonctionné vous pouvez ignorer la partie « Installation de Visult dans Azure Active Directory »
Installation de Visult dans Azure Active Directory
Connectez vous a Microsoft Azure avec le compte administrateur (exemple : admin@darnwell.eu)
https://portal.azure.com/#blade/Microsoft_AAD_IAM/AppGalleryBladeV2

Recherchez et sélectionnez Visult Cliquez sur [S’inscrire à Visult]
Première connexion à Visult en SSO Microsoft
Utilisez le compte de l’administrateur (exemple : admin@darnwell.eu). Selon la politique de sécurité de votre organisation vous devrez entrer le mot de passe et éventuellement une ou plusieurs validations supplémentaires (MFA), telles qu’entrer en code envoyé par SMS ou email, utiliser Microsoft Authenticator, …

On vous demande une première fois de donner les autorisations de base pour faire fonctionner le SSO OIDC
Si vous choisissez de donner le consentement pour le compte de votre organisation, il ne sera plus demandé aux utilisateurs. Dans le cas contraire, chaque utilisateur devra donner son consentement à la première connexion à Visult.
Il est recommandé de donner le consentement pour l’organisation.
Une fois connecté à Visult, allez dans la partie « Administration / Mon organisation ».
Vous trouverez l’information suivante, qui indique que la configuration n’est pas terminée.

Cliquez sur [Connectez vous]
Configuration des autorisations et consentements pour le fonctionnement de Visult
https://portal.azure.com/#blade/Microsoft_AAD_IAM/StartboardApplicationsMenuBlade/AllApps/menuId/ et sélectionnez [Visult] puis [Autorisations]

Les 3 autorisations attribuées automatiquement sont celles qui sont nécessaires pour le SSO.
Si vous n’attribuez pas d’autorisations supplémentaires :
- Les utilisateurs pourront se connecter
- Les comptes seront créés automatiquement
- Certaines informations du profil, du manager et des équipes ne seront pas prises en compte.
Pour donner toutes les autorisations nécessaires à une intégration plus poussée de Visult, cliquez sur : [Accorder un consentement d’administrateur pour …]

Cliquez sur [Accepter]
Détail des autorisations :
Conserver l’accès aux données auxquelles vous lui avez donné accès
Permet à Visult de stocker des données qui ne font pas partie du profil de base. Notamment : l’intitulé du poste, la relation avec son manager direct, le nom de l’équipe principale.
Activer la connexion et lire le profil utilisateur
Permet d’obtenir les informations complètes de l’utilisateur qui se connecte. Notamment : l’intitulé du poste, la relation avec son manager direct, le nom de l’équipe principale.
Lire les profils complets de tous les utilisateurs
Permet d’obtenir les informations du manager de l’utilisateur qui se connecte. Nécessaire quand Visult est configuré pour enregistrer automatiquement le manager (peut être désactivé dans Visult).
Lire tous les groupes
Permet d’inscrire automatiquement les utilisateurs dans les équipes Visult qui ont le même nom que les groupes Active Directory.
Permet d’utiliser les groupes Active Directory pour : limiter l’accès à Visult, attribuer la position « Manager » ou le rôle « Administrateur » dans Visult.
Lire les données de l’annuaire
Il est possible d’obtenir certaines données à partir d’informations restreintes pour OIDC, ce consentement permet d’utiliser celle d’active directory. Notamment pour le nom et l’id des groupes.
Une fois que les consentements ont été accordés, l’écran doit ressembler à ceci (il faut actualiser la page)

Une fois que les consentements ont été accordés, déconnectez-vous et reconnectez-vous à Visult.
La page administration/mon organisation doit maintenant ressembler à ceci :

Opérations dans Active Directory liées à Visult
Visult se connecte à Active Directory en lecture et uniquement pour les parties autorisées par les consentements accordés.
Aucune des modifications réalisées dans Visult n’ont un impact sur Active Directory.
Opérations dans Visult liées à Active Directory
Visult a fait le choix de ne pas fournir du provisionnement par SCIM (Cross-domain Identity Management). Ainsi les utilisateurs de votre organisation ne sont pas inscrits ou supprimés automatiquement de Visult.
Inscription des utilisateurs
Le lien entre un utilisateur existant de Visult et un utilisateur SSO se fait par son adresse email. La première fois qu’un lien a été fait, si l’utilisateur est inscrit dans Active Directory, son identifiant unique AD est stocké dans Visult. Si par la suite l’adresse email est modifiée, dans Visult ou dans AD, le lien persiste grâce à l’identifiant unique AD. Quand ce lien est réalisé, cela est visible dans l’enregistrement de l’utilisateur.
Contrôle des accès SSO des utilisateurs
Dans Visult / Adminitration / Organisation il est possible de spécifier 3 groupes Active Directory.
Quand un groupe est spécifié dans « Accorder l’accès à Visult aux membres de », alors lors d’une connexion en SSO il faut que l’utilisateur soit membre de l’un des 3 groupes pour accéder à Visult. Cela concerne également les utilisateurs déjà inscrits.
Par exemple, quand un utilisateur quitte l’entreprise on voudra garder son compte Visult pour attribuer des objets (cartes, OGSM, …) à d’autres utilisateurs, mais on voudra empêcher la connexion. Notez qu’il est également possible de réaliser cela avec des stratégies Active Directory en limitant l’usage de l’application Visult (mais c’est plus compliqué). Notez que si l’utilisateur a le droit de se connecter avec un compte / mot de passe il pourra continuer de le faire. On pourra soit lui enlever la possibilité de se connecter avec un mot de passe, soit le désactiver dans Visult.
La case à cocher « Interdire la connexion locale par mot de passe (SSO obligatoire) » existe soit au niveau de l’organisation, soit au niveau de l’utilisateur.
Quand un utilisateur est créé lors de la connexion SSO, son mot de passe n’est pas spécifié et l’utilisateur doit se connecter en SSO. S’il veut se connecter en local il faut décocher cette case et spécifier un mot de passe.
Prise en compte et mise à jour des attributs

Couleur | Visult | Active Directory | Commentaire |
microsoftId | ID d’objet | Mis en place lors de la première connexion en SSO | |
Nom d’utilisateur principal | Lors de la première connexion en SSO si un utilisateur Visult existe avec cette adresse mail, le mappage est fait et microsoftId est enregistré. Par la suite le lien est toujours fait même si les adresses mail sont modifiées | ||
Titre | Poste | Mis en place lors de la création automatique suite à une connexion en SSO. Ne sera pas modifié automatiquement ensuite | |
Rend compte à | Gestionnaire | Mis en place lors de la connexion SSO si cet attribut n’est pas existant dans Visult. Quand il existe déjà dans Visult il n’est pas modifié | |
Membre de | Service | Dans les paramètres de l’organisation Visult on peut spécifier la façon de prendre en compte cette information avec la liste de choix « Gérer les équipes Visult depuis les groupes et service SSO ». Quand cette option est en place : 1) On recherche une équipe qui correspond (id, nom identique sans tenir compte de la casse). Quand elle existe on affecte l’utilisateur qui se connecte 2) Si on permet la création des équipes, on créé automatiquement une équipe ayant le nom du service (cela n’est pas fait pour les groupes pour éviter d’utiliser automatiquement des groupes AD qui n’ont rien à voir avec Visult). Voir plus loin les détails sur la gestion des équipes. |
|
Rôle (administrateur) | Il est possible de sélectionner un groupe Active Directory dans l’organisation Visult « Donner le rôle admin aux membres de », les membres de ce groupe auront le rôle Administrateur dans Visult. Cela est réalisé à chaque connexion en SSO. Les administrateurs Visult qui ne sont pas ou qui ne sont plus dans ce groupe restent administrateurs | ||
Position (manager) | Gestionnaire | A chaque connexion un utilisateur peut obtenir la position « manager ». On ne peut redevenir « collaborateur » qu’en modifiant la position depuis Visult. Plusieurs paramètres AD sont pris en compte. Quand on est le « Gestionnaire » d’un utilisateur AD on est considéré comme manager (y compris quand on est gestionnaire d’utilisateurs qui ne sont pas encore inscrits dans Visutl)Quand on est membre d’un groupe AD sélectionné dans « Donner la position de manager aux membres de » |
Gestion des équipes
Les équipes Visult correspondent à l’attribut « Service » des utilisateurs Active Directory et aux « Groupes » AD.
Dans AD un utilisateur peut être affecté à un seul « Service » qui est un simple attribut texte (pas d’identifiant unique). Indépendamment de cela il peut être membre d’un ou plusieurs groupes (les groupes ont un nom, un identifiant unique et d’autres attributs non utilisés dans Visult).
La prise en compte des Services et groupes est réalisée à chaque connexion SSO et son comportement est défini dans Visult / administration / organisation. La liste « Gérer les équipes Visult depuis les groupes et service SSO » peut prendre les valeurs suivantes :
Ne pas manager les équipes
Dans ce cas on ne fera aucune action concernant la création des équipes ou l’affection des membres lors de la connexion en SSO.
On peut également désactiver cette fonction depuis AD en enlevant la permission « Lire tous les groupes » pour l’application Visult. Cela nécessite une action par script en PowerShell décrite par Microsoft (Révision des autorisations / This application has more permissions than I want).
Si on utilise cette option alors que des opérations SSO sur les équipes ont déjà été réalisées, cela ne modifie pas ce qui a été fait.
Affecter les utilisateurs dans les équipes Visult existantes
Pour l’utilisateur qui se connecte en SSO on commence par vérifier s’il a l’attribut AD « service ».
Comme cet attribut est un simple texte on considère que la casse n’est pas importante (Direction = DIRECTION = direction). On considère que l’identifiant SSO est le nom en minuscules (direction).
On recherche dans Visult s’il existe un groupe ayant l’attribut « SSO Name » identique, s’il n’existe pas on recherche une équipe ayant le même nom en minuscule (ici Direction = direction).
On considère ensuite les groupes AD dont l’utilisateur qui se connecte en SSO est membre. Les groupes ayant un identifiant unique, on recherche d’abord l’équipe Visult qui a le même identifiant (microsoftId). Si elle n’existe pas, on recherche parmi les équipes qui n’ont pas d’identifiant s’il en existe une avec un « SSO name » identique, puis un nom identique. Si on trouve une équipe on lui affecte l’identifiant unique dans « microsoftId »

On affecte l’utilisateur en tant que membre dans les équipes Visult qui existent.
Créer les équipes Visult et affecter les utilisateurs
On réalise la même recherche que pour l’option précédente. Si on ne trouve pas une équipe qui correspond à l’attribut AD « service », on créé l’équipe et on mémorise son nom dans « SSO Name ». Une fois que « SSO Name » est renseigné on peut modifier le nom dans Visult, cela n’aura pas de conséquences pour les prochaines affectations qui se feront correctement. Pour voir plus facilement les correspondances entre Visult et AD il est préférable de faire uniquement des modifications mineures (la casse, ajouter / supprimer des espaces, …).
Les groupes qui ont des noms différents des services AD et des équipes Visult ne sont pas créés uniquement. En effet, contrairement à l’attribut « service », les groupes AD sont utilisés pour beaucoup d’applications qui n’ont pas de lien avec l’organisation en équipes de l’entreprise. Il y aurait donc une création de trop nombreux groupes sans intérêt dans Visult.
Créer un raccourci de connexion
Si vous êtes connecté sur votre machine avec un seul compte Microsoft, il sera utilisé par défaut.
Si vous avez plusieurs comptes Microsoft connectés, on vous proposera de sélectionner un des comptes ou d’en utiliser un autre.
Il est possible de créer un raccourci pour forcer une nouvelle connexion :
https://app.visult.io/soo?microsoft=[email] en remplaçant [email] par votre adresse mail, par exemple :
https://app.visult.io/sso?microsoft=alain@darnwell.eu
Vous pouvez utiliser le compte Microsoft avec lequel vous êtes connecté ou choisir parmi ceux qui sont connectés avec :