Fédérer Google Cloud Platform avec Active Directory : Synchroniser les comptes utilisateur

Ce guide est le deuxième d'une série de trois articles expliquant comment étendre une solution de gestion des identités existante basée sur Active Directory à Google Cloud Platform (GCP). Il vous explique comment configurer la synchronisation des comptes entre Active Directory et Cloud Identity à l'aide de Google Cloud Directory Sync (GCDS).

La série comprend les éléments suivants :

Ce guide suppose que vous disposez d'une forêt Active Directory dont vous comptez synchroniser tous les domaines avec Cloud Identity.

Pour suivre ce guide, vous devez avoir accès à un compte Active Directory autorisé à gérer les utilisateurs. De plus, si vous n'avez pas encore de compte Cloud Identity, vous aurez besoin d'un accès administrateur à votre zone DNS pour vérifier les domaines. Si vous avez déjà un compte, assurez-vous que vous disposez d'un compte utilisateur Cloud Identity doté des droits de super-administrateur.

Objectifs

  • Installer Cloud Directory Sync et le connecter à Active Directory ainsi qu'à Cloud Identity
  • Configurer Cloud Directory Sync pour synchroniser les comptes utilisateur avec Cloud Identity
  • Enregistrer une tâche planifiée de synchronisation continue avec Cloud Identity

Coûts

Si vous utilisez l'édition gratuite de Cloud Identity, ce guide n'entraînera l'utilisation d'aucun composant GCP facturable.

Avant de commencer

Planifier le déploiement de Cloud Directory Sync

Décider où déployer Cloud Directory Sync

Cloud Directory Sync est capable de synchroniser les comptes utilisateur et les groupes d'un annuaire LDAP avec Cloud Identity. En tant qu'intermédiaire entre le serveur LDAP et Cloud Identity, Cloud Directory Sync interroge l'annuaire LDAP pour en extraire les informations requises, et utilise l'API Directory pour ajouter, modifier ou supprimer des comptes dans Cloud Identity.

Dans la mesure où Active Directory Domain Services est basé sur LDAP, Cloud Directory Sync convient parfaitement pour assurer la synchronisation des comptes entre Active Directory et Cloud Identity.

Lorsque vous connectez une infrastructure Active Directory locale à GCP, vous pouvez exécuter Cloud Directory Sync aussi bien sur site que sur une machine virtuelle Compute Engine déployée dans GCP. Dans la plupart des cas, il est cependant préférable d'exécuter Cloud Directory Sync sur site :

  • Étant donné que les informations gérées par Active Directory comprennent des informations personnelles et sont généralement considérées comme sensibles, vous souhaiterez probablement éviter tout accès à Active Directory depuis l'extérieur du réseau local.
  • Par défaut, Active Directory utilise le protocole LDAP non chiffré. Si vous accédez à Active Directory à distance depuis GCP, vous devrez recourir à une communication chiffrée. Bien qu'il soit possible de chiffrer la connexion à l'aide de LDAP/S ou de Cloud VPN, cela augmente la complexité de la configuration.
  • La communication de Cloud Directory Sync vers Cloud Identity s'effectue via HTTPS et ne nécessite que peu ou pas de modification de la configuration de votre pare-feu.

Vous pouvez exécuter Cloud Directory Sync sous Windows ou Linux. Bien que Cloud Directory Sync puisse être déployé sur le contrôleur de domaine, il est préférable de l'exécuter sur un ordinateur distinct. Cet ordinateur doit présenter la configuration système requise et disposer d'un accès LDAP à Active Directory. Ce guide suppose que Cloud Directory Sync s'exécute sur une machine Windows associée à un domaine, étant entendu que ces deux caractéristiques ne font pas partie des exigences relatives à la machine utilisée.

Afin de faciliter la configuration de la synchronisation, Cloud Directory Sync présente une interface graphique appelée "Gestionnaire de configuration". Si le serveur sur lequel vous souhaitez exécuter Cloud Directory Sync est doté de la fonctionnalité Expérience utilisateur, vous pouvez exécuter le Gestionnaire de configuration sur le serveur lui-même. Sinon, vous devrez exécuter le Gestionnaire de configuration localement, puis copier le fichier de configuration résultant sur le serveur, où vous pourrez faire appel à ce fichier pour exécuter la synchronisation. Ce guide suppose que vous exécutez le Gestionnaire de configuration sur un serveur doté d'une interface utilisateur graphique.

Décider où récupérer les données

Cloud Directory Sync fait appel à LDAP pour interagir avec Active Directory et récupérer les informations relatives aux comptes utilisateur et aux groupes. Pour rendre cette interaction possible, Cloud Directory Sync a besoin que vous indiquiez un nom d'hôte et un port dans la configuration. Dans un environnement Active Directory de petite envergure n'exécutant qu'un seul serveur de catalogue global, la spécification d'un nom d'hôte et d'un port ne présente aucun inconvénient, dans la mesure où il suffit que Cloud Directory Sync pointe directement sur ce serveur de catalogue global.

Dans un environnement plus complexe exécutant des serveurs de catalogue global redondants, faire pointer Cloud Directory Sync sur un seul serveur reviendrait à se priver de la redondance, ce qui n'est pas souhaitable. Bien qu'il soit possible de configurer un équilibreur de charge répartissant les requêtes LDAP entre plusieurs serveurs de catalogue global et assurant le suivi des serveurs temporairement indisponibles, il est préférable de recourir au mécanisme de localisation de contrôleurs de domaine pour localiser les serveurs de manière dynamique.

Cloud Directory Sync ne permet pas l'utilisation du mécanisme de localisation de contrôleurs de domaine à l'heure actuelle. Dans ce guide, vous adjoindrez à Cloud Directory Sync un petit script PowerShell permettant d'interagir avec le mécanisme de localisation de contrôleurs de domaine, ce qui vous évitera de configurer les points de terminaison des serveurs de catalogue global de manière statique.

Configurer Cloud Identity

Créer un compte utilisateur Cloud Identity pour la synchronisation

Pour synchroniser les comptes, Cloud Directory Sync doit interagir avec Cloud Identity. Les opérations Cloud Identity consistant à créer, répertorier ou supprimer des utilisateurs (et éventuellement des groupes et des unités organisationnelles) nécessitent des droits d'administrateur.

Lors de votre inscription à Cloud Identity, vous avez déjà créé un compte super-administrateur. Vous pourriez utiliser ce compte pour Cloud Directory Sync, mais il est préférable de créer un compte distinct réservé à cet usage :

  1. Ouvrez la console d'administration et connectez-vous à l'aide du compte super-administrateur que vous avez créé lors de votre inscription à Cloud Identity.
  2. Dans le menu, cliquez sur Annuaire > Utilisateurs, puis cliquez sur l'icône + pour créer un utilisateur.
  3. Indiquez un prénom, un nom et une adresse e-mail appropriés, tels que :

    1. Prénom : Active Directory
    2. Nom : Synchronizer
    3. Adresse e-mail principale : ad-synchronizer

    Conservez le domaine principal dans l'adresse e-mail, même si celui-ci ne correspond pas à la forêt à partir de laquelle vous effectuez la synchronisation.

  4. Assurez-vous que l'option Générer automatiquement un mot de passe est désactivée, puis saisissez un mot de passe.

  5. Assurez-vous que l'option Exiger la modification du mot de passe à la prochaine connexion est désactivée.

  6. Cliquez sur Ajouter un utilisateur.

  7. Cliquez sur OK.

Pour permettre à Cloud Directory Sync de créer, répertorier et supprimer des comptes utilisateur et des groupes, le compte doit disposer de droits supplémentaires. En outre, il est conseillé d'exempter ce compte de l'authentification unique. Dans le cas contraire, vous pourriez vous trouver dans l'impossibilité de réautoriser Cloud Directory Sync en cas de problème lié à l'authentification unique. Vous pouvez satisfaire ces deux conditions en attribuant au compte le rôle de super-administrateur :

  1. Recherchez le nouvel utilisateur dans la liste et ouvrez-le.
  2. Sous Rôles et droits d'administrateur, cliquez sur Attribuer des rôles.
  3. Activez le rôle Super-administrateur.
  4. Cliquez sur Enregistrer.

Activer l'accès aux API

Cloud Directory Sync utilise l'API Cloud Identity pour synchroniser les comptes. Vous devez donc commencer par activer cette API :

  1. Dans le menu de la console d'administration, sélectionnez Sécurité > Paramètres.
  2. Cliquez sur Référence de l'API pour afficher les paramètres liés à l'API.
  3. Assurez-vous que la case Activer l'accès aux API est sélectionnée.
  4. Au bas de la page, cliquez sur Enregistrer. Si vous avez déjà activé l'accès aux API, vous pouvez ignorer cette étape.

Configurer la synchronisation Active Directory

Créer un compte utilisateur Active Directory pour la synchronisation

Pour être à même de récupérer les informations relatives aux utilisateurs et aux groupes à partir d'Active Directory, Cloud Directory Sync doit disposer d'un compte de domaine doté d'un accès suffisant. Plutôt que de réutiliser un compte Windows existant à cette fin, créez un compte dédié à Cloud Directory Sync :

  1. Ouvrez le composant logiciel enfichable Utilisateurs et ordinateurs Active Directory.
  2. Accédez au domaine et à l'unité organisationnelle dans lesquels vous souhaitez créer l'utilisateur. Si votre forêt comporte plusieurs domaines, l'utilisateur que vous créez doit se trouver dans le même domaine que la machine Cloud Directory Sync.
  3. Cliquez avec le bouton droit sur le volet de droite et sélectionnez Nouveau > Utilisateur.
  4. Indiquez un prénom, un nom et une adresse e-mail appropriés, tels que :
    1. Prénom : Google Cloud
    2. Nom : Directory Sync
    3. Nom d'ouverture de session de l'utilisateur : gcds
    4. Nom d'ouverture de session de l'utilisateur (antérieur à Windows 2000) : gcds
  5. Cliquez sur Suivant.
  6. Fournissez un mot de passe conforme à vos règles en matière de mots de passe.
  7. Désactivez la case L'utilisateur doit changer le mot de passe à la prochaine ouverture de session.
  8. Sélectionnez Le mot de passe n'expire jamais.
  9. Cliquez sur Suivant, puis sur Terminer.

Toutes les conditions préalables à l'installation de Cloud Directory Sync sont maintenant remplies.

Installer Cloud Directory Sync

Sur la machine où Cloud Directory Sync va être exécuté, téléchargez et exécutez le programme d'installation de Cloud Directory Sync. Plutôt que de recourir à un navigateur pour télécharger le programme d'installation, vous pouvez exécuter la commande PowerShell suivante :

(New-Object net.webclient).DownloadFile("https://dl.google.com/dirsync/dirsync-win64.exe", "$(pwd)\dirsync-win64.exe")

Une fois le téléchargement terminé, vous pouvez lancer l'assistant d'installation en exécutant la commande suivante :

.\dirsync-win64.exe

Créer un dossier pour la configuration de Cloud Directory Sync

Cloud Directory Sync stocke sa configuration dans un fichier XML. Comme cette configuration comprend un jeton d'actualisation OAuth permettant à Cloud Directory Sync de s'authentifier auprès de Google, assurez-vous de sécuriser correctement le dossier utilisé pour la configuration.

De plus, Cloud Directory Sync n'a besoin d'accéder à aucune ressource locale en dehors de ce dossier. Vous devez donc le configurer pour s'exécuter sous un compte utilisateur limité, LocalService :

  1. Sur la machine sur laquelle vous avez installé Cloud Directory Sync, connectez-vous à l'aide d'un compte d'administrateur de domaine ou d'administrateur local.
  2. Ouvrez une console PowerShell dotée des droits d'administrateur.
  3. Exécutez les commandes suivantes pour créer un dossier nommé $Env:ProgramData\gcds destiné au stockage de la configuration, puis pour appliquer une liste de contrôle d'accès (LCA) permettant de n'accorder l'accès qu'à Cloud Directory Sync et aux administrateurs :

    $gcdsDataFolder = "$Env:ProgramData\gcds"
    New-Item -ItemType directory -Path  $gcdsDataFolder
    &icacls "$gcdsDataFolder" /inheritance:r
    &icacls "$gcdsDataFolder" /grant:r "CREATOR OWNER:(OI)(CI)F" /T
    &icacls "$gcdsDataFolder" /grant   "BUILTIN\Administrators:(OI)(CI)F" /T
    &icacls "$gcdsDataFolder" /grant   "Domain Admins:(OI)(CI)F" /T
    &icacls "$gcdsDataFolder" /grant   "LOCAL SERVICE:(OI)(CI)F" /T
    
  4. Pour déterminer l'emplacement du dossier ProgramData, exécutez la commande Write-Host $Env:ProgramData. Dans les versions françaises de Windows, ce chemin est généralement le suivant : c:\ProgramData. Vous aurez besoin de ce chemin ultérieurement.

Se connecter à Google

Vous allez maintenant utiliser le Gestionnaire de configuration pour préparer la configuration de Cloud Directory Sync. Ces étapes supposent que vous exécutez le Gestionnaire de configuration sur le même serveur que celui sur lequel vous prévoyez d'exécuter Cloud Directory Sync.

Si vous exécutez le Gestionnaire de configuration sur un ordinateur distinct, veillez à copier ensuite le fichier de configuration sur le serveur Cloud Directory Sync. Sachez en outre qu'il ne vous sera peut-être pas possible de tester la configuration sur une autre machine.

  1. Lancez le Gestionnaire de configuration. Vous trouverez celui-ci dans le menu "Démarrer" de Windows, sous Google Cloud Directory Sync > Gestionnaire de configuration.
  2. Cliquez sur Google Domain Configuration (Configuration du domaine Google) > Connection Settings (Paramètres de connexion).

    Configuration du domaine Google > Paramètres de connexion

  3. Pour Primary Domain Name (Nom de domaine principal), saisissez le domaine principal de votre compte Cloud Identity. Lorsque vous synchronisez plusieurs forêts à l'aide d'un même compte Cloud Identity, le nom de domaine principal peut correspondre à une forêt distincte de celle que vous configurez.

  4. Cliquez sur Authorize Now (Autoriser maintenant).

  5. Dans la boîte de dialogue, cliquez sur Sign-in (Connexion) : vous accédez à une fenêtre de navigateur vous invitant à vous connecter. Si vous utilisez la configuration sécurisée par défaut d'Internet Explorer, plusieurs messages d'avertissement sont susceptibles de s'afficher. Si tel est le cas, vous pouvez copier l'URL sur votre ordinateur local et l'ouvrir depuis ce dernier.

    Autoriser GCDS

  6. Lorsque la page de connexion Google apparaît, connectez-vous à l'aide du compte Google nouvellement créé ad-synchronizer et du mot de passe que vous avez spécifié pour ce compte.

    Si vous avez déjà configuré le compte Cloud Identity pour l'utilisation de l'authentification unique, il se peut que vous soyez automatiquement redirigé vers la page de connexion AD FS (Active Directory Federation Services), qui ne vous permet pas de vous connecter à l'aide du compte ad-synchronizer. Dans ce cas, cliquez à nouveau sur Sign-in (Connexion), puis appuyez sur Échap pour arrêter le chargement de la page. Dans la barre d'adresse du navigateur, supprimez le paramètre &hd=[PRIMARY_DOMAIN-name] de l'URL, puis appuyez sur Entrée. Cette étape force l'affichage de la page de connexion Google.

  7. Comme il s'agit de votre première utilisation du compte, vous êtes invité à accepter le contrat Cloud Identity. Si vous acceptez les conditions, cliquez sur Accepter.

  8. L'écran suivant vous demande d'autoriser le compte ad-synchronizer à accéder aux données de votre compte Cloud Identity et à les modifier. Cliquez sur Allow (Autoriser) pour confirmer.

    Autoriser ad-synchronizer sur les données de votre compte Cloud Identity

  9. La page suivante vous présente un code. Copiez celui-ci, collez-le dans le champ de saisie approprié de la boîte de dialogue appropriée du gestionnaire de configuration, puis cliquez sur Validate (Valider).

  10. Si le message Success: Connected to Google s'affiche, la validation a réussi. Vous pouvez alors cliquer sur Fermer. Si la validation échoue, vérifiez que vous êtes bien connecté sous le compte Cloud Directory Sync et que celui-ci dispose des droits d'administrateur.

  11. Dans le menu, cliquez sur Fichier > Enregistrer sous.

  12. Dans la fenêtre de sélection de fichier, saisissez [PROGRAM_DATA]\gcds\config.xml comme nom de fichier. Remplacez [PROGRAM_DATA] par le chemin d'accès du dossier ProgramData, que la commande PowerShell vous a renvoyé lorsque vous l'avez exécutée.

  13. Cliquez sur Enregistrer, puis sur OK.

Se connecter à Active Directory

L'étape suivante consiste à configurer Cloud Directory Sync pour la connexion à Active Directory :

  1. Dans le Gestionnaire de configuration, cliquez sur Configuration LDAP > Paramètres de connexion.
  2. Configurez les paramètres suivants :
    1. Type de serveur : sélectionnez MS Active Directory.
    2. Type de connexion : sélectionnez LDAP standard.
    3. Nom d'hôte : saisissez le nom d'un serveur de catalogue global. Ce paramètre n'est utilisé que pour les tests. Par la suite, vous automatiserez la découverte du serveur de catalogue global.
    4. Port : 3268. L'utilisation d'un serveur de catalogue global au lieu d'un contrôleur de domaine permet de garantir la synchronisation des comptes de tous les domaines de votre forêt Active Directory.
    5. Type d'authentification : Simple
    6. Utilisateur autorisé : saisissez le nom d'utilisateur principal (UPN) de l'utilisateur de domaine que vous avez créé précédemment, gcds@[UPN_SUFFIX_DOMAIN]. Remplacez [UPN_SUFFIX_DOMAIN] par le domaine de suffixe UPN approprié pour l'utilisateur. Vous pouvez également spécifier l'utilisateur à l'aide de la syntaxe [NETBIOS-DOMAIN-NAME]\gcds.
    7. Nom unique de base : laissez ce champ vide, de façon à faire porter les recherches sur l'ensemble des domaines de la forêt.
  3. Pour vérifier les paramètres, cliquez sur Tester la connexion. Si la connexion échoue, vérifiez que vous avez spécifié le nom d'hôte d'un serveur de catalogue global et que le nom d'utilisateur et le mot de passe sont corrects. Ignorez l'éventuel message d'erreur vous invitant à spécifier un nom unique de base.
  4. Cliquez sur Fermer.
  5. Cliquez sur Fichier > Enregistrer pour effectuer le commit des modifications de configuration sur le disque, puis cliquez sur OK.

Décider de ce qui doit être synchronisé

Maintenant que vous êtes connecté à Cloud Identity et à Active Directory, vous pouvez choisir les éléments à synchroniser :

  1. Dans le gestionnaire de configuration, cliquez sur Paramètres généraux.
  2. Assurez-vous que l'option Comptes utilisateur est sélectionnée.
  3. Si vous comptez synchroniser des groupes, assurez-vous que l'option Groupes est sélectionnée. Sinon, désactivez cette case.
  4. La synchronisation d'unités organisationnelles dépasse le cadre de ce guide. Par conséquent, laissez l'option Unités organisationnelles non sélectionnée.
  5. Laissez les options Profils utilisateur et Schémas personnalisés non sélectionnées.
  6. Cliquez sur Fichier > Enregistrer pour effectuer le commit des modifications de configuration sur le disque, puis cliquez sur OK.

Synchroniser les comptes utilisateur

Configurer le mappage des comptes

L'étape suivante consiste à configurer le mappage des comptes utilisateur entre Active Directory et Cloud Identity :

  1. Dans le Gestionnaire de configuration, cliquez sur Comptes utilisateur > Autres attributs utilisateur.
  2. Cliquez sur Utiliser les valeurs par défaut pour renseigner automatiquement les attributs Prénom et Nom de famille à l'aide des valeurs givenName et sn, respectivement.

Les paramètres restants varient selon que vous envisagez d'utiliser le nom d'utilisateur principal (UPN) ou l'adresse e-mail pour mapper Active Directory aux comptes utilisateur Cloud Identity et selon que vous devez ou non appliquer des substitutions de nom de domaine. Si vous ne savez pas quelle option vous convient le mieux, consultez l'article expliquant comment la gestion des identités Active Directory peut être étendue à GCP.

UPN

  1. Dans le Gestionnaire de configuration, cliquez sur Comptes utilisateur > Attributs utilisateur.
  2. Configurez les paramètres suivants :
    1. Attribut d'adresse e-mail : userPrincipalName
    2. Attribut d'identifiant utilisateur : objectGUID
  3. Cliquez sur l'onglet Règles de recherche, puis sur Ajouter une règle de recherche.
  4. Saisissez les paramètres suivants :

    1. Portée : Sous-arborescence
    2. Règle :

      (&(objectCategory=person)(objectClass=user)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))

      Cette règle capture tous les comptes utilisateur non désactivés, mais ignore les comptes d'ordinateur et de service géré.

    3. Nom unique de base : laissez ce champ vide, de façon à faire porter les recherches sur l'ensemble des domaines de la forêt.

  5. Cliquez sur OK pour créer la règle.

  6. Cliquez sur l'onglet Règles d'exclusion, puis sur Ajouter une règle d'exclusion. Pour vous assurer que le compte utilisé par Cloud Directory Sync pour lire à partir d'Active Directory n'est pas synchronisé avec Cloud Identity, saisissez les paramètres suivants :

    1. Type d'exclusion : Adresse e-mail de l'utilisateur
    2. Type de correspondance : Correspondance exacte
    3. Règle d'exclusion : gcds@[UPN_SUFFIX_DOMAIN]. Remplacez [UPN_SUFFIX_DOMAIN] par le domaine de suffixe UPN utilisé dans Active Directory.
  7. Cliquez sur OK.

  8. Cliquez sur Fichier > Enregistrer pour effectuer le commit des modifications de configuration sur le disque, puis cliquez sur OK.

UPN : substitution de domaine

  1. Dans le Gestionnaire de configuration, cliquez sur l'onglet Comptes utilisateur > Attributs utilisateur.
  2. Configurez les paramètres suivants :
    1. Attribut d'adresse e-mail : userPrincipalName
    2. Attribut d'identifiant utilisateur : objectGUID
  3. Cliquez sur OK pour créer la règle.
  4. Cliquez sur l'onglet Règles de recherche, puis sur Ajouter une règle de recherche.
  5. Saisissez les paramètres suivants :

    1. Portée : Sous-arborescence
    2. Règle :

      (&(objectCategory=person)(objectClass=user)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))

      Cette règle capture tous les comptes utilisateur non désactivés, mais ignore les comptes d'ordinateur et de service géré.

    3. Nom unique de base : laissez ce champ vide, de façon à faire porter les recherches sur l'ensemble des domaines de la forêt.

  6. Cliquez sur OK pour créer la règle.

  7. Cliquez sur l'onglet Règles d'exclusion, puis sur Ajouter une règle d'exclusion. Pour vous assurer que le compte utilisé par Cloud Directory Sync pour lire à partir d'Active Directory n'est pas synchronisé avec Cloud Identity, saisissez les paramètres suivants :

    1. Type d'exclusion : Adresse e-mail de l'utilisateur
    2. Type de correspondance : Correspondance exacte
    3. Règle d'exclusion : gcds@[PRIMARY_DOMAIN]. Remplacez [PRIMARY_DOMAIN] par le domaine principal de votre compte Cloud Identity.
  8. Cliquez sur OK.

  9. Cliquez sur Configuration du domaine Google > Paramètres de connexion, puis sélectionnez Remplacer le nom de domaine dans les adresses e-mail LDAP par ce nom de domaine.

  10. Cliquez sur Fichier > Enregistrer pour effectuer le commit des modifications de configuration sur le disque, puis cliquez sur OK.

E-mail

  1. Dans le Gestionnaire de configuration, cliquez sur Comptes utilisateur > Attributs utilisateur.
  2. Configurez les paramètres suivants :
    1. Attribut d'adresse e-mail : mail
    2. Attribut d'identifiant utilisateur : objectGUID
  3. Cliquez sur l'onglet Règles de recherche, puis sur Ajouter une règle de recherche.
  4. Saisissez les paramètres suivants :

    1. Portée : Sous-arborescence
    2. Règle :

      (&(objectCategory=person)(objectClass=user)(mail=*)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))

      Cette règle capture tous les comptes utilisateur non désactivés et dotés d'une adresse e-mail non vide, mais ignore les comptes d'ordinateur et de service géré.

    3. Nom unique de base : laissez ce champ vide, de façon à faire porter les recherches sur l'ensemble des domaines de la forêt.

  5. Cliquez sur OK pour créer la règle.

  6. Cliquez sur Fichier > Enregistrer pour effectuer le commit des modifications de configuration sur le disque, puis cliquez sur OK.

E-mail : substitution de domaine

  1. Dans le Gestionnaire de configuration, cliquez sur Comptes utilisateur > Attributs utilisateur.
  2. Configurez les paramètres suivants :
    1. Attribut d'adresse e-mail : mail
    2. Attribut d'identifiant utilisateur : objectGUID
  3. Cliquez sur l'onglet Règles de recherche, puis sur Ajouter une règle de recherche.
  4. Saisissez les paramètres suivants :

    1. Portée : Sous-arborescence
    2. Règle :

      (&(objectCategory=person)(objectClass=user)(mail=*)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))

      Cette règle capture tous les comptes utilisateur non désactivés et dotés d'une adresse e-mail non vide, mais ignore les comptes d'ordinateur et de service géré.

    3. Nom unique de base : laissez ce champ vide, de façon à faire porter les recherches sur l'ensemble des domaines de la forêt.

  5. Cliquez sur OK pour créer la règle.

  6. Cliquez sur Configuration du domaine Google > Paramètres de connexion, puis sélectionnez Remplacer le nom de domaine dans les adresses e-mail LDAP par ce nom de domaine.

  7. Cliquez sur Fichier > Enregistrer pour effectuer le commit des modifications de configuration sur le disque, puis cliquez sur OK.

Règles de suppression

Jusqu'à présent, la configuration s'est concentrée sur l'ajout et la mise à jour de comptes utilisateur dans Cloud Identity. Cependant, il importe également que les comptes utilisateur désactivés ou supprimés dans Active Directory soient suspendus ou supprimés dans Cloud Identity.

Dans le cadre du processus de synchronisation, Cloud Directory Sync génère la liste des comptes utilisateur Cloud Identity qui n'ont aucune correspondance dans les résultats de la requête LDAP Active Directory. Étant donné que la requête LDAP comprend la clause (!(userAccountControl:1.2.840.113556.1.4.803:=2), tous les comptes qui ont été désactivés ou supprimés dans Active Directory depuis la dernière synchronisation sont inclus dans cette liste. Par défaut, Cloud Directory Sync supprime ces utilisateurs dans Cloud Identity, mais vous pouvez personnaliser ce comportement :

  1. Dans le Gestionnaire de configuration, cliquez sur Comptes utilisateur > Attributs utilisateur.
  2. Sous Règle de suppression/suspension de comptes utilisateur sur le domaine Google, assurez-vous que la case Ne pas suspendre ou supprimer les administrateurs de domaine Google qui ne se trouvent pas dans LDAP est cochée. Ce paramètre empêche Cloud Directory Sync de suspendre ou de supprimer le compte super-administrateur que vous avez utilisé pour configurer Cloud Identity.
  3. Si vous le souhaitez, modifiez la règle de suppression relative aux comptes non administrateur.
  4. Cliquez sur Fichier > Enregistrer pour effectuer le commit des modifications de configuration sur le disque, puis cliquez sur OK.

Si vous utilisez plusieurs instances distinctes de Cloud Directory Sync pour synchroniser différents domaines ou forêts via un même compte Cloud Identity, assurez-vous que ces instances n'interfèrent pas entre elles. Par défaut, les comptes utilisateur Cloud Identity qui ont été synchronisés à partir d'une source différente seront identifiés à tort dans Active Directory comme ayant été supprimés. Pour éviter ce problème, configurez Cloud Directory Sync de façon à ignorer tous les comptes utilisateur Cloud Identity qui ne relèvent pas de la portée du domaine ou de la forêt à partir de laquelle vous effectuez la synchronisation.

UPN

  1. Dans le Gestionnaire de configuration, cliquez sur Configuration du domaine Google > Règles d'exclusion.
  2. Cliquez sur Ajouter une règle d'exclusion.
  3. Configurez les paramètres suivants :

    1. Type : Adresse e-mail de l'utilisateur
    2. Type de correspondance : Expression régulière
    3. Règle d'exclusion : si vous utilisez un seul domaine de suffixe UPN, saisissez l'expression régulière suivante :

      .*@((?![UPN_SUFFIX_DOMAIN]).*)$

      Remplacez [UPN_SUFFIX_DOMAIN] par votre domaine de suffixe UPN, comme dans cet exemple :

      .*@((?!corp.example.com).*)$

      Si vous utilisez plusieurs domaines de suffixe UPN, développez l'expression comme suit :

      .*@((?!corp.example.com|branch.example.com).*)$
  4. Cliquez sur OK pour créer la règle.

UPN : substitution de domaine

  1. Dans le Gestionnaire de configuration, cliquez sur Configuration du domaine Google > Règles d'exclusion.
  2. Cliquez sur Ajouter une règle d'exclusion.
  3. Configurez les paramètres suivants :

    1. Type : Adresse e-mail de l'utilisateur
    2. Type de correspondance : Expression régulière
    3. Règle d'exclusion : si vous utilisez un seul domaine de suffixe UPN, saisissez l'expression régulière suivante :

      .*@((?![SUBSTITUTION_DOMAIN]).*)$

      Remplacez [SUBSTITUTION_DOMAIN] par le domaine que vous substituez au domaine du suffixe UPN, comme dans cet exemple :

      .*@((?!corp.example.com).*)$
  4. Cliquez sur OK pour créer la règle.

E-mail

  1. Dans le Gestionnaire de configuration, cliquez sur Configuration du domaine Google > Règles d'exclusion.
  2. Cliquez sur Ajouter une règle d'exclusion.
  3. Configurez les paramètres suivants :

    1. Type : Adresse e-mail de l'utilisateur
    2. Type de correspondance : Expression régulière
    3. Règle d'exclusion : si vous utilisez un seul domaine de suffixe UPN, saisissez l'expression régulière suivante :

      .*@((?![MX_DOMAIN]).*)$

      Remplacez [MX_DOMAIN] par le nom de domaine que vous utilisez dans les adresses e-mail, comme dans cet exemple :

      .*@((?!corp.example.com).*)$

      Si vous utilisez plusieurs domaines de suffixe UPN, développez l'expression comme suit :

      .*@((?!corp.example.com|branch.example.com).*)$
  4. Cliquez sur OK pour créer la règle.

E-mail : substitution de domaine

  1. Dans le Gestionnaire de configuration, cliquez sur Configuration du domaine Google > Règles d'exclusion.
  2. Cliquez sur Ajouter une règle d'exclusion.
  3. Configurez les paramètres suivants :

    1. Type : Adresse e-mail de l'utilisateur
    2. Type de correspondance : Expression régulière
    3. Règle d'exclusion : si vous utilisez un seul domaine de suffixe UPN, saisissez l'expression régulière suivante :

      .*@((?![SUBSTITUTION_DOMAIN]).*)$

      Remplacez [SUBSTITUTION_DOMAIN] par le domaine que vous substituez au domaine de messagerie, comme dans cet exemple :

      .*@((?!corp.example.com).*)$
  4. Cliquez sur OK pour créer la règle.

Synchroniser les groupes

L'étape suivante consiste à configurer le mappage des groupes entre Active Directory et Cloud Identity. Ce processus diffère selon que vous envisagez de mapper les groupes par prénom ou par adresse e-mail.

Configurer le mappage des groupes par prénom

Tout d'abord, vous devez identifier les types de groupes de sécurité que vous souhaitez synchroniser, puis formuler une requête LDAP appropriée. Le tableau suivant contient les requêtes courantes que vous pouvez utiliser.

Type Requête LDAP
Groupes locaux à un domaine (&(objectCategory=group)(groupType:1.2.840.113556.1.4.803:=2147483652))
Groupes globaux (&(objectCategory=group)(groupType:1.2.840.113556.1.4.803:=2147483650))
Groupes universels (&(objectCategory=group)(groupType:1.2.840.113556.1.4.803:=2147483656))
Groupes globaux et universels (&(objectCategory=group)(|(groupType:1.2.840.113556.1.4.803:=2147483650)(groupType:1.2.840.113556.1.4.803:=2147483656)))

La requête relative aux groupes globaux couvre également des groupes définis par Active Directory tels que les contrôleurs de domaine. Vous pouvez filtrer ces groupes en limitant la recherche par unité organisationnelle (ou).

Les paramètres restants varient selon que vous avez l'intention d'utiliser l'UPN ou l'adresse e-mail pour mapper Active Directory aux comptes utilisateur Cloud Identity.

UPN

  1. Dans le Gestionnaire de configuration, cliquez sur Groupes > Règles de recherche.
  2. Cliquez sur Ajouter une règle de recherche pour ajouter une règle capturant les comptes utilisateur et les membres de groupe.
  3. Configurez les paramètres suivants :
    1. Portée : Sous-arborescence
    2. Règle : saisissez la requête LDAP.
    3. Nom unique de base : laissez ce champ vide, de façon à faire porter les recherches sur l'ensemble des domaines de la forêt.
  4. Dans la zone Groupes, saisissez les paramètres suivants :
    1. Attribut d'adresse e-mail de groupe : cn
    2. Attribut de nom à afficher de groupe : name
    3. Attribut de description de groupe : description
    4. Attribut d'adresse e-mail d'utilisateur : userPrincipalName
  5. Dans la zone Membres, saisissez les paramètres suivants :
    1. Attribut de référence de membre : member
    2. Laissez les champs restants vides.
  6. Dans la zone Propriétaires, saisissez les paramètres suivants :
    1. Attribut de référence de propriétaire : managedBy
    2. Laissez les champs restants vides.
  7. Cliquez sur l'onglet Préfixe-suffixe.
  8. Dans la zone Adresse e-mail de groupe, saisissez les paramètres suivants :
    1. Suffixe : @[PRIMARY_DOMAIN]. Remplacez [PRIMARY_DOMAIN] par le domaine principal de votre compte Cloud Identity. Ce paramètre peut sembler redondant dans la mesure où Cloud Directory Sync ajoute automatiquement le domaine. Vous devez cependant le spécifier explicitement pour éviter que des instances multiples de Cloud Directory Sync n'effacent les membres de groupe qu'elles n'ont pas ajoutés elles-mêmes. Exemple : @example.com.
    2. Cliquez sur OK.
  9. Cliquez sur Ajouter une règle de recherche pour ajouter une règle capturant les membres des groupes imbriqués.
  10. Configurez les paramètres suivants :
    1. Portée : Sous-arborescence
    2. Règle : saisissez la même requête LDAP.
    3. Nom unique de base : laissez ce champ vide, de façon à faire porter les recherches sur l'ensemble des domaines de la forêt.
  11. Dans la zone Groupes, saisissez les paramètres suivants :
    1. Attribut d'adresse e-mail de groupe : cn
    2. Attribut de nom à afficher de groupe : name
    3. Attribut de description de groupe : description
    4. Attribut d'adresse e-mail d'utilisateur : cn
  12. Dans la zone Membres, saisissez les paramètres suivants :
    1. Attribut de référence de membre : member
    2. Laissez les champs restants vides.
  13. Dans la zone Propriétaires, saisissez les paramètres suivants :
    1. Attribut de référence de propriétaire : managedBy
    2. Laissez les champs restants vides.
  14. Cliquez sur l'onglet Préfixe-suffixe.
  15. Dans la zone Adresse e-mail de groupe, saisissez les paramètres suivants :
    • Suffixe : @[PRIMARY_DOMAIN]. Remplacez [PRIMARY_DOMAIN] par le domaine principal de votre compte Cloud Identity.
  16. Cliquez sur OK.
  17. Cliquez sur Fichier > Enregistrer pour effectuer le commit des modifications de configuration sur le disque, puis cliquez sur OK.

E-mail

  1. Dans le Gestionnaire de configuration, cliquez sur Groupes > Règles de recherche.
  2. Cliquez sur Ajouter une règle de recherche pour ajouter une règle capturant les membres des deux groupes.
  3. Configurez les paramètres suivants :
    1. Portée : Sous-arborescence
    2. Règle : saisissez la requête LDAP.
    3. Nom unique de base : laissez ce champ vide, de façon à faire porter les recherches sur l'ensemble des domaines de la forêt.
  4. Dans la zone Groupes, saisissez les paramètres suivants :
    1. Attribut d'adresse e-mail de groupe : cn
    2. Attribut de nom à afficher de groupe : name
    3. Attribut de description de groupe : description
    4. Attribut d'adresse e-mail d'utilisateur : mail
  5. Dans la zone Membres, saisissez les paramètres suivants :
    1. Attribut de référence de membre : member
    2. Laissez les champs restants vides.
  6. Dans la zone Propriétaires, saisissez les paramètres suivants :
    1. Attribut de référence de propriétaire : managedBy
    2. Laissez les champs restants vides.
  7. Cliquez sur OK.
  8. Cliquez sur Fichier > Enregistrer pour effectuer le commit des modifications de configuration sur le disque, puis cliquez sur OK.

Les mêmes paramètres s'appliquent également si vous avez utilisé la substitution de domaine lors du mappage des comptes utilisateur.

Configurer le mappage des groupes par adresse e-mail

Tout d'abord, vous devez identifier les types de groupes de sécurité que vous souhaitez synchroniser, puis formuler une requête LDAP appropriée. Le tableau suivant contient les requêtes courantes que vous pouvez utiliser.

Type Requête LDAP
Groupes locaux au domaine avec adresse e-mail (&(objectCategory=group)(groupType:1.2.840.113556.1.4.803:=2147483652)(mail=*))
Groupes globaux avec adresse e-mail (&(objectCategory=group)(groupType:1.2.840.113556.1.4.803:=2147483650)(mail=*))
Groupes universels avec adresse e-mail (&(objectCategory=group)(groupType:1.2.840.113556.1.4.803:=2147483656)(mail=*))
Groupes globaux et universels avec adresse e-mail (&(objectCategory=group)(|(groupType:1.2.840.113556.1.4.803:=2147483650)(groupType:1.2.840.113556.1.4.803:=2147483656))(mail=*))

Les paramètres restants varient selon que vous avez l'intention d'utiliser l'UPN ou l'adresse e-mail pour mapper Active Directory aux comptes utilisateur Cloud Identity.

UPN

  1. Dans le Gestionnaire de configuration, cliquez sur Groupes > Règles de recherche.
  2. Cliquez sur Ajouter une règle de recherche pour ajouter une règle capturant les membres des deux groupes.
  3. Configurez les paramètres suivants :
    1. Portée : Sous-arborescence
    2. Règle : saisissez la requête LDAP.
    3. Nom unique de base : laissez ce champ vide, de façon à faire porter les recherches sur l'ensemble des domaines de la forêt.
  4. Dans la zone Groupes, saisissez les paramètres suivants :
    1. Attribut d'adresse e-mail de groupe : mail
    2. Attribut de nom à afficher de groupe : name
    3. Attribut de description de groupe : description
    4. Attribut d'adresse e-mail d'utilisateur : userPrincipalName
  5. Dans la zone Membres, saisissez les paramètres suivants :
    1. Attribut de référence de membre : member
    2. Laissez les champs restants vides.
  6. Dans la zone Propriétaires, saisissez les paramètres suivants :
    1. Attribut de référence de propriétaire : managedBy
    2. Laissez les champs restants vides.
  7. Cliquez sur OK.
  8. Cliquez sur Ajouter une règle de recherche pour ajouter une règle capturant les membres des groupes imbriqués.
  9. Configurez les paramètres suivants :
    1. Portée : Sous-arborescence
    2. Règle : saisissez la même requête LDAP.
    3. Nom unique de base : laissez ce champ vide, de façon à faire porter les recherches sur l'ensemble des domaines de la forêt.
  10. Dans la zone Groupes, saisissez les paramètres suivants :
    1. Attribut d'adresse e-mail de groupe : mail
    2. Attribut de nom à afficher de groupe : name
    3. Attribut de description de groupe : description
    4. Attribut d'adresse e-mail d'utilisateur : mail
  11. Dans la zone Membres, saisissez les paramètres suivants :
    1. Attribut de référence de membre : member
    2. Laissez les champs restants vides.
  12. Dans la zone Propriétaires, saisissez les paramètres suivants :
    1. Attribut de référence de propriétaire : managedBy
    2. Laissez les champs restants vides.
  13. Cliquez sur OK.
  14. Cliquez sur Fichier > Enregistrer pour effectuer le commit des modifications de configuration sur le disque, puis cliquez sur OK.

E-mail

  1. Dans le Gestionnaire de configuration, cliquez sur Groupes > Règles de recherche.
  2. Cliquez sur Ajouter une règle de recherche pour ajouter une règle capturant les membres des deux groupes.
  3. Configurez les paramètres suivants :
    1. Portée : Sous-arborescence
    2. Règle : saisissez la requête LDAP.
    3. Nom unique de base : laissez ce champ vide, de façon à faire porter les recherches sur l'ensemble des domaines de la forêt.
  4. Dans la zone Groupes, saisissez les paramètres suivants :
    1. Attribut d'adresse e-mail de groupe : mail
    2. Attribut de nom à afficher de groupe : name
    3. Attribut de description de groupe : description
    4. Attribut d'adresse e-mail d'utilisateur : mail
  5. Dans la zone Membres, saisissez les paramètres suivants :
    1. Attribut de référence de membre : member
    2. Laissez les champs restants vides.
  6. Dans la zone Propriétaires, saisissez les paramètres suivants :
    1. Attribut de référence de propriétaire : managedBy
    2. Laissez les champs restants vides.
  7. Cliquez sur OK.
  8. Cliquez sur Fichier > Enregistrer pour effectuer le commit des modifications de configuration sur le disque, puis cliquez sur OK.

Les mêmes paramètres s'appliquent également si vous avez utilisé la substitution de domaine lors du mappage des comptes utilisateur.

Règles de suppression

Cloud Directory Sync gère la suppression de groupes de la même manière que la suppression d'utilisateurs. Si vous utilisez plusieurs instances distinctes de Cloud Directory Sync pour synchroniser différents domaines ou forêts via un même compte Cloud Identity, assurez-vous que ces instances n'interfèrent pas entre elles.

Par défaut, les comptes utilisateur Cloud Identity qui ont été synchronisés à partir d'une source différente seront identifiés à tort dans Active Directory comme ayant été supprimés. Pour éviter ce problème, configurez Cloud Directory Sync de façon à ignorer tous les comptes utilisateur Cloud Identity qui ne relèvent pas de la portée du domaine ou de la forêt à partir de laquelle vous effectuez la synchronisation.

UPN

  1. Cliquez sur Configuration du domaine Google > Règles d'exclusion.
  2. Cliquez sur Ajouter une règle d'exclusion.
  3. Configurez les paramètres suivants :

    1. Type : Adresse e-mail de membre de groupe
    2. Type de correspondance : Expression régulière
    3. Règle d'exclusion : si vous utilisez un seul domaine de suffixe UPN, saisissez l'expression régulière suivante :

      .*@((?![UPN_SUFFIX_DOMAIN]).*)$

      Remplacez [UPN_SUFFIX_DOMAIN] par votre domaine de suffixe UPN, comme dans cet exemple :

      .*@((?!corp.example.com).*)$

      Si vous utilisez plusieurs domaines de suffixe UPN, développez l'expression comme suit :

      .*@((?!corp.example.com|branch.example.com).*)$
  4. Cliquez sur OK pour créer la règle.

UPN : substitution de domaine

  1. Cliquez sur Configuration du domaine Google > Règles d'exclusion.
  2. Cliquez sur Ajouter une règle d'exclusion.
  3. Configurez les paramètres suivants :

    1. Type : Adresse e-mail de membre de groupe
    2. Type de correspondance : Expression régulière
    3. Règle d'exclusion : si vous utilisez un seul domaine de suffixe UPN, saisissez l'expression régulière suivante :

      .*@((?![SUBSTITUTION_DOMAIN]).*)$

      Remplacez [SUBSTITUTION_DOMAIN] par le domaine que vous substituez au domaine du suffixe UPN, comme dans cet exemple :

      .*@((?!corp.example.com).*)$
  4. Cliquez sur OK pour créer la règle.

E-mail

  1. Cliquez sur Configuration du domaine Google > Règles d'exclusion.
  2. Cliquez sur Ajouter une règle d'exclusion.
  3. Configurez les paramètres suivants :

    1. Type : Adresse e-mail de membre de groupe
    2. Type de correspondance : Expression régulière
    3. Règle d'exclusion : si vous utilisez un seul domaine de suffixe UPN, saisissez l'expression régulière suivante :

      .*@((?![MX_DOMAIN]).*)$

      Remplacez [MX_DOMAIN] par le nom de domaine que vous utilisez dans les adresses e-mail, comme dans cet exemple :

      .*@((?!corp.example.com).*)$

      Si vous utilisez plusieurs domaines de suffixe UPN, développez l'expression comme suit :

      .*@((?!corp.example.com|branch.example.com).*)$
  4. Cliquez sur OK pour créer la règle.

E-mail : substitution de domaine

  1. Cliquez sur Configuration du domaine Google > Règles d'exclusion.
  2. Cliquez sur Ajouter une règle d'exclusion.
  3. Configurez les paramètres suivants :

    1. Type : Adresse e-mail de membre de groupe
    2. Type de correspondance : Expression régulière
    3. Règle d'exclusion : si vous utilisez un seul domaine de suffixe UPN, saisissez l'expression régulière suivante :

      .*@((?![SUBSTITUTION_DOMAIN]).*)$

      Remplacez [SUBSTITUTION_DOMAIN] par le domaine que vous substituez au domaine de messagerie, comme dans cet exemple :

      .*@((?!corp.example.com).*)$
    4. Cliquez sur OK pour créer la règle.

Configurer la journalisation et les notifications

Pour maintenir la synchronisation entre Active Directory et Cloud Identity, vous devez exécuter Cloud Directory Sync de manière planifiée. Afin de vous permettre de suivre l'activité et les problèmes potentiels liés à Cloud Directory Sync, vous pouvez configurer celui-ci pour écrire un fichier journal :

  1. Dans le Gestionnaire de configuration, cliquez sur Journalisation.
  2. Définissez le champ Nom du fichier sur [PROGRAM_DATA]\gcds\gcds_sync.log. Remplacez [PROGRAM_DATA] par le chemin d'accès du dossier ProgramData, que la commande PowerShell vous a renvoyé lorsque l'avez exécutée.
  3. Cliquez sur Fichier > Enregistrer pour effectuer le commit des modifications de configuration sur le disque, puis cliquez sur OK.

En plus de la journalisation, Cloud Directory Sync peut envoyer des notifications par e-mail. Pour activer ce service, cliquez sur Notifications et spécifiez les informations de connexion de votre serveur de messagerie.

Effectuer une synchronisation initiale

Vous avez maintenant terminé la configuration de Cloud Directory Sync. Avant de configurer une tâche permettant de planifier l'exécution de Cloud Directory Sync, vous pouvez déclencher manuellement une synchronisation pour valider vos paramètres.

Avertissements

  • Le déclenchement d'une synchronisation apportera des modifications définitives aux comptes utilisateur et aux groupes de votre compte Cloud Identity.
  • Si vous devez synchroniser un grand nombre de comptes utilisateur, il est recommandé de modifier temporairement la requête LDAP afin qu'elle ne corresponde qu'à un sous-ensemble de ces comptes utilisateur. L'utilisation d'un tel sous-ensemble de comptes vous permettra de tester la synchronisation et d'ajuster les paramètres si nécessaire. Une fois les résultats validés, modifiez la requête LDAP et synchronisez les comptes restants.
  • Évitez de modifier ou de supprimer de manière répétée un grand nombre de comptes utilisateur lors du test de synchronisation, car de telles actions peuvent être signalées comme un comportement abusif.

Pour déclencher une synchronisation, procédez comme suit :

  1. Dans le Gestionnaire de configuration, cliquez sur Synchronisation.
  2. Au bas de l'écran, sélectionnez Vider le cache, puis cliquez sur Synchroniser et appliquer les modifications.

    Une boîte de dialogue indiquant l'état de la synchronisation vous est présentée.

  3. Une fois la synchronisation terminée, vérifiez le journal affiché dans la moitié inférieure de la boîte de dialogue :

    1. Sous Modifications apportées aux utilisateurs avec succès, vérifiez qu'au moins un utilisateur a été créé.
    2. Sous Échecs, vérifiez qu'aucun échec ne s'est produit lors de la synchronisation.

Si vous avez opté pour la synchronisation des groupes, le reste du journal peut contenir plusieurs avertissements, que vous pouvez généralement ignorer sans risque.

Planification

  1. Ouvrez une console PowerShell en tant qu'administrateur.
  2. Vérifiez si le module Active Directory PowerShell est disponible sur le système :

    import-module ActiveDirectory

    Si la commande échoue, téléchargez et installez les outils d'administration du serveur distant, puis réessayez.

  3. Dans le Bloc-notes, créez un fichier, copiez-y le contenu ci-dessous, puis enregistrez-le sous $Env:ProgramData\gcds\sync.ps1. Lorsque vous avez terminé, fermez le fichier.

    [CmdletBinding()]
    Param(
        [Parameter(Mandatory=$True, Position=1)]
        [string]$config,
    
        [Parameter(Mandatory=$True, Position=1)]
        [string]$gcdsInstallationDir
    )
    
    import-module ActiveDirectory
    
    # Stop on error.
    $ErrorActionPreference ="stop"
    
    # Ensure it's an absolute path.
    $rawConfigPath = [System.IO.Path]::Combine((pwd).Path, $config)
    
    # Discover closest GC in current domain.
    $dc = Get-ADDomainController -discover -Service "GlobalCatalog" -NextClosestSite
    Write-Host ("Using Global Catalog server {0} of domain {1} as LDAP source" -f [string]$dc.HostName, $dc.Domain)
    
    # Load XML and replace the endpoint.
    $dom = [xml](Get-Content $rawConfigPath)
    $ldapConfigNode = $dom.SelectSingleNode("//plugin[@class='com.google.usersyncapp.plugin.ldap.LDAPPlugin']/config")
    
    # Tweak the endpoint.
    $ldapConfigNode.hostname = [string]$dc.HostName
    $ldapConfigNode.ldapCredMachineName = [string]$dc.HostName
    $ldapConfigNode.port = "3268"   # Always use Global Catalog port
    
    # Tweak the tsv files location
    $googleConfigNode = $dom.SelectSingleNode("//plugin[@class='com.google.usersyncapp.plugin.google.GooglePlugin']/config")
    $googleConfigNode.nonAddressPrimaryKeyMapFile = [System.IO.Path]::Combine((pwd).Path, "nonAddressPrimaryKeyFile.tsv")
    $googleConfigNode.passwordTimestampFile = [System.IO.Path]::Combine((pwd).Path, "passwordTimestampCache.tsv")
    
    # Save resulting config.
    $targetConfigPath = $rawConfigPath + ".autodiscover"
    
    $writer = New-Object System.IO.StreamWriter($targetConfigPath, $False, (New-Object System.Text.UTF8Encoding($False)))
    $dom.Save($writer)
    $writer.Close()
    
    # Run synchronization.
    Start-Process -FilePath "$gcdsInstallationDir\sync-cmd" `
        -Wait -ArgumentList "--apply --loglevel INFO --config ""$targetConfigPath"""
    
  4. Le Gestionnaire de configuration a créé une clé secrète pour chiffrer les identifiants présents dans le fichier de configuration. Afin que Cloud Directory Sync puisse lire la configuration même si elle est exécutée en tant que tâche planifiée, exécutez les commandes suivantes pour copier cette clé secrète de votre propre profil dans le profil de NT AUTHORITY\LOCAL SERVICE :

    New-Item -Path Registry::HKEY_USERS\S-1-5-19\SOFTWARE\JavaSoft\Prefs\com\google\usersyncapp -Force
    
    Copy-Item -Path Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER\SOFTWARE\JavaSoft\Prefs\com\google\usersyncapp\util `
        -Destination Microsoft.PowerShell.Core\Registry::HKEY_USERS\S-1-5-19\SOFTWARE\JavaSoft\Prefs\com\google\usersyncapp\util
    

    Si ces commandes échouent, assurez-vous d'avoir bien démarré la console PowerShell en tant qu'administrateur.

  5. Créez une tâche planifiée en exécutant les commandes suivantes. La tâche planifiée sera déclenchée toutes les heures et appellera le script sync.ps1 sous le nom NT AUTHORITY\LOCAL SERVICE.

    $taskName = "Synchronize to Cloud Identity"
    
    $arguments = [string]::Format('-ExecutionPolicy Bypass -NoProfile {0}\gcds\sync.ps1 -config {0}\gcds\config.xml -gcdsInstallationDir ''{1}\Google Cloud Directory Sync''', $Env:ProgramData, $Env:Programfiles)
    
    $action = New-ScheduledTaskAction -Execute 'PowerShell.exe' `
      -Argument $arguments
    $trigger = New-ScheduledTaskTrigger `
      -Once `
      -At (Get-Date) `
      -RepetitionInterval (New-TimeSpan -Minutes 60) `
      -RepetitionDuration (New-TimeSpan -Days (365 * 20))
    
    $principal = New-ScheduledTaskPrincipal -UserID "NT AUTHORITY\LOCAL SERVICE" -LogonType ServiceAccount
    Register-ScheduledTask -Action $action -Trigger $trigger -Principal $principal -TaskName $taskName
    
    $task = Get-ScheduledTask -TaskName "$taskName"
    $Task.Settings.ExecutionTimeLimit = "PT12H"
    Set-ScheduledTask $task
    

Tester la synchronisation

Vous avez terminé l'installation et la configuration de Cloud Directory Sync, et la tâche planifiée déclenchera une synchronisation toutes les heures.

Pour déclencher une synchronisation manuellement, basculez vers la console PowerShell et exécutez la commande suivante :

$taskName = "Synchronize to Cloud Identity"
Start-ScheduledTask $taskName

Nettoyer

Pour supprimer Cloud Directory Sync, procédez comme suit :

  1. Ouvrez le Panneau de configuration Windows et cliquez sur Programmes > Désinstaller un programme.
  2. Sélectionnez Google Cloud Directory Sync, puis cliquez sur Désinstaller/Modifier pour lancer l'assistant de désinstallation. Suivez ensuite les instructions de l'assistant.
  3. Ouvrez une console PowerShell et exécutez la commande suivante pour supprimer la tâche de synchronisation planifiée :

    $taskName = "Synchronize to Cloud Identity"
    Unregister-ScheduledTask -TaskName $taskName -Confirm:$False
    
  4. Exécutez la commande suivante pour supprimer les fichiers de configuration et les fichiers journaux :

    Remove-Item -Recurse -Force "$Env:ProgramData\gcds"
    Remove-Item -Recurse -Path Registry::HKEY_USERS\S-1-5-19\SOFTWARE\JavaSoft\Prefs\com\google\usersyncapp
    

Étapes suivantes