Группы администраторов домена не отображаются через LDAP - PullRequest
1 голос
/ 17 мая 2011

У меня есть система Debian Squeeze, которая использует libnss-ldap для привязки к контроллеру домена Active Directory 2008 года для поиска пользователей и групп. Все работает нормально, за исключением того, что любой, кто входит в группу «Администраторы домена», «Администраторы предприятия» или «Администраторы схемы», не получает правильного членства в группе. Они получают только группу * Admin, а другие нет (если только не применяются локальные группы, которые показывают).

Еще более странно, что "getent group" показывает все правильные членства в группах для пользователя, а "id" или "groups" (при работе от имени пользователя) - нет. Мы используем группу домена для доступа sudo, и этот пользователь не может использовать sudo, потому что не видит членство в группе. Как только членство * Admin удалено, поиски работают правильно.

Я подозревал, что, возможно, это была функция безопасности AD, но у нас есть системы FreeBSD, использующие nss-ldap, в которых членство в группах этих пользователей разрешается правильно. В журналах нет ничего, что указывало бы на то, что эти поиски не дают нормальных результатов, и я не смог найти что-либо через Google, чтобы пролить свет на ситуацию. Кто-нибудь еще использует libnss-ldap в Debian для подключения к AD, кто может попытаться подтвердить это поведение?

Редактировать: я подтвердил с помощью ldapsearch, что AD возвращает правильные результаты. Я также остановил nscd, чтобы убедиться, что он не мешает. Любой пользователь в группе «Администраторы домена» видит только свою основную группу, локальные группы и администраторов домена.


Кстати, я думаю, что это проблема:

http://support.microsoft.com/kb/976063

Ответы [ 2 ]

1 голос
/ 28 декабря 2011

Мой ответ был удален, но проблема была в том, что на самом деле UAC, как описано в http://support.microsoft.com/kb/976063. Проблема в том, что администраторы домена, когда UAC включен на контроллере домена, фактически существуют в двух состояниях. Один, который является членом группы администраторов домена (т. Е. «Теневой» пользователь UAC), а другой - обычный пользователь. Похоже, что DC возвращает первое только при запросе с LDAP. Создав новую группу, сделав эту группу членом группы администраторов домена вместо самих учетных записей, и поместив учетные записи в новую группу, проблема была решена.

1 голос
/ 07 июля 2011

У меня тоже была эта проблема.

Я нашел это в конце концов, около 18 месяцев назад. Это функция безопасности Microsoft. Существует служба, которая запускается один раз в час и удаляет администраторов из поиска LDAP. Если вы сделаете запрос как анонимный, вы получите правильный ответ в течение 1 часа. Через час вы ничего не получите. Если вы войдете в систему как пользователь домена, вы получите правильную информацию. Вот почему вы получаете разные результаты.

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

Дело в том, что единственный ответ на это

  1. Отключите эту службу, и она выполняет много других функций безопасности, так что это не очень хорошая идея.

  2. Изменить поиск LDAP для запуска под входом пользователя домена (мы сделали это для некоторых пользователей)

  3. Создайте фиктивный дубликат контакта с одинаковой информацией для каждого из наших администраторов. Это, вероятно, самый простой и быстрый способ, но он наиболее подвержен неправильному формированию информации с течением времени.

Рациональное использование этой функции безопасности заключается в том, чтобы скрыть всех администраторов домена от случайного анонимного поиска, чтобы их учетные данные не могли быть скомпрометированы атакой пароля энциклопедии.

Кэлвин Томас

...