Présentation

Le SSO (Single Sign-On) permet aux utilisateurs qui ont un compte Google 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 Google.

Il existe deux types de comptes Google.

  • Le compte « personnel » : Ce type de compte n’est pas dépendant d’une organisation, il peut être lié avec n’importe quelle adresse mail, mais le plus souvent on a des adresses du type prénom.nom@gmail.com.

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 « Google Workspace » : Ce compte est lié à une organisation (professionnelle, associative, …) qui est managée dans Google Workspace.

Tous les utilisateurs ayant un compte Google Workspace et déjà inscrits dans Visult, peuvent utiliser le SSO Google pour se connecter à Visult.

Quand un administrateur d’organisation dans Google Workspace a également configuré son organisation dans Visult, 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://support.google.com/a/topic/7556794?hl=fr&ref_topic=7556686

Visult a choisi OIDC qui est plus souple et plus simple à mettre en œuvre pour les administrateurs Google Workspace et qui est plus récente que SAML.

Voici une description technique de OpenID Connect : https://openid.net/connect/

Et son intégration avec Google Workspace :

https://developers.google.com/identity/protocols/oauth2/openid-connect

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 Google Workspace) 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 pour l’organisation dans Google Workspace (au minimum, installer des applications, gérer les utilisateurs et les groupes).

Dans l’exemple utilisé dans cette documentation, l’organisation est « Naturarmony » et l’administrateur est « admin@naturarmony.org »

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 Google pour l’organisation.

Première connexion à Visult en SSO Google

Utilisez le compte de l’administrateur (exemple : alain@naturarmony.org). 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 une application sur Smartphone, …

On vous demande une première fois de donner les autorisations de base pour faire fonctionner le SSO OIDC.

Droits supplémentaires

Quand vous accordez des droits supplémentaires, Visult peut synchroniser des informations de l’annuaire Google Workspace.

Pour les utilisateurs : lire votre Fonction (Titre), votre Responsable (manager) et le Département (équipe) duquel vous êtes membre.

Pour les groupes : gérer des droits d’accès, vous donner la position « manager » ou le rôle « administrateur ». Quand il existe dans Visult des équipes qui correspondent aux groupes Google, vous serez automatiquement ajouté comme membre dans les équipes Visult.

Configuration des autorisations et consentements pour le fonctionnement de Visult

Visult ne peut se servir des droits optionnels uniquement quand les utilisateurs Google possèdent ces droits pour l’annuaire de l’organisation dans Google Workspace. Par défaut c’est le cas des administrateurs Google Workspace et ne n’est pas le cas des autres utilisateurs. Si l’administrateur Visult n’est pas un administrateur Google, il faut avoir attribué à cet utilisateur les privilèges de lecteur de l’annuaire pour les utilisateurs et les groupes.

Dans la page d’administration de votre organisation dans Visult, si le message ci-dessous est affiché c’est que les droits de l’utilisateur ne sont pas suffisants dans Google Workplace.

Si ce message n’est pas affiché, vous avez les droits suffisants dans Google Workspace, passez au chapitre suivant.

Le plus simple est de vous connecter à Visult avec un compte administrateur Google Workplace et d’accorder les autorisations « Afficher les groupes de votre domaine » et « Voir les informations sur les utilisateurs de votre domaine ». Cela n’est pas obligatoire, mais dans ce cas, toutes les fonctionnalités de l’intégration Google Workplace, décrites dans la suite de cette documentation, ne seront pas accessibles.

Vous devez vous déconnecter de Google, sinon Visult continue d’utiliser la session en cours et les nouveaux droits d’administration ne seront pas pris en compte. Dans cet exemple, fred@naturarmony.org sera un administrateur Visult et il n’a pas les droits suffisants dans Google Workplace.

Connectez-vous à la console d’administration de Google Workspace avec un compte d’administrateur Google.

https://admin.google.com/u/1/ac/roles

Allez dans la gestion des rôles, créez un nouveau rôle « Visult » puis affectez le à l’administrateur Visult. Si vous prévoyez plusieurs administrateurs Visult il est conseillé (mais pas nécessaire) d’affecter le rôle Visult à l’ensemble des comptes concernés.

Visult va utiliser les autorisations du dernier administrateur connecté, pendant une durée maximale de 6 mois. A chaque nouvelle connexion avec un compte ayant les privilèges suffisants, la durée sera prolongée de 6 mois.
Vous pouvez supprimer cet accès en enlevant le rôle Visult dans Google Workspace quand vous le souhaitez, dans ce cas les liaisons administrateur entre Visult et Google seront inactives.

Configuration SSO Google de votre organisation

La page administration/mon organisation doit maintenant ressembler à ceci :

Opérations dans Google Workspace liées à Visult

Visult se connecte à Google Workspace 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 Google Workspace.

Opérations dans Visult liées à Google Workspace

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 Google Workspace, son identifiant unique Google ID est stocké dans Visult. Si par la suite l’adresse email est modifiée, dans Visult ou dans Google Workspace, le lien persiste grâce à l’identifiant unique Google ID. 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 / Administration / Organisation il est possible de spécifier 3 groupes Google Workspace.
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 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

CouleurVisultGoogleCommentaire
 googleIdID utilisateurMis en place lors de la première connexion en SSO
 EmailAdresse e-mail principaleLors de la première connexion en SSO si un utilisateur Visult existe avec cette adresse mail, le mappage est fait et gooleId est enregistré. Par la suite le lien est toujours fait même si les adresses mail sont modifiées
 TitreFonctionMis en place lors de la création automatique suite à une connexion en SSO. Ne sera pas modifié automatiquement ensuite
 Rend compte àAdresse e-mail du responsableMis 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 deDépartementDans 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 Google qui n’ont rien à voir avec Visult). Voir plus loin les détails sur la gestion des équipes.
 Rôle (administrateur)ADMINISTRATEURLes administrateurs de votre organisation dans Google Workspace sont également administrateurs Visult. Il est possible de sélectionner un groupe Google 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)GestionnaireA chaque connexion un utilisateur peut obtenir la position « manager ». On ne peut redevenir « collaborateur » qu’en modifiant la position depuis Visult. Plusieurs paramètres Google sont pris en compte. Quand on est le « Responsable » d’un utilisateur Google on est considéré comme manager (y compris quand on est responsable d’utilisateurs qui ne sont pas encore inscrits dans Visult)Quand on est membre d’un groupe Google sélectionné dans « Donner la position de manager aux membres de »

Gestion des équipes

Les équipes Visult correspondent à l’attribut « Département » des utilisateurs et aux « Groupes » Google Workspace.

Dans Google Workspace un utilisateur peut être affecté à un seul « Département » 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 Google Workspace en enlevant la permission « Afficher les groupes de votre domaine » pour l’application Visult.

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 Google « Département ».
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 Google Workspace 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 (googleId). 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 « googleId »

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 Google « département », 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 Google 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 départements Google et des équipes Visult ne sont pas créés. En effet, contrairement à l’attribut « service », les groupes Google 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 Google, il sera utilisé par défaut.

Si vous avez plusieurs comptes Google 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?google=[email] en remplaçant [email] par votre adresse mail, par exemple :
https://app.visult.io/sso?google=alain@naturarmony.org