Експорт адресної книги (GAL) Exchange в CSV

Розглянемо кілька спосіб експорту вмісту глобального списку адрес (Global Address List) Exchange в текстовий CSV-файл. У такому вигляді список контактів з корпоративної адресної книги можна буде перенести і імпортувати в контакти сторонніх поштових клієнтів або онлайн-сервіси електронної пошти.

Розглянемо кілька різних інструментів для експорту: це може бути Exchange Management Console, Powershell, MS Access або утиліта csvde. Що цікаво, в MS Outlook повністю відсутні кошти для експорту Exchange Global Address в будь-який формат. Експортувати можна лише особисту адресну книгу, але не будеш же переносити в неї всіх адресатів з GAL.

Найпростіше вивантажити адресну книгу прямо з консолі EMC. Для це перейдіть в розділ Mailbox і в правій колонці виберіть Export List. Але для цього потрібно, як мінімум, мати доступ до консолі Exchange.

Для отримання списку адрес в домені можна використовувати командлет Powershell - Get-Recipient. Наприклад наше завдання - вивести список імен користувачів, їх smtp-адрес і телефонних номерів:

Get-Recipient | Select-Object Name, PrimarySmtpAddress, Phone

Щоб вивести записи тільки з адресної книги (Default Global Address List), скористаємося фільтром:

$ Filter = (Get-GlobalAddressList 'Default Global Address List'). RecipientFilter

Get-Recipient -ResultSize unlimited -RecipientPreviewFilter $ filter | Select-Object Name, PrimarySmtpAddress, Phone

Виключимо зі списку записи, приховані з адресної книги (атрибут HiddenFromAddressLists) І експортуємо результат в CSV файл:

Get-Recipient -RecipientPreviewFilter $ filter | Where-Object $ _. HiddenFromAddressListsEnabled -ne $ true | Select-Object Name, PrimarySmtpAddress, Phone | Export-CSV c: \ GAL.csv -NoTypeInformation

Для імпорту даних з AD можна скористатися консольної утилітою csvde.exe.

Команда для вивантаження даних про користувачів з ящиками може виглядати так

CSVDE -r "(& (objectClass = person) (mail = *))" -l displayName, proxyAddresses -f GAL.csv

На виході вийде список виду:

CN = MskTest, OU = Service, DC = corp, DC = winitpro, DC = ru ", MskTest, smtp: [email protected]

Ну і наостанок самий неочевидний, але досить простий і зрозумілий для простого користувача спосіб експорту GAL - через БД Access.

  1. запускаємо Microsoft Access і в меню вибираємо File->Open
  2. У типах файлів даних виберіть Exchange ()
  3. У списку джерел виберіть Global Address List
  4. Отримуємо плоску таблицю Access з даними адресної книги.
  5. Тепер можна експортувати ці дані з бази в CSV або Excel файл.

Отриманий CSV файл досить просто обробити в тому ж в Excel'е і привести до потрібного вигляду.