Imaginons que la messagerie de votre entreprise soit hébergée sur un serveur Exchange on-premise, sur Microsoft 365 ou même sur un service de messagerie GoDaddy.
Une personne de votre entreprise, [email protected], souhaite accéder à des services Google qui exigent un compte utilisateur Google. Il peut s'agir de se connecter à YouTube pour créer une chaîne, de consulter un document Google partagé, d'accéder à Google Analytics et de l'administrer, de lancer des campagnes Google Ads ou même de démarrer un projet GCP à des fins de test.
Cet employé crée alors un nouveau compte utilisateur Google personnel, non géré ou grand public avec son adresse e-mail actuelle ([email protected]). L'e-mail de vérification arrive, et le tour est joué. Cet employé dispose désormais d'un compte ou d'une identité utilisateur Google non géré(e) rattaché(e) à son adresse e-mail au nom de domaine de votre entreprise.
Cette identité utilisateur Google est totalement invisible pour votre organisation ! En tant qu'admin, vous ne pouvez ni accéder à son mot de passe, ni la désactiver. Vous ne pouvez même pas consulter les journaux d'activité. Réinitialiser le mot de passe via votre propre système (Office 365, Exchange, hébergement, SIRH, etc.) n'aura aucun effet sur cette identité côté Google.
Plus surprenant encore, et potentiellement problématique sur le plan de la sécurité : même si vous avez déjà enregistré le nom de domaine de votre entreprise auprès d'un abonnement aux services Google d'entreprise ou managés (comme Google Workspace ou CloudIdentity) et que vous n'avez aucun autre fournisseur de messagerie pour ce domaine, un employé peut malgré tout enregistrer un compte non géré avec le nom de domaine de votre entreprise comme suffixe.
En clair, vous n'avez aucun moyen de gérer ce compte utilisateur !
Pour bien saisir les scénarios évoqués et avant d'aller plus loin, il faut comprendre trois principes fondamentaux :
- Les adresses e-mail sont uniques. Point.
- Dans les services cloud, l'adresse e-mail est le nom d'utilisateur (l'identité) servant à accéder aux services, à se connecter et à s'authentifier.
- Il existe trois types de comptes utilisateurs Google :
\* compte utilisateur gmail.com,
\* compte utilisateur personnel\ individuel\ grand public\ non géré,
\* compte utilisateur managé.
Comment créer chacun de ces comptes ?
Créez une adresse gmail.com et accédez aux services personnels de messagerie, de drive, de contacts et de calendrier, à utiliser comme identité pour vous authentifier auprès d'autres services tels que YouTube, Google Analytics, etc.
Renseignez votre propre compte personnel, grand public ou non géré avec une adresse e-mail existante (Yahoo.com, Outlook.com ou le domaine de votre entreprise) pour recevoir un e-mail de vérification. Dans ce cas, vous créez une identité Google, et non un compte complet de bout en bout avec accès à la messagerie ou au calendrier. Vous bénéficiez en revanche d'un accès au drive.
Pour cela, passez par le même lien, mais cliquez cette fois sur Utiliser mon adresse e-mail actuelle à la place. Un écran vous demandera alors de saisir l'adresse e-mail et de choisir un mot de passe (qui n'a pas besoin d'être celui de votre compte de messagerie). Vous créez une nouvelle identité Google, après quoi il vous faudra confirmer que cette adresse vous appartient.
Ces comptes peuvent servir à s'authentifier auprès de Google pour accéder à des services et créer des projets GCP, donnant ainsi à d'autres comptes utilisateurs personnels, grand public ou non gérés (utilisant le suffixe d'e-mail du nom de domaine) accès à des projets GCP ou à Google Analytics. Pour ce dernier cas, vous devez enregistrer le nom de domaine de votre entreprise auprès d'un abonnement aux services Google d'entreprise ou managés (comme Google Workspace ou CloudIdentity).
Un admin gérant cet abonnement peut alors créer un utilisateur pour vous. On parle de comptes\ identités utilisateurs managés.
Attendez, il y a un problème
Reprenons le premier scénario depuis le début. Les e-mails de votre entreprise sont hébergés sur un serveur Exchange on-premise, sur Microsoft 365 ou encore sur un service de messagerie GoDaddy. Mais le besoin se fait sentir de centraliser la gestion de tous vos comptes Google pour gagner en contrôle et en visibilité.
Peut-être souhaitez-vous aussi exploiter des comptes d'entreprise Google Analytics ou YouTube et activer le SSO afin que, lorsqu'un utilisateur est désactivé ou supprimé dans votre système, il le soit également côté Google. Vous enregistrez donc votre domaine d'entreprise auprès d'un abonnement aux services Google d'entreprise ou managés — par exemple Google Workspace (anciennement G-Suite) ou CloudIdentity.
Vous vérifiez que le domaine vous appartient et commencez à utiliser l'abonnement. Vous voulez créer [email protected]. Mais à la création, le système indique que cette adresse est déjà prise. Souvenez-vous de la première règle : il ne peut y avoir qu'une seule adresse e-mail.
Vous voilà confronté à un problème de comptes utilisateurs non gérés en doublon\ en conflit !
Imaginons à présent que vous soyez le super admin de l'entreprise pour un compte Google Workspace entièrement managé. Supposons qu'un de vos admins crée une règle de routage par défaut ou un mappage d'adresses de destinataires via la console d'administration Google de votre abonnement Google Workspace, pour rediriger tout e-mail envoyé à [email protected] (adresse e-mail privée).
Ce même admin se rend ensuite sur le lien d'enregistrement d'un compte utilisateur non géré et y enregistre l'adresse e-mail. Un e-mail de vérification est alors envoyé dans sa boîte de réception professionnelle, où il devra être validé.
Vous avez désormais un compte utilisateur Google non géré qui peut, en théorie, s'inscrire à Google Analytics, créer des chaînes YouTube portant le nom de domaine de votre entreprise et même obtenir un accès non autorisé à GCP. Pire encore : en tant qu'admin, vous n'avez aucune visibilité sur cet utilisateur, vous ne pouvez pas réinitialiser son mot de passe, etc.
À ce jour, Google n'empêche pas la création de comptes personnels ou grand public à partir d'un suffixe de nom de domaine enregistré. Vous ne disposez pas non plus d'une fonctionnalité dans la console d'administration permettant de bloquer ce comportement. Si vous contactez le support Google en demandant explicitement la désactivation de cette option pour votre compte G-Suite ou Google Workspace d'entreprise, ils ne pourront pas le faire et n'essaieront pas.
Contenir le problème avant de le résoudre
La solution
Si vous disposez d'un compte Google Workspace (G-Suite), vous pouvez créer une adresse fourre-tout (catch-all) via le lien suivant.
Une adresse catch-all garantit que les messages envoyés à une adresse e-mail incorrecte sont tout de même reçus par quelqu'un dans l'organisation, qui pourra les consulter et décider de la marche à suivre. C'est un bon moyen d'identifier les utilisateurs qui tentent d'activer un compte utilisateur Google non géré. En revanche, si c'est un admin qui définit une règle de routage, par exemple via un mappage d'adresses de destinataires, le catch-all ne sera d'aucune utilité.
La meilleure solution, qui fait office de contournement quel que soit votre système de messagerie, consiste tout simplement à couper la communication entre le processus de vérification et l'utilisateur. Créez une règle de conformité de contenu avec les conditions suivantes (toutes doivent être remplies — ET et non OU) :
Direction entrante ET Corps correspondant à la regex `^[0–9]{6}$` ET Corps contenant le texte Verify this email is yours ET Objet contenant le texte Verify your email address ET en-tête de l'expéditeur contenant le texte [email protected].
Tant que Google ne modifie pas ces métadonnées, vous êtes tranquille. Je recommande aussi de ne pas rejeter les e-mails de vérification. Redirigez plutôt le destinataire vers un admin, à l'image de l'adresse catch-all, afin de pouvoir les surveiller et d'éviter de rejeter des e-mails qui répondraient aux critères sans relever de ce scénario.
Vous pouvez aussi renforcer la protection si nécessaire. Dans GCP, vous pouvez définir une politique de restriction de partage par domaine — cliquez ici pour découvrir comment.
Cela empêchera l'ajout dans IAM d'utilisateurs hors de votre domaine pour les projets de l'organisation. Attention : la mesure n'est pas rétroactive, et vous ne pourrez plus ajouter d'utilisateurs gmail.com à vos projets. Seuls les utilisateurs managés au sein de votre compte Google Workspace ou CloudIdentity pourront se voir attribuer des autorisations IAM.
Gérer les comptes non gérés
Pour commencer, vous devez disposer du rôle Super Admin dans votre abonnement Google Workspace ou CloudIdentity afin d'effectuer les actions suivantes. En vous connectant à la console d'administration, vous pourrez ouvrir l'Outil de transfert pour les utilisateurs non gérés.
Ou via la section Utilisateurs en cliquant sur Plus :
À l'ouverture de l'outil de transfert, vous verrez la liste de tous les utilisateurs non gérés présentant des comptes en doublon ou en conflit. Pour chacun, vous pouvez envoyer une invitation à transférer son compte non géré vers votre entreprise. Une fois l'invitation envoyée, c'est à la personne concernée (en supposant qu'elle la reçoive bien) qu'il revient d'accepter ou de refuser la demande de transfert.
Une fois la demande acceptée, le nom d'utilisateur est rattaché à votre compte d'entreprise et apparaît dans votre liste d'utilisateurs. L'utilisateur peut continuer à s'authentifier comme avant, à la différence près que le compte est désormais soumis à la politique de votre entreprise (2FA, services autorisés ou non, expiration de session, etc.). Et si cet utilisateur avait accès à des projets GCP, il pourra continuer à y accéder.
En l'absence de réponse ou en cas de refus, vous pouvez prendre des dispositions (créer des règles de routage pour rediriger les messages adressés à ces comptes utilisateurs vers une boîte d'admin), renvoyer l'invitation et l'accepter au nom de l'utilisateur (vous êtes propriétaire du domaine et les enregistrements MX pointent vers le compte de votre entreprise).
Je recommande d'agir avec prudence et d'essayer de retrouver l'employé concerné. Il peut s'agir d'un ancien collaborateur qui a simplement oublié de fermer son compte ou qui ignorait cette démarche. Vous pouvez aussi tout simplement créer l'utilisateur.
Lors de la création de l'utilisateur via la console d'administration, un écran vous demandera si vous souhaitez envoyer une invitation de transfert à l'utilisateur ou créer le compte malgré tout — ce qui créera une nouvelle identité managée au sein de votre abonnement d'entreprise — et l'utilisateur d'origine sera renommé en quelque chose comme username%[email protected].
Lorsque l'utilisateur voudra se servir de son compte pour accéder à un service Google, il aura le choix entre Compte professionnel — celui que vous avez créé — ou Compte personnel — le username%[email protected].
Les données de l'utilisateur resteront sur le compte d'origine, et toutes les données associées comme Google Analytics ou les chaînes YouTube resteront rattachées à son compte personnel. Ces données ne seront pas accessibles avec le nouveau nom d'utilisateur que vous avez créé.
À noter : l'API est sollicitée lors de l'utilisation de GCDS (Google Cloud Directory Sync) depuis un MS-AD on-premise vers Google, lors de l'auto-provisionnement d'utilisateurs depuis MS-AAD (Microsoft Azure Active Directory) ou depuis des solutions tierces comme Okta. Cette API ignore tout des comptes personnels, grand public et non gérés. Elle créera simplement les utilisateurs automatiquement, et l'utilisateur personnel non géré sera renommé sans que l'admin soit invité à effectuer un transfert au préalable.
Google laisse n'importe qui créer des utilisateurs non gérés s'appuyant sur le suffixe d'e-mail du domaine de votre entreprise. Vous n'avez aucun contrôle sur ces utilisateurs, qui peuvent obtenir l'accès à des projets Google Cloud Platform (GCP), créer des chaînes YouTube, exploiter Google Analytics et bien plus encore. C'est une réalité à accepter et à reconnaître comme un problème potentiel.
La bonne nouvelle, c'est qu'en tant qu'admin, vous avez les moyens de contourner la situation, d'empêcher la création de ces utilisateurs et d'annuler ceux déjà créés.
Pour rester informé, suivez-nous sur le blog DoiT Engineering, la page LinkedIn DoiT et le compte Twitter DoiT. Pour découvrir nos opportunités de carrière, rendez-vous sur https://careers.doit-intl.com.