Вопрос:
Как устроен поиск Indeed-Id Серверов в случае нескольких инстансов?
Ответ:
Устроен следующим образом:
Поиск производится в Global Catalog, мы получаем все Indeed-Id серверы (SCPs). Среди них выбираются необходимые по следующим правилам:
- поиск может идти только по направлению корня (от потомка к предку);
- выбираются только те SCPs, у которых расстояние между серверным хостом и пользовательским хостом минимально.
В процессе получения списка SCPs происходит заполнение веса каждой записи, чем ближе серверный хост к пользовательскому хосту, тем меньше его вес. Вес - расстояние между dns именами хостов (0 - если домен тот же, 1 - если в SCP хост из домена предка и пр. Дочерние домены относительно домена локального хоста игнорируем исходя из правил поиска).
Далее происходит фильтрация списка SCPs исходя из веса каждой записи, отфильтровываются все записи, вес которых больше минимально существующего в списке.
Далее идет старая процедура определения сервера/хоста.
Пример
Есть следующие домены с инстансами Indeed-Id:
child.parent.com
parent.com
Серверные хосты (SCPs):
server.child.parent.com
server.parent.com
Пользовательские хосты:
wks.child.parent.com
wks.parent.com
a) Поиск сервера происходит с пользовательского хоста wks.child.parent.com:
Получаем набор SCPs:
server.child.parent.com
server.parent.com
Расставляем веса:
server.child.parent.com - 0
server.parent.com - 1
Фильтруем записи по минимальному значению (0):
server.child.parent.com - 0
b) Поиск сервера происходит с пользовательского хоста wks.parent.com:
Получаем набор SCPs:
server.child.parent.com
server.parent.com
Расставляем веса:
server.child.parent.com - INT_MAX - 1 (потому как домен child.parent.com является дочерним относительно домена пользовательского хоста wks.parent.com)
server.parent.com - 0
Фильтруем записи по минимальному значению (0):
server.parent.com
Нюансы решения
Проблемы могут возникнуть при попытке доступа к объекту, который не относится к домену пользовательского хоста при условии что развернуто несколько инстансов (например, развернуто два инстанса и происходит вход в Windows через Windows Logon под пользователем родительского домена на компьютере, который зарегистрирован в дочернем домене, или же присоединение к другому домену в ADUC и попытке работать с Indeed-профилями пользователей).