- Enregistrer des applications sur Google Cloud Platform et/ou sur le portail Azure.
- Générer des identifiants de compte pour ces applications (ID client et secret client).
- Transmettre les identifiants générés à Consul.
Enregistrer l’application auprès de Google
Création d’un projet sur Google Cloud Platform
- Accédez à la page New Project de Google Cloud Platform.
- Saisissez un nom pour votre projet, puis cliquez sur Create.

- Patientez jusqu’à l’affichage d’une notification indiquant que votre projet a été créé.

Configuration de l’application
- Accédez à la console Google Cloud et sélectionnez le projet approprié.

- Dans le menu à gauche de l’écran, sélectionnez APIs & Services > OAuth consent screen.

- Sélectionnez le type d’utilisateur External et cliquez sur Create.
- Indiquez un nom pour votre application. Dans la liste déroulante User support email, sélectionnez votre adresse Gmail.

- Indiquez l’adresse e-mail du développeur dans la section Developer contact information en bas de la page et cliquez sur Save and continue.

- Cliquez sur Add or remove scopes. Cela ouvrira la boîte de dialogue Update selected scopes sur la droite.
- Copiez et collez le texte suivant dans le champ Manually add scopes dans la partie inférieure de la boîte de dialogue, puis cliquez sur Add to table :
Vous pouvez également sélectionner les scopes manuellement. Les scopes suivants doivent être sélectionnés :
openidhttps://mail.google.com/../auth2/userinfo.email../auth2/userinfo.profile
- Cliquez sur Update. Cette action ferme la boîte de dialogue Update selected scopes et affiche les scopes sélectionnés.

- Cliquez sur Save and continue en bas de l’écran.
- Cliquez sur Save and continue pour ignorer les paramètres de la page Test users et passer à la page Summary.
Création des identifiants de compte
- Sélectionnez Credentials dans le menu situé à gauche de l’écran.
- Cliquez sur + Create credentials puis sélectionnez OAuth client ID.

- Sélectionnez le type Web application.

- Dans la section Authorized redirect URIs, sélectionnez + Add URI.

- Dans le champ qui apparaît, renseignez l’URI de redirection :

- Cliquez sur Create.

Publication et vérification

https://mail.google.com/ permet à l’application d’accéder à des données utilisateur confidentielles, c’est pourquoi un message indiquant que l’application doit être vérifiée s’affichera.
Pour vérifier l’application, vous devrez fournir :
- Un lien officiel vers la politique de confidentialité de l’application
- Une vidéo YouTube démontrant l’objectif déclaré de la collecte des données des utilisateurs Google à l’aide de l’application
- Un texte adressé à Google contenant une description des raisons pour lesquelles vous avez besoin d’accéder à des données utilisateur confidentielles
- Une liste complète de tous vos domaines vérifiés dans la Google Search Console

Avant que votre application ne soit vérifiée, seuls 100 utilisateurs pourront l’utiliser. Le compteur d’utilisateurs se trouve dans la partie inférieure de la section OAuth consent screen et ne peut pas être réinitialisé pendant toute la durée de vie du projet.

Enregistrement de l’application dans Microsoft Azure
Enregistrement de l’application
- Accédez à la page App registrations.
- Cliquez sur New registration.
- Indiquez un nom pour votre application et sélectionnez les types de comptes pris en charge.

Si le type Multitenant est sélectionné pour l’application, celle-ci sera disponible pour les utilisateurs de n’importe quel locataire Azure AD. De telles applications doivent être vérifiées, ce qui n’est possible que pour les participants au Microsoft Partner Network. Si vous n’en faites pas partie, sélectionnez Single tenant, ce qui rendra votre application disponible uniquement pour les utilisateurs de votre propre locataire Azure AD.
- Dans la section Redirect URI, sélectionnez la plateforme Web et indiquez l’URI de redirection :

- Cliquez sur Register.
Configuration des autorisations de l’application
- Accédez à l’onglet API permissions.

- Cliquez sur Add permission.
- Dans la boîte de dialogue qui s’ouvre, sélectionnez la section Microsoft Graph.

- Sélectionnez Delegated permissions.

- Ajoutez les autorisations suivantes :
emailIMAP.AccessAsUser.Alloffline_accessopenidprofile
- Cliquez sur Add permissions. La boîte de dialogue se ferme et les autorisations sélectionnées s’affichent.
Création de secrets client
- Accédez à l’onglet Authentication.

- Dans la section Implicit grant and hybrid flows, cochez ID tokens (used for implicit and hybrid flows).

- Cliquez sur Save en haut de l’écran.
- Accédez à l’onglet Certificates & secrets et cliquez sur New client secret.

- Dans la boîte de dialogue qui s’ouvre, indiquez un nom pour le secret client et une date d’expiration.
La durée de validité maximale est de 24 mois.
- Cliquez sur Add. La boîte de dialogue se ferme et les informations sur votre nouveau secret client s’affichent.


Vérification de l’application
- Accédez à l’onglet Branding & properties.

- Vérifiez que le domaine est renseigné dans le champ Publisher domain. Si nécessaire, configurez votre domaine en cliquant sur Configure a domain.

L’icône d’avertissement affichée à côté du nom de domaine signifie qu’une application avec le domaine indiqué ne peut pas être vérifiée. Cliquez sur Update domain pour spécifier un autre domaine valide associé au client Azure Active Directory. Vous pouvez également vérifier un nouveau domaine.
- Dans la section Publisher verification, indiquez votre ID MPN et cliquez sur Verify and save.
Si vous ne disposez pas des autorisations nécessaires pour ajouter un ID MPN, vérifiez que toutes les exigences de vérification de l’éditeur sont respectées.
Fourniture des informations d’identification à Consul
Avant de procéder à la configuration, vérifiez que l’outil en ligne de commande kubectl est installé et que vous êtes connecté au cluster Kubernetes.
- Accédez à l’interface Web de Consul en exécutant la commande suivante :
http://localhost:8500/ui/dc1/kv/secret/.
- Dans l’onglet Key/Value qui s’ouvre, sélectionnez la portée de déploiement Vantage appropriée. Ensuite, sélectionnez le projet vantage.

- Sélectionnez le service tokenmanagement.

- Accédez à la section oAuthClientConfiguration.

- Sélectionnez le service pour lequel vous souhaitez spécifier les données utilisateur (google ou microsoft).

- Sélectionnez la clé clientId.
- Copiez et collez la valeur du Client ID que vous avez enregistrée précédemment dans le champ de saisie, puis cliquez sur Save.

- Répétez les étapes 6 et 7 pour la clé clientSecret.
- Redémarrez le service tokenmanagement en exécutant la commande suivante :
Mise à jour du secret client
Mise à jour du secret client dans Google
- Accédez à la Google Cloud Console et sélectionnez le projet approprié.
- Dans le menu de gauche, sélectionnez APIs & Services > Credentials.
- Dans la section OAuth 2.0 Client IDs, sélectionnez l’identifiant utilisé pour l’authentification lors de la connexion au serveur IMAP.
- Cliquez sur Reset secret.

- Cliquez sur Reset dans la boîte de dialogue contextuelle. La valeur du secret client sera alors mise à jour et l’ancienne valeur sera révoquée.
- Téléchargez le fichier JSON contenant les informations d’identification. Vous pouvez également copier la valeur du secret client à droite de l’écran.

Mise à jour du secret client dans Microsoft Azure
- Accédez à la page App registrations et sélectionnez l’application utilisée pour l’authentification avec le serveur IMAP.

- Accédez à l’onglet Certificates & secrets et cliquez sur New client secret.
- Dans la boîte de dialogue qui s’ouvre, indiquez un nom pour le secret client et sa date d’expiration.
- Cliquez sur Add. La boîte de dialogue se ferme et les informations sur le nouveau secret client s’affichent. Il est important de copier et d’enregistrer la Value, car vous ne pourrez plus y accéder une fois que vous aurez fermé la page.
- Si le secret client actuel n’a pas encore expiré, vous pouvez le supprimer afin que seul le nouveau secret client puisse être utilisé pour identifier le client.
Mise à jour du secret client dans Consul
clientId).