Comment exporter la liste d’adresses globale (GAL) Exchange ou Office 365 au format CSV

Comment exporter la liste d’adresses globale (GAL) au format CSV, que vous utilisiez un serveur local ou Exchange Online ?

Obtenir une liste complète et à jour des adresses e-mail et des contacts de votre environnement Exchange n’est pas toujours simple. Selon la configuration, vous pouvez accéder directement au Centre d’administration Exchange (CAE), ou tout faire via PowerShell ou Outlook. Exporter une liste d’adresses globale (GAL) semble parfois une opération rapide, mais Windows, Exchange et Office ont tendance à compliquer les choses. Ce guide présente quelques méthodes efficaces, ainsi que des astuces et des conseils que vous ne trouverez probablement pas dans la documentation officielle.

En résumé, cet outil est utile pour transférer des contacts, synchroniser un carnet d’adresses ou simplement sauvegarder les contacts e-mail de votre entreprise. Attention : certaines options ne fournissent qu’une partie des informations (comme les adresses SMTP) ou requièrent des droits d’administrateur. Cependant, avec les commandes et les étapes appropriées, vous pouvez obtenir un fichier CSV correct de votre liste d’adresses, qu’elle soit locale ou stockée dans le cloud.

Comment exporter la liste d’adresses globale au format CSV depuis un serveur Exchange local

Utilisation du Centre d’administration Exchange (CAE)

C’est la méthode la plus simple pour les petites configurations ou si vous avez accès à l’interface d’administration. Rendez-vous dans la section « Destinataires » et trouvez l’ onglet « Boîte aux lettres ».Cliquez sur le menu (trois points « … ») et recherchez une option du type « Exporter les données vers un fichier CSV ».Cette fonctionnalité est parfois disponible par défaut ; parfois, des autorisations supplémentaires ou une version spécifique d’Exchange sont nécessaires. Si elle est présente, sélectionnez les propriétés souhaitées (adresse e-mail, nom, téléphone, etc.) et exportez les données. Notez toutefois que cette méthode limite généralement l’exportation aux seules informations de la boîte aux lettres de l’utilisateur.

Pour les groupes de distribution ou les contacts, accédez à Groupes ou Contacts et vérifiez si les options d’exportation y apparaissent. Elles ne sont pas toujours disponibles via l’interface graphique, mais cela vaut la peine d’essayer. Parfois, il est préférable d’utiliser PowerShell pour un meilleur contrôle, notamment si vous souhaitez ajouter des champs ou obtenir une liste plus claire.

Récupération des informations GAL via PowerShell

C’est là que toute sa puissance entre en jeu. Commencez par vous connecter à votre serveur Exchange depuis PowerShell. Sur un serveur Exchange ou en utilisant PowerShell à distance, exécutez :

Connect-ExchangeServer -UserPrincipalName [email protected] -ShowProgress $true

(Dans les environnements hybrides ou cloud, vous utiliserez Connect-ExchangeOnline ).Ensuite, pour obtenir la liste des destinataires, la commande est :

Get-Recipient -ResultSize Unlimited | Select-Object Name, PrimarySmtpAddress, Phone | Export-CSV -Path "C:\exchange\GAL.csv" -NoTypeInformation

Cette opération importe tous les destinataires (utilisateurs, groupes, contacts) dans un seul fichier CSV. Si vous souhaitez uniquement les utilisateurs présents dans la liste d’adresses globale par défaut, utilisez un filtre :

$filter = (Get-GlobalAddressList "Default Global Address List").RecipientFilter Get-Recipient -RecipientPreviewFilter $filter -ResultSize Unlimited | ` Where-Object { -not $_. HiddenFromAddressListsEnabled } | ` Select-Object Name, PrimarySmtpAddress, Phone | ` Export-CSV -Path "C:\exchange\GAL_filtered.csv" -NoTypeInformation

Remarque : Sur certaines configurations, vous pourriez atteindre la limite de 1 000 destinataires et devoir en ajouter -ResultSize Unlimited. De plus, le fait de masquer des adresses peut empêcher l’affichage de certaines entrées, sauf si vous appliquez un filtre.

Vous utilisez Active Directory ? Si votre GAL se trouve également dans Active Directory, des outils comme csvde.exe ou PowerShell Get-ADUserpeuvent vous aider à exporter les utilisateurs avec leurs adresses de proxy SMTP. Exemple :

Get-ADUser -Filter * -SearchBase "OU=London, OU=UK, DC=domain, DC=com" -Properties proxyAddresses | ` Select-Object Name, ProxyAddresses | ` Export-CSV C:\PS\AD_GAL.csv

N’oubliez pas que l’exportation depuis Active Directory peut ne pas refléter toutes les informations Exchange, sauf si les attributs de messagerie sont configurés. Cependant, elle s’avère pratique pour obtenir une liste complète des utilisateurs, même en dehors d’Exchange.

Exporter depuis Exchange Online (Microsoft 365)

Utilisation de PowerShell pour récupérer la GAL

Microsoft ayant désactivé l’exportation directe de la GAL depuis l’interface web, la meilleure solution consiste à utiliser PowerShell. Commencez par vous connecter avec le module EXO V3 :

Connect-ExchangeOnline

Ensuite, listez vos GAL :

Get-GlobalAddressList | Select-Object Name

Si vous ne voyez que la liste d’adresses globale par défaut, il s’agit probablement de votre seule option. Pour obtenir tous les destinataires de cette liste, exécutez :

$filter = (Get-GlobalAddressList "Default Global Address List").RecipientFilter Get-Recipient -RecipientPreviewFilter $filter -ResultSize Unlimited | ` Select-Object Name, PrimarySmtpAddress, RecipientType | ` Export-CSV -Path "C:\PS\Office365_GAL.csv" -NoTypeInformation

Cette commande exporte une liste exhaustive contenant tous les utilisateurs et groupes de distribution. Attention : cette liste peut être très volumineuse et le filtrage des comptes cachés ou système peut nécessiter des commandes supplémentaires.

Recherche d’informations spécifiques dans Outlook/Access

Si vous n’êtes pas administrateur ou si vous ne souhaitez pas utiliser PowerShell, il existe une solution de contournement, bien qu’un peu fastidieuse. Vous pouvez ajouter manuellement les contacts de votre organisation à vos contacts Outlook. Accédez au Carnet d’adresses, sélectionnez la Liste d’adresses globale, appuyez sur Ctrl + A pour tout sélectionner, puis cliquez sur Ajouter aux contacts. Une fois la synchronisation avec vos contacts personnels effectuée, vous pouvez exporter ces contacts depuis Outlook (via Fichier > Ouvrir et exporter > Importer/Exporter ) au format CSV, puis les organiser.

Honnêtement, c’est un peu détourné, mais pour les utilisateurs non administrateurs, c’est la seule méthode pratique qui permette de ne pas perturber la configuration de l’organisation. Vous pouvez également utiliser Microsoft Access avec le connecteur Exchange en ouvrant une nouvelle base de données, puis en choisissant Fichier > Ouvrir > et en sélectionnant Exchange…

  • Sélectionner la liste d’adresses globales
  • Récupérez les données dans un tableau
  • Exportez ce tableau directement au format CSV.

Ce n’est pas parfait, mais bon, parfois c’est la seule solution si vous êtes limité aux outils Office et que vous n’avez pas les autorisations nécessaires.

Résumé

  • Utilisez PowerShell (sur site ou en ligne) pour obtenir une exportation complète des données GAL avec Get-Recipient.
  • Pour des exportations locales rapides, vérifiez si la CAE propose une option d’exportation.
  • L’exportation d’Active Directory fonctionne pour les informations AD, mais peut omettre certains détails spécifiques à Exchange.
  • Les méthodes d’exportation Outlook/Access sont peu pratiques, mais utilisables si vous n’êtes pas administrateur.

Conclure

Importer ces adresses e-mail dans un fichier CSV n’est pas toujours chose aisée, notamment à cause des problèmes d’autorisations ou des limitations d’interface. En général, PowerShell est la solution idéale, surtout avec Exchange Online. Mais en dernier recours, une procédure manuelle via Outlook peut fonctionner, même si elle est loin d’être optimale. J’espère que cela vous fera gagner du temps ou, au moins, vous donnera une piste. Bonne chance !