вторник, 17 августа 2010 г.

Списки адресов (Address List) в Exchange 2010

Картинка 63 из 10377Любая почтовая система предприятия должна обладать возможностью создания адресных книг, сервер Microsoft Exchange в этом плане не исключение. В крупных организациях список адресов сотрудников может быть достаточно внушительным, вследствие чего возникает, по крайней мере, несколько проблем:

  • Затруднен поиск нужных контактов;
  • Часто руководство не хочет, чтобы их контакты были доступны всем пользователям;
  • Сотрудникам удаленных офисов совсем не обязательно загружать контакты соседних филиалов;
  • Увеличивается нагрузка на сеть при загрузке клиентами OAB и т.п..

В данной статье мы поговорим о том, как работать со списками адресов в Exchange 2010.

Для начала разберемся в понятиях:

Списки адресов (Address Lists) – это совокупностью получателей и других объектов Active Directory. Каждый список адресов содержит один или несколько типов объектов (например, пользователи, контакты, группы, общие папки, конференции и другие ресурсы). Списки адресов также позволяют разделять объекты с включенной поддержкой почты в Active Directory для определенных групп пользователей.

Глобальный список адресов (GAL) — это каталог, содержащий записи для всех групп, пользователей и контактов в организации Microsoft Exchange.

GAL видят пользователи у себя в адресной книге при создании письма. Напомню, что не нужно путать автономную адресную книгу (OAB) с глобальным списком адресов (GAL). По умолчанию OAB лишь содержит в себе глобальный список адресов (GAL), но это можно и изменить (про OAB подробнее можно почитать здесь).

В организации может быть создано несколько простых списков адресов при помощи командлета New-AddressList и несколько глобальных списков адресов при помощи New-GlobalAddressList.

При этом набор пользователей, включенный в конкретный Address List можно гибко редактировать при помощи фильтров.

Создание адресных списков:

Создать собственный Address List можно как через EMS так и через EMC. Откроем Exchange Management Console - Organization Configuration – Mailbox – вкладка Address Lists – в меню Actions выберем New Address List... Далее укажем имя списка, тип адресатов, включенный в него и на следующем шаге мастера настроим фильтр, согласно которому в список будут попадать необходимые получатели.

clip_image002

Рис.1: Настройка фильтра для списка адресов.

Здесь для фильтрации кроме стандартных параметров AD, таких как State, Department или Company, можно использовать и дополнительные атрибуты. Для этого нужно:

  • Добавить атрибут почтовому ящику командой:

Get-Mailbox "условие отбора" | Set-Mailbox -CustomAttribute1 "123"

  • При создании списка указать Custom Attribute 1 equals Value = 123

После создания нового списка адресов на сервере Exchange, он будет доступен всем пользователям организации.

Нужно понимать, что если вы захотите изменить правило фильтрации для одного из списков адресов, то изменения не будут применены до того момента пока вы не примените этот список, сделать это можно нажав на нем правой кнопкой мыши – Update (Применить) или командой:

Update-AddressList "Your AddressList"

При создании списка адресов вы указываете контейнер в котором он будет находиться, если в последствии вам понадобиться переместить этот список и сделать его дочерним для другого контейнера, то нужно воспользоваться следующей командой:

Move-AddressList -Identity c3fffd8e-026b-41b9-88c4-8c21697ac8ac -Target "\All Users\Sales\Building4"

Принадлежность пользователей спискам адресов

Часто бывает трудно сказать в какой список адресов включен конкретный сотрудник. Чтобы проверить в какие списки адресов входит пользователь нужно воспользоваться оснасткой AdsiEdit.msc. Открываем AdsiEdit.msc - подключаемся к разделу Default, в контейнере CN=Users находим нужного пользователя и в атрибуте showInAddressBook проверяем в какие списки пользователь входит.

clip_image004

Рис.2: Просмотр списков адресов, в которые входит пользователь.

Нужно понимать, что содержимое данного атрибута обновляется при обновлении самих адресных списков, например командой Update-AddressList/Update-GlobalAddressList.

Если же стоит задача увидеть содержимое самого списка адресов, то необходимо воспользоваться командой:

Get-AddressList -Identity " Your AddressList " | fl DistinguishedName

Права на просмотр списков адресов

На сервере Exchange может быть создано несколько глобальных списков адресов (GAL) и несколько обычных списков адресов (Address List), при этом большинству пользователей совсем не обязательно видеть, например адреса топ-менеджеров компании или даже адреса сотрудников филиала в другом городе. Отредактировать права на просмотр тех или иных списков адресов конечными пользователями можно двумя способами:

  • Использовать оснастку AdsiEdit;
  • Использовать командлет Set-ADPermission.

Чтобы запретить какой либо группе открывать конкретный список адресов, нужно открыть AdsiEdit.msc, подключиться к разделу Configuration, затем спуститься по ветке Configuration – Services - Microsoft Exchange - Название организации – CN=Address Lists Containers здесь нажимаем правой клавишей мыши на нужном списке адресов и изменяем разрешения Open Address List = Deny.

clip_image006

Рис.3: Редактирование прав на просмотр Address List.

Заключение

Это пожалуй все, что я хотел рассказать про адресные книги в Exchange 2010. В конце хочу упомянуть про Hierarchical Address Book (HAB) - функцию Exchange Server 2010, которая позволяет использовать иерархию в адресной книге. Эта тему очень хорошо раскрыта Арманом Обосяном в статье Exchange Server 2010 Hierarchical Address Book.

31 комментарий:

S.Yushkov комментирует...

Алексей, сделали все как ты написал. Тем кому запрещено, действительно перестали попадать в этот адрес-лист, что не мешает им находить указанные в листе контакты тупо через поиск. Или в полном списке контактов. Есть ли возможность получить законченное решение, или тут необходимы другие инструменты?

Алексей Богомолов (Alexx) комментирует...

Создание 2-х разных GAL-ов, пожалуй самый оптимальный вариант, как вам и подсказали тут - http://social.technet.microsoft.com/Forums/ru-RU/exchange2010ru/thread/1e90dbd5-314d-450d-a0b7-7eec04ab21a6

Igor Shupenyuk комментирует...

Алекс, спасибо за доклад
У меня вопрос, можно конкретному пользователю назначить отдельный список получателей, чтобы по умолчанию он у него открывался вместо глобального ??

Arsen комментирует...

Добрый день, Алексей!
Есть Exchange 2010 и клиент MS Outlook 2010. Если при выключенном кэше на клиенте адресная книга отображается без проблем, все изменения в Exchange сразу появляются в Глобальной Адресной книге на клиенте! то со включенным кэшем клиента Глобальная Адресная книга не обновляется (а именно, в GAL не отображается моя группа рассылки (distribution group) для рассылки, но если рассортировать по списку групп, она есть в ней.) в принципе, ждали 2,5 суток, эффекта нет! но стоит стереть кэш у клиента (даже не снимая галочки на весь почтовый ящик), подсасывается свежая книга со всеми изменениями. В чем может быть загвоздка, куда хоть копать?

Алексей Богомолов (Alexx) комментирует...

А если в режиме кэшрования в ручном режиме запустить загрузку адресной книги, то какая ошибка выводится? Вот эту статью читали http://www.alexxhost.ru/2010/08/offline-address-book-oab-exchange-2010.html ?

Анонимный комментирует...

Алексей, можете подсказать какой период обновления у глобального списка адресов?

Алексей Богомолов (Alexx) комментирует...

Вы имеете ввиду Default Global Address List? Если да, то это адресный список основанный на определенном фильтре, на сколько я знаю, у него нет настраиваемого расписания обновления. После того, как вы внесли в него изменения, вы можете руками запустить обновление путем выполнения команды Update-GlobalAddressList.
Может быть у вас проблема с Offline Address book? Если да, то почитайте эту статью http://www.alexxhost.ru/2010/08/offline-address-book-oab-exchange-2010.html

Анонимный комментирует...

В принципе я обновил глобальный список адресов через командлет Update-GlobalAddressList и получил то что хотел, но сам вопрос остается открытым....обновляется ли автоматически глобальный список адресов сам по себе.... и если обновляется ..каков у него интервал

Анонимный комментирует...

Алексей, спасибо за информацию..

Анонимный комментирует...

Хотелось бы повторить вопрос Арсена о том, что если в оутлуке стоит галочка кэша, то адресная книга не обновляется. Принудительная загрузка адресной книги эффекта не дает. Ошибок никаких нет. Результат есть только если снять галочку, либо руками удалить файлы относящиеся к адресной книге. При проверке того используется загруженная автономная адресная книга или outlook обращается к глобальному списку адресов (GAL). в свойствах указывается локальный путь. Сразу после зачистки отображается сетевой путь сервера почты. Есть какие нить мысли по этому поводу?

Алексей Богомолов (Alexx) комментирует...

К сожалению по этому вопросу у меня нет готового ответа. Надо включать Advanced Logging в Outlook и читать логи на клиенте и на сервере.

Анонимный комментирует...

Алексей хотелось бы уточнить то что мне удалось нарыть....может кому еще полезно будет прочитать
http://support.microsoft.com/KB/841273
Итак, Exchange формирует OAB на основании GAL раз в 24 часа. Так же раз в 24 часа Outlook загружает эту OAB. Соответственно может потребоваться 48 часов на то чтобы увидеть актуальную информацию в outlook в режиме кэширования. Так же из этой статьи можно узнать как заставить outlook пользоваться GAL даже если стоит режим кэширования. Но остаются два вопроса. Обновляется ли GAL моментально при добавлении пользователя или его надо обновлять вручную? и второй вопрос связан с параметром "разностного обновления" (это так же видно из статьи - вопрос 8 )при котором outlook решает обновлять ему OAB или нет. вот этот момент я пока не понял совсем

Unknown комментирует...

Если можете помогите, Вопрос таков .создан юзер по всем процедурам.Проблема в том что юзер не у всех отображается в глобальном каталоге адрессной книги.у меня например показывает у рядом сидящего нет.от чего это может быть.И если поменять в адрессной книги и сделать all users тогда новопоявившийся юзер будет отображаться. не могу понять почему .
заранее благодарю.

Алексей Богомолов (Alexx) комментирует...

А сколько времени прошло с момента создания пользователя? В OWA та же история?

Unknown комментирует...
Этот комментарий был удален автором.
Unknown комментирует...

Алексей, здравствуйте! Недавно меня озадачили решением такой проблемы. В Outlook 2003 при создании письма в строке кому при автозаполнении когда начинаешь набирать имя пользователя на русском он предлагает адрес в таком формате "Иванов Иван Иванович "user12345678"" Используем Exchange 2010. C Outlook 2010 и 2013 такого не наблюдается. http://yadi.sk/d/q72FMYPuQ3N9S

Алексей Богомолов (Alexx) комментирует...

К сожалению по Outlook 2003 я Вам подсказать не могу, возможно это поведение by design.

Анонимный комментирует...

Здравствуйте, Алексей! Можно ли конкретному пользователю назначить отдельный список получателей, чтобы по умолчанию он у него открывался вместо глобального? Заранее спасибо за ответ.

Алексей Богомолов (Alexx) комментирует...

Посмотрите вот здесь - http://office.microsoft.com/en-us/outlook-help/change-the-default-address-book-watch-and-learn-HA010252526.aspx
Не оно?

ashum комментирует...

Алексей, подскажите, пожалуйста, как добавить созданный GlobalAddressList в новый OfflineAddressBook. Вижу только возможность добавить DefaultGAL и обычные списки.

Алексей Богомолов (Alexx) комментирует...

на сколько я знаю - ни как. Посмотрите в сторону Address Book Policy, там разные дефолтные GAL можно сделать.

Unknown комментирует...

Добрый день, не подскажет такой момент, в глобальном поиске у некоторых пользователей Outlook отображаются пользователи, которые вообще не имеют почтового ящика, тянет он их из домена, как справиться с этой проблемой?

Анонимный комментирует...

Подскажите,а как создать Адресную книгу с получателями не из AD?(user@mail.ru,user@ya.ru ..etc)+ Она должна быть доступна определенным пользователям домена

Alexey Bogomolov комментирует...

Для этих адресов нужно создать Mail-Contact`ы и уже из них можно будет сформировать отдельную адресную книгу или включить в дефолтную.

Анонимный комментирует...

А можно на пальцах?)
Как под mail-contact'ы создать отдельную адресную книгу.
Спасибо!

Анонимный комментирует...

точнее,как разделить(Т.е общую книгу из всех общих контактов получается сделать,а как отфильтровать определенные контакты?)

Alexey Bogomolov комментирует...

нужно создать новый Address List и составить фильтр таким образом, чтобы туда попли все, кто нужен - https://technet.microsoft.com/en-us/library/bb125036(v=exchg.150).aspx
Далее делаем новую ОАВ и добавляем туда этот Address List.
Выпилить нужные контакты из текущих адресных списокв можно также путем манипуляций с их фильтром.

Анонимный комментирует...

Алексей подскажи что нужно настроить на сервере exchange что бы по ldap подключиться с thunderbird к глобальному списку адресов?

Алексей Богомолов (Alexx) комментирует...

Почитайте вот тут - https://www.uio.no/english/services/it/email-calendar-chat/email-calendar/help/thunderbird/setup/add-adressebook-from-exchange-in-thunderbird.html

Анонимный комментирует...

Да, этот вариант я уже рассматривал, но он не подходит! Нужно thunderbird-ом по ldap брать адреса с exchange, ещё и из внешней сети!

speyl комментирует...

А можно ли создать списки контактов без почтовых адресов на уровне сервера и раздать права на них пользователям?

Отправить комментарий