Outlook, AD, ANR – настраиваем поиск в адресной книге


Жизненные ситуации настолько разнообразны, что предусмотреть все сценарии использования программного обеспечения невозможно.  Иногда до удивления непонятно как разработчики программ умудряются предусмотреть некоторые сценарии. И этого скорее говорит не о предусмотрительности, а о правильном проектировании основ. В данном случае я виду речь об Outlook, Active Directory и поиске в адресной книге.

Вот какая ситуация возникла у пользователя, который обратился на форум Technet-RU:

«Нам необходимо добавить два дополнительных поля для поиска (cn и DisplayNameSimple, с помощью ANR) в скачиваемую на клиенты OAB (Outlook 2010, 2007; в режиме кэширования).»

Первая мысль была, что такое сделать невозможно, т.к. OAB не настраивается в Outlook. Но оказывается, задача имеет решение: разработчики Active Directory и Outlook заложили в основу чрезвычайно мощные технологии – настраиваемая индексация атрибутов LDAP и поисковый алгоритм Ambiguous Name Resolution.

Отмечу, что мы рассматриваем распознавание имен при написании их в полях Outlook To:, BCC: и т.п.

1.      Что такое Ambiguous Name Resolution

Формальное описание алгоритма поиска ANR можно найти в MSDN

В статье KB243299  можно найти описание некоторых сценариев использования ANR.

Суть в том, что обычный запрос к LDAP требует составления фильтра поиска, а ANR позволяет выполнить поиск без указания фильтра: объекты в LDAP ищутся по нескольким заранее определенным атрибутам. Например, вы можете напечатать имя или фамилию адресата, либо алиас его почтового адреса – поиск будет выполнен без точного указания того, что именно вы ввели.

2.      Настраиваем нужные атрибуты

Чтобы включить атрибут в алгоритм поиска ANR нужно сделать две вещи: включить индексацию атрибута и пометить его флагом fANR. Для этого:

a.       Запускаем оснастку настройки схемы Active Directory Schema.

b.      Находим нужный атрибут.

c.       Выставляем флаги индексации, ANR и репликации в Global Catalog (поисковые запросы всегда выполняются на GC).

Подробные шаги можно найти в статье http://www.msexchange.org/articles/Ambiguous-Name-Resolution.html

3.      Настраиваем Outlook

Для того чтобы поиск по дополнительным атрибутам заработал, нужно внести изменения в реестр согласно статье KB831124 How to force Outlook 2010, Outlook 2007, or Outlook 2003 to resolve proxy addresses and custom properties in Cached Exchange Mode.

Дело в том, что когда Outlook находится в режиме кэширования, то поиск выполняется только в OAB, а не в LDAP. Причем в OAB версии 4 для поиска используются следующие индексированные атрибуты:

·         mailNickname (Alias)

·         displayName (Display Name)

·         physicalDeliveryOfficeName (Office)

·         sn (Last Name)

·         givenname (First name)

·         SMTPaddress (email address)

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

 

Таким образом можно включить в поиск любой необходимый вам атрибут, например, табельный номер (Employee ID) или атрибут пользователя (Custom attribute 1 — 15).

Да будут ваши пользователи еще более довольными! :-)

Реклама

комментария 2

  1. Не работает. Или я не правильно понял. После этих манипуляций, когда создаёшь новое письмо и в строке «Кому» начинаешь вводить чьё-то имя, должно ли оно подсказывать автоматически варианты выбора? Потому что по-прежнему выдаёт только кэшированные имена… И только если нажать кнопульку «Проверить имена», то он начинает поиск и выдаёт уже правильно.

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

%d такие блоггеры, как: