La plateforme Harmony offre la possibilité d'utiliser la suite G Suite de google de manière similaire à Outlook, pour les entreprises possédant déjà un compte entreprise G Suite, ou désirant basculer vers la plateforme de Google.
La présente documentation vise à décrire le paramétrage nécessaire, aussi bien des outils Harmony que du compte d'entreprise G Suite.
Prérequis à la liaison G Suite
Pour utiliser la plateforme G Suite de Google, il faut posséder un compte d'entreprise Google. Un tel compte peut être créé à l'adresse suivante : https://support.google.com/business/answer/6085339?hl=fr .
Contrairement aux outils google grand public, la suite professionnelle G Suite n'est pas gratuite. La tarification est à aborder avec Google à la souscription du compte entreprise.
Remarque : Les interfaces d'administration de la plateforme Google Cloud Plateform sont susceptibles de changer, pouvant quelque peu altérer les modes opératoires décrits dans cette documentation.
Création/Sélection d'un projet pour l'accès au compte G Suite
L'autorisation et le paramétrage de l'accès au compte G Suite par les outils d'Harmony, se fait via un projet sur le compte G Suite de l'entreprise cliente.
Pour ce faire, il faut se connecter sur la plateforme d'administration du compte G Suite ( https://console.cloud.google.com ) en disposant des droits d'administration.
Le bandeau supérieur de la page d'administration permet de sélectionner le projet courant.
L'interface de sélection de projet permet de sélectionner un projet existant, ou de créer un nouveau projet.
N'importe quel projet peut être utilisé pour l'interfaçage entre Harmony et G Suite, cependant nous conseillons fortement de créer un projet spécifique dédié uniquement à cette fonction, notamment pour permettre au client de déléguer la gestion de ce projet à son distributeur, sans risque d'impacter ou de compromettre le reste de ses projets.
Pour plus de détails sur la création et la gestion des projets, se référer à la documentation Google https://cloud.google.com/resource-manager/docs/creating-managing-projects .
Paramétrage du compte de service pour G Suite
Afin de dialoguer avec G Suite, les outils Harmony vont devoir utiliser un compte de service. Il s'agit d'un compte anonyme (non rattaché à un utilisateur) permettant de réaliser certaines opérations au nom de chaque utilisateur du domaine G Suite (dans la limite de ce que l'administrateur du projet aura autorisé pour ce compte).
Création d'un compte de service pour G Suite
Dans les menus d'administration du projet, sélectionner le meni "IAM et administration" puis le sous-menu "Comptes de service".
Choisissez ensuite "CREER UN COMPTE DE SERVICE".
Il faudra donner un nom de compte. Lors de la création, il faut cocher les options "indiquer une nouvelle clé privée" et "activer la délégation G Suite au niveau du domaine" (cette option est nécessaire pour que le compte de service puisse agir sur les comptes des utilisateurs pour envoyer des mails, par exemple).
Lors de la création du compte de service, une clé de compte sera également crée, stocké sous forme de fichier au format JSON.
Une fois le compte créé, il apparaît dans l'interface d'administration des comptes de service. C'est ici que l'on pourra trouver l'id du compte de service qui sera utile plus tard.
Pour plus de détails sur l'administration des comptes de service, se référer à la documentation Google Cloud Plateform : https://cloud.google.com/iam/docs/creating-managing-service-accounts .
Activation de l'accès aux API pour G Suite
L'interface entre Harmony et G Suite se fait au moyen d'API mises à disposition par Google, mais qu'il faut activer au niveau de la console d'administration du compte G Suite ( https://admin.google.com )
Ceci se fait dans le menu "Sécurité" puis "Document de référence sur les API". Vérifier que l'accès aux API est bien activé (case à cocher).
Autorisation du compte de service pour G Suite
Une fois que l'accès aux API est activé, il faut maintenant configurer les droits d'actions dont le compte de service disposera sur le domaine.
Dans l'interface "Sécurité" de la console d'administration du compte G Suite, ouvrir le sous-menu "Paramètres avancés", puis sur "Gérer l'accès au client API".
C'est ici que l'on va associer les droits d'action au compte de service que nous avons créé dans les étapes précédentes.
Le compte de service est identifié grâce à son id.
Dans la zone de saisie destinée à recevoir les droits, il faut énumérer chacun des droits, séparés par des virgules, mais sans espace.
La chaîne finale à coller dans la zone de saisie des droits est donc:
Activation des API pour G Suite
Les API doivent maintenant être activées au niveau du projet.
Dans la console d'administration Google Cloud Plateform ( https://console.cloud.google.com/home ), allez dans le menu "API et services" puis le sous-menu "Bibliothèque").
Les API à activer pour le lien avec Harmony sont les suivantes:
- Admin SDK
- Google calendar API
- Gmail API
- Google + Domains API
- Google people API 'cette API se trouve sous le filtre "Réseaux sociaux")
- Google + API
Autorisation des utilisateurs du domaine pour G Suite
Il existe deux manières de s'identifier auprès des API Google. La première est d'utiliser le compte de service dont nous avons vu le paramétrage précédemment.
La seconde est de s'identifier en tant qu'utilisateur du domaine pour effectuer, depuis l'ERP, certaines opérations d'utilisateur (consultation des contacts, par exemple). Pour ce second mode, il faut que les utilisateurs du domaine disposent de certains droits, ce qui sera l'objet de cette section.
Création d'un rôle d'administrateur
Dans la console d'administration du domaine, (https://admin.google.com connecté en administrateur), allez dans le menu "Rôles d'administrateur".
Créer un nouveau rôle d'administrateur, puis dans le section "Droits pour l'API d'administration", lui affecter les droits en lecture pour l'utilisateur et pour le groupe.
Affectation du rôle aux utilisateurs
Dans l'onglet "Administrateur", sélectionner dans la liste déroulante les utilisateurs du domaine pour lesquels les droits doivent être ajoutés.
Pour plus d'information concernant les rôles d'administrateur, se référer à la documentation Google: https://support.google.com/a/answer/2406043?hl=en et https://support.google.com/a/answer/172176?hl=en&ref_topic=4514291 .
Paramétrage du serveur d'application pour G Suite
Dans le chapitre "Création d'un compte de service", nous avons créé le compte de service qui sera utilisé par Harmony et Divalto pour communiquer avec la plateforme G Suite. A cette occasion, une clé a été générée pour ce compte de service, et nous l'avons exporté sous forme de fichier JSON.
Ce fichier JSON est la clé qui permet d'accéder au compte G Suite de l'entreprise et avec des droits non négligeables sur les comptes et certaines données des utilisateurs. Il doit donc être conservé de manière sécurisée.
Sur le serveur d'application du site concerné, un administrateur doit récupérer ce fichier et le poser dans un répertoire local au serveur d'application, ET NON VISIBLE PAR LES UTILISATEURS.
Note 1: Le fichier local sera crypté et non lisible et non portable sur une autre architecture, il est donc conseillé de ne pas utiliser le fichier JSON original.
Note 2 : L'administrateur doit disposer des droits de lecture ET d'écriture sur le répertoire, sinon le fichier ne pourra pas être crypté.
Il faut lancer Xrtdiva en mode administrateur pour accéder à la question programme, puis lancer le programme Diva xdivaltoparammapigsuite.dhop (pour "divalto paramètres MAPI pour G Suite").
Il faut ensuite sélectionner le chemin du fichier JSON (local) de la clé de compte de service, puis indiquer une phrase secrète qui sera utilisée pour le cryptage du fichier.
De la sorte, le fichier local JSON, désormais crypté, s'il venait à être volé, na pourrait pas être utilisé par un programme étranger, ou même un programme Divalto d'un autre site (la phrase secrète, clé de cryptage, n'étant pas connue de l'autre site).
Note 3 : En cas de vol, de perte du fichier, ou de doutes, il est possible de révoquer les droits d'un compte de service et de reconfigurer la liaison avec un nouveau compte de service.
Paramétrage de DivaltoViewer pour G Suite
Dans le menu Options/Paramètres de DivaltoViewer, cliquer sur le bouton Gmail.
Il faut:
- Cocher la case "Utiliser Gmail pour l'envoi de mail et le CRM"
- Cocher la case "Utiliser la boîte de dialogue Gmail pour le bouton Contacts de DivaltoViewer".
- Vérifier que DivaltoViewer a bien été détecté et que l'accès aux API Google a été correctement configuré. Si tel est le cas, le champ "Accès au serveur Gmail" affichera un message : "Il y a un paramétrage pour G Suite sur..." (le chemin est volontairement tronqué pour rester illisible des utilisateurs)
Saisie des comptes G Suite des utilisateurs
Remarque : Cette étape est obsolète si vous optez pour l'attribution d'un compte windows par compte G Suite (cf. "Sécurisation des comptes G Suite").
Le champ "Compte" de DivaltoViewer ne peut jamais être propagé.
En conséquence, il faut que chaque utilisateur renseigne son compte G Suite.
Pour cela, il; faut ouvrir le zoom des tiers, aller sur une fiche tiers, puis cliquer sur "Envoyer un mail".
En bas, à gauche de la fenêtre de saisie du mail, le bouton "Paramétrer votre compte" permet d'ouvrir la fenêtre pop-up où l'utilisateur pourra renseigner son adresse G Suite.
Associer les comptes G Suite des utilisateurs à leur compte Windows
Il est désormais possible (et conseillé) d'associer les comptes G Suite de vos utilisateurs à leurs comptes Windows spécifiques.
De cette façon, les utilisateurs n'auront plus à renseigner eux-mêmes le compte G Suite à utiliser pour es envois de mails (entre autres), mais Harmony déterminera le compte G Suite à utiliser directement à partir du compte Windows (en fonction des associations créées par l'administrateur).
Ceci devrait limiter les risques d'erreur (mauvaise saisie utilisateur) ainsi que limiter la possibilité d'abus (un utilisateur ne pourra plus se faire passer pour un autre en utilisant un autre compte G Suite que le sien).
Création d'un attribut personnalisé pour les comptes G Suite
Une fois connecté à la console d'administration du compte d'entreprise G Suite ( https://admin.google.com ), il faut se rendre sur la page d'administration des utilisateurs.
De là, il faut aller dans le section de gestion des attributs personnalisés ( Menu "Plus/Gérer les attributs personnalisés" comme indique dans la capture d'écran ci-dessous).
Il faut ensuite créer l'attribut personnalisé "DivaltoInfinityWinAccount" (cliquer sur "Ajouter un attribut personnalisé"). Saisir le nom (DivaltoInfinityWinAccount) dans les champs Catégorie et Nom.
Cet attribut devra avoir les propriétés suivantes:
Attribution des comptes Windows aux comptes G Suite
Sur la page d'administration des utilisateurs, sélectionner un compte utilisateur.
Sur la page de l'utilisateur, étendre la section "Information Utilisateur" puis aller à la catégorie "DivaltoInfinityWinAccount" et cliquer sur "Ajouter DivaltoInfinityWinAccount".
Renseigner le compte Windows qui pourra utiliser le compte utilisateur G Suite en cours de paramétrage, puis sauvegarder les modifications ("Enregistrer").
On peut associer plusieurs comptes Windows à un même compte utilisateur G Suite.
Il faut répéter cette opération pour chaque utilisateur G Suite.
Paramétrage des serveurs Harmony pour G Suite
Il faut maintenant permettre au serveur d'application Harmony de récupérer et exploiter ces nouvelles informations.
Pour cela, il faut lancer le programme diva xdivaltoparammapigsuite.dhop.
Ce programme va lire la liste des utilisateurs G Suite et extraire les comptes Windows associés à chaque utilisateur (en accédant à l'attribut personnalisé qui a été paramétré dans les étapes précédentes).
Il est nécessaire de renseigner un compte utilisateur G Suite (service@diva.com dans la capture ci-dessus). Ce compte DOIT disposer des droits d'accès en lecture aux informations des utilisateurs.
Pour autant, ce compte n'a pas besoin de droits d'administration, et nous recommandons de ne pas utiliser un compte d'administration pour cette opération.
Remarque : Les opérations décrites dans cette section rendent obsolètes la "Saisie des comptes G Suite" dans Divalto infinity.
Si des comptes G Suite ont été renseignés dans l'ERP par des utilisateurs, il est conseillé que ceux-ci suppriment les paramètres qu'ils ont saisi, car il pourrait y avoir conflit avec les DivaltoInfinityWinAccount du compte G Suite.