Назад | Перейти на главную страницу

Запрос LDAP не возвращает все учетные записи с определенным логином

У меня есть домен Windows 2008, который я запрашиваю через ldapsearch, и если я использую учетную запись администратора домена, я получаю всех пользователей, которых я ожидал, но если я использую учетную запись службы, которую я создал для этой цели, я пропускаю случайные объекты.

Например:

#> ldapsearch -LLL -H ldap://domain-controller.my-domain.com:389 -b 'dc=MY-DOMAIN,dc=COM' -D 'MY-DOMAIN\administrator' -W '(&(objectClass=Person)(sAMAccountName=*)(memberof=cn=StashTeam,ou=MyTeams,ou=MyDomainUsers,dc=MY-DOMAIN,dc=COM)(!(userAccountControl=514)))' | grep cn:

Я получаю список:

cn: Homer Simpson
cn: Marge Simpson
cn: Bart Simpson
cn: Lisa Simpson
cn: Maggie Simpson

Однако, если я запускаю (используя свою учетную запись службы):

#> ldapsearch -LLL -H ldap://domain-controller.my-domain.com:389 -b 'dc=MY-DOMAIN,dc=COM' -D 'MY-DOMAIN\ServiceUser' -W '(&(objectClass=Person)(sAMAccountName=*)(memberof=cn=StashTeam,ou=MyTeams,ou=MyDomainUsers,dc=MY-DOMAIN,dc=COM)(!(userAccountControl=514)))' | grep cn:

Я получаю список вроде:

cn: Homer Simpson
cn: Lisa Simpson
cn: Maggie Simpson

Вероятно, это скрытая проблема с разрешениями, поскольку AD может хранить учетные записи в странных местах, а разрешения могут быть отозваны, если вы не будете осторожны.

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

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