Компания IBM
Опубликован: 04.07.2008 | Доступ: свободный | Студентов: 458 / 58 | Оценка: 4.48 / 3.95 | Длительность: 13:58:00
Лекция 6:

Единая регистрация (единый вход) (SSO) и соответствие имен в Domino

< Лекция 5 || Лекция 6: 123456 || Лекция 7 >

6.1.3 Конфигурация базы Directory Assistance в LDAP (шлюз)

В этом подразделе описывается конфигурация базы данных Directory Assistance.

Конфигурация SSO

Выберите пункт Directory Assistance \to Basic (Общие) \to SSO Configuration (Конфигурация SSO). В документе Directory Assistance в версии 7 появилось новое поле, позволяющее задать имя атрибута LDAP, применяемого в качестве имени пользователя LTPA, как показано на рис. 6.15.

Установка имени атрибута LDAP

увеличить изображение
Рис. 6.15. Установка имени атрибута LDAP
Примечание. В Domino Directory имя пользователя LDAP - это LTPA_UsrNm (с символом подчеркивания), а имя атрибута LDAP - это LTPA-UsrNm (с тире). Directory Assistance обращается к атрибуту LDAP, и, следовательно, имя поля будет LTPA-UsrNm.

Параметр в окне Directory Assistance контролирует имя пользователя LTPA из директории LDAP, а не из локальной базы Domino Directory. Локальную базу Domino Directory мы сконфигурировали на первом этапе (см. подраздел "Конфигурирование Web SSO").

Конфигурация контекста имен

Выберите пункт Directory Assistance \to Naming Context (Rules) [Контекст имен (правила)]. На закладке Naming Context (Rules) [Контекст имен (правила)] выберите вариант Yes в столбце Trusted for Credentials (Доверенный для идентификационной информации), как показано на рис. 6.16. Это необходимо для аутентификации.

Установка значения в столбце Naming Context (Rules) [Контекст имен (правила)]

увеличить изображение
Рис. 6.16. Установка значения в столбце Naming Context (Rules) [Контекст имен (правила)]
Атрибут конфигурации Notes

Выберите пункт Directory Assistance \to LDAP \to Attribute for Notes (Атрибут для Notes). Здесь конфигурация становится несколько более сложной. До сих пор мы ставили флажки и вводили имена. Теперь мы должны сказать Domino, что имя в маркере LTPA — это не то имя, которое должно использоваться для контроля доступа и в функции @UserName.

Когда сервер Domino производит аутентификацию с применением имени в маркере LTPA, пользователь идентифицируется как uid=ds,o=groofty. Помните, что данный пользователь не имеет документа Person в текущей базе Domino Directory. Аутентификация основывается на LDAP Directory Assistance. Пока мы не укажем системе Domino, что данное имя не следует применять в системе безопасности, сервер использует имя, взятое из маркера LTPA. Например, в базе данных есть документы с полями Read Access (Доступ для чтения). В этих полях хранятся имена пользователей, например, cn=Dieter Stalder/o=Titanium. Domino сравнивает имя из маркера LTPA (uid=ds) с именем Notes (cn=Dieter) и не обнаруживает совпадения. Следовательно, доступа мы не получим. Для решения этой проблемы существует 2 варианта:

  1. Использовать внешнее имя. Добавьте имя uid=ds/o=groofty в поле Reader, и Domino корректно произведет аутентификацию и предоставит доступ. Хотя данное решение и не является рекомендуемым, оно работает.
  2. Заставить Notes преобразовать внешнее имя в имя Notes. Для этого мы настраиваем атрибут, который возвращает имя Notes (distinguished name, DN).
Добавление имени атрибута LDAP в документ Directory Assistance

увеличить изображение
Рис. 6.17. Добавление имени атрибута LDAP в документ Directory Assistance

Нам нужно изменить конфигурацию сервера LDAP, но сначала нам нужно добавить имя атрибута LDAP в базу Directory Assistance, как показано на рис. 6.17. Именем атрибута является (или будет являться) owner. Сохраните документ Directory Assistance в сервере приложений Domino и перейдите к LDAP-серверу Domino.

Изменение документа Person при помощи агента

В документ Person нам нужно добавить поле, в котором хранится каноническое имя пользователя (cn=Dieter Stalder/o=Titanium). Такое поле пока не существует, поэтому нам нужно создать его. Чтобы не изменять дизайна формы документа Person, мы будем использовать поле Owners (Владельцы) закладки Administration (Администрирование), а затем запустим агент, который скопирует это поле в другое поле, которое можно сделать в LDAP (рис. 6.18).

Изменения в документе Person

увеличить изображение
Рис. 6.18. Изменения в документе Person

Первым значением в поле Owners (Владельцы) должно быть значение из поля User name (Имя пользователя). Поле Owners является полем типа Authors. При сохранении документа Person имя сохраняется в каноническом формате (cn=Dieter Stalder/0=Titanium).

Далее мы копируем значение из поля Owner документа Person в поле LDAPOwner. В данном примере мы создадим агент с инструкцией копирования.

В Domino Directory переключитесь на представление People (Люди). Затем выберите пункт меню Create (Создать) \to Agent (Агент).

Далее выделите все документы Person и запустите агент. Теперь во всех полях LDAPOwner будет каноническое имя Notes (рис. 6.19).

Примечание. Значение в поле LDAPOwner имеет формат Notes (со слешами). Атрибут owner будет в формате LDAP (c запятыми).
Создание агента

увеличить изображение
Рис. 6.19. Создание агента
Документ Configuration: LDAP

Теперь мы настроим соответствие атрибута owner в LDAP полю LDAPOwner в Notes.

Выполните следующие шаги:

  1. Откройте заданный по умолчанию документ Configuration * = [All Servers].
  2. Перейдите на закладку LDAP.
  3. Нажмите Select Attribute Types (Выбрать типы атрибутов).
  4. Нажмите New (Новый) в нижнем окне, как показано на рис. 6.20.
  5. Введите в окно New Field (Новое поле) значение owner.
  6. Нажмите ОК.
    Конфигурирование соответствия для атрибута LDAP

    Рис. 6.20. Конфигурирование соответствия для атрибута LDAP
    Вводим значение owner

    Рис. 6.21. Вводим значение owner
    Теперь в список имен полей входит новое имя, owner, в столбце LDAP Attribute Туре и LDAPOwner - в полях Domino
  7. Сохраните изменения.
  8. Перезапустите сервер LDAP.

6.1.4 Проверка LDAP при помощи утилиты ldapsearch

Проверьте конфигурацию при помощи утилиты ldapsearch. Эта утилита находится в папках \Lotus\Notes или \Lotus\Domino. Введите поисковое значение, относящееся к пользователю, и утилита вернет все атрибуты, как это показано в примере 6.1.

ldapsearch -h ldap.stdi.com "cn=dieter stalder"
CN=Dieter Stalder,O=Titanium
cn=Dieter Stalder
cn=ds
mail=DieterStalder@stdi.com
owner=CN=Dieter Stalder,O=Titanium
usercertificate;binary=NOT ASCII
objectclass=dominoPerson
objectclass=inetOrgPerson
objectclass=organizationalPerson
objectclass=person
objectclass=top
dominocertificate=03009702 9A0DC617 0AG0161C G002E3F9
ltpa-usrnm=uid=DieterStalder,o=groofty
givenname=Dieter
sn=Stalder
uid=DStalder
maildomain=Titanium
Пример 6.1. Результаты поиска пользователя поисковой системой LDAP

Убедитесь, что LDAP возвращает информацию о пользователе на основе внешнего идентификатора пользователя, как показано в примере 6.2.

ldapsearch -h ldap.stdi.com -a always -b "uid=ds,o=groofty" objectclass=*
CN=Dieter Stalder,O=Titanium
cn=Dieter Stalder
cn=ds
mail=dstalder@stdi.com
owner=CN=Dieter Stalder,O=Titanium
Пример 6.2. Информация о пользователе на основе внешнего идентификатора

За полным описанием параметров утилиты обращайтесь к теме "ldapsearch utility" справочной базы данных Lotus Domino 7 Administrator Help no адресу http://www.lotus.com/ldd/doc/domino_notes/7.0/help7 _admin.nsf/

< Лекция 5 || Лекция 6: 123456 || Лекция 7 >