LookupAccountSID возвращает неправильное имя домена - PullRequest
0 голосов
/ 25 мая 2011

MSDN говорит: Функция LookupAccountSid возвращает имя первого домена, в котором найден SID.

Если Пользователь перенесен в домен B из домена A , и мы запрашиваем старый SID пользователя с помощью функции LookupAccountSid с любой машины домена A, мы получаем доменное имя домена A вместо домена B.

Кажется, что даже после миграции пользователя Active Directory сохраняет информацию о пользователе в домене A. Эта проблема не решается даже после перезапуска компьютеров домена A, включая контроллер домена.

Мне нужно имя нового домена пользователя . Можете ли вы предложить, как решить эту проблему?

1 Ответ

0 голосов
/ 25 мая 2011

Большинство Win32 API предназначены для работы в среде, где у одной учетной записи есть один sid.Active Directory поддерживает атрибут sidHistory, который может сохранять дополнительные SID.Если вы используете Active Directory API (например, ADSI ) или LDAP API , вы можете найти имя основного пользователя, первичный SID и все необходимые атрибуты ather.

Самая большая проблема при ответе на ваш вопрос заключается в том, что вы не описываете сценарий миграции домена , который планируется и используется в вашей организации.Когда вы планируете отключить старые контроллеры доменов?Планируете ли вы очистить старые SID, сохраненные в файловой системе, общих папках или в реестре?

Важно знать сценарий полной миграции домена, чтобы программа, которую вы сейчас пишете, продолжала работатьследующие шаги миграции домена.Я рекомендую вам поговорить с администраторами или руководителем проекта по миграции домена вашей организации, чтобы понять, что именно планируется делать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...