La liste globale d’adresses (GAL) est une liste contenant tout l’effectif d’une organisation donnée, à laquelle les ordinateurs accèdent via LDAP, CardDAV et d’autres applications pour diverses raisons. Pourquoi avez-vous besoin d’exporter la liste globale d’adresses de votre serveur Exchange ? Soit vous migrez vers Office 365, soit vous mettez hors service votre serveur Exchange pour passer à une autre plateforme.
Commençons par l’exportation du GAL à l’aide du logiciel Exchange Management Shell. Il existe d’autres façons d’exporter le GAL et selon votre situation, vous pouvez utiliser l’une ou l’autre solution.
Après avoir ouvert Exchange Management Shell, vous utiliserez un certain nombre de commandes pour pouvoir exporter vos données. Il n’y a pas de bouton magique pour exporter la liste globale d’adresses et pour ce faire, vous devez lister toutes vos messageries et exporter les critères nécessaires.
Tout d’abord, nous devons obtenir la liste de toutes les messageries en utilisant le cmdlet Get-MailboxPowerShell
comme ci-dessous avec la valeur illimitée pour le paramètre taille du résultat. Cela dépend du nombre de messageries que vous avez.
Cette commande listera toutes les messageries, y compris celles qui sont marquées comme étant cachées. Si vous ouvrez la messagerie à partir du Centre d’administration Exchange, vous constaterez que la case à cocher « Cacher de la liste d’adresses » est activée.
Si vous ne souhaitez pas exporter ces messageries car il s’agit de messageries système ou de notification, vous devez ajouter une exception à la commande comme ci-dessous
Get-Mailbox-resultsize unlimited | ?{$_.HiddenFromAddressListsEnabled -eq $false}
Si vous souhaitez que vos messageries cachées soient listées, supprimez simplement la deuxième partie. La partie suivante consiste à exporter tous les détails nécessaires des messageries pour obtenir votre carnet d’adresses en utilisant la cmdlet PowerShell Get-User et en filtrant les détails nécessaires en utilisant la cmdlet Select. En effet, si nous utilisons la commande Get-User seule, elle exportera tous les détails des messageries par exemple la Catégorie d’Objet, la date de Création, IsValid et d’autres éléments dont vous n’avez pas besoin dans votre exportation. Pour obtenir ce que vous pouvez exporter comme noms de champs, vous pouvez le faire en utilisant la commande Get-User | Select * qui listera tous les détails comme ci-dessous.
Get-Mailbox-resultsize unlimited | ?{$_.HiddenFromAddressListsEnabled -eq $false} | get-user | select *
À partir des résultats, vous pouvez sélectionner les informations nécessaires pour l’exportation.
Une fois que vous avez défini les critères à exporter, vous devez créer la commande Select et l’ajouter à la commande Get-Mailbox comme ci-dessous pour exporter toutes les informations nécessaires des messageries souhaitées. Dans cet exemple, nous exportons le Nom d’affichage, le Téléphone professionnel et l’Adresse e-mail, mais vous pouvez bien sûr personnaliser cette commande avec n’importe quel champ.
Get-Mailbox-resultsize unlimited | ?{$_.HiddenFromAddressListsEnabled -eq $false} | get-user | select DisplayName,Phone,WindowsEmailAddress
La partie suivante et finale consiste à exporter les résultats dans un fichier CSV. Cela peut être fait en utilisant la commande Export-CSV. La commande que nous devons ajouter est la commande Export-CSV <destination> comme ci-dessous
export-CSV c:\GAL-Export.CSV
N’oubliez pas de mettre votre chemin d’accès entre guillemets s’il contient des espaces, car l’opération échouera. Le seul problème avec cette méthode est qu’elle exporte la première ligne d’informations supplémentaires dans votre CSV. Si vous automatisez ce processus, vous devrez ajouter quelque chose qui supprime la première ligne.
Pour supprimer cela, nous devons ajouter l’option –NoTypeInformation à la fin de la commande comme ci-dessous.
Export-CSV c:\GAL-Export.CSV -NoTypeInformation
Une fois que tout cela est en place, nous devons ajouter toutes les étapes ensemble pour exporter l’ensemble du carnet d’adresses comme souhaité. L’exemple ci-dessous exporte le Nom d’affichage, le Téléphone professionnel et l’Adresse e-mail pour tous les utilisateurs qui ne sont pas cachés dans le carnet d’adresses dans un CSV in C:\GAL-Export.CSV.
Get-Mailbox-ResultSize Unlimited | ?{$_.HiddenFromAddressListsEnabled -eq $false} | Get-User | Select DisplayName,Phone,WindowsEmailAddress | Export-CSV c:\GAL-Export.CSV –NoTypeInformation
Bien sûr, ce qui suit est possible si votre serveur Exchange fonctionne bien. Si votre serveur Exchange ne fonctionne pas, vous pouvez alors décider d’exporter à partir du carnet d’adresses hors ligne (OAB) sur un logiciel Outlook.
Pour faire cela à partir du logiciel Outlook, vous devez ouvrir le carnet d’adresses, sélectionner la liste qui contient la copie du carnet d’adresses global (OAB) qui est une copie hors ligne du GAL. Sélectionnez tous les contacts que vous souhaitez exporter et faites un clic droit sur la sélection. Vous ne pouvez pas les exporter directement car vous devez d’abord les importer dans les contacts en choisissant Ajouter au contact.
Ceci devrait être votre dernier recours si vous avez des contacts manquants car la synchronisation entre le GAL et l’OAB peut prendre un certain temps comme 24 heures par défaut. Ainsi, si vous avez effectué un certain nombre de modifications avant d’avoir des problèmes dans votre serveur Exchange, celles-ci ne seront pas visibles dans votre OAB car il n’a pas encore été mis à jour. De même, si vous avez eu besoin d’exporter les messageries cachées du carnet d’adresses, cela ne sera pas possible car le OAB ne contient que les contacts qui sont visibles. Rappelez-vous que l’exportation d’un grand nombre de contacts prendrait un temps considérable et les performances seraient dégradées.
La solution finale et la plus efficace pour exporter le GAL pour une ancienne restauration d’un serveur Exchange est d’utiliser une application appelée Stellar Converter for EDB qui peut facilement exporter toutes les informations dont vous avez besoin en un clic de touche. Stellar Converter for EDB peut ouvrir un fichier EDB dont la restauration native demanderait un effort considérable, sans compter que vous auriez besoin de la version exacte du serveur Exchange et beaucoup de temps pour le configurer. Stellar Converter for EDB peut également exporter vers PST et d’autres formats tout en exportant vers des serveurs Live Exchange ou des locataires Office 365.