SQL-запрос для отключенных учетных записей Active Directory - PullRequest
4 голосов
/ 24 августа 2009

Мне нужно запросить AD, чтобы определить, отключена ли учетная запись пользователя.

Используя аналогичный запрос, используемый в ответах здесь

SELECT *
FROM OPENQUERY(ADSI, 'SELECT sAMAccountName
FROM ''LDAP://DC=MyDC,DC=com,DC=uk''
WHERE objectCategory = ''Person''
AND objectClass = ''user'')

Мне кажется, чтобы определить, отключена ли учетная запись, мне нужно каким-то образом использовать поле userAccountControl. Я пробовал несколько вещей, но они, похоже, не работают:

WHERE userAccountControl & 2 <> 0

Ответы [ 3 ]

7 голосов
/ 15 мая 2013

Внутри OPENQUERY ():

AND '' userAccountControl: 1.2.840.113556.1.4.803: '' <> 2

SELECT *
FROM OPENQUERY(ADSI, 'SELECT sAMAccountName
FROM ''LDAP://DC=MyDC,DC=com,DC=uk''
WHERE objectCategory = ''Person''
AND objectClass = ''user''
AND ''userAccountControl:1.2.840.113556.1.4.803:''<>2)
6 голосов
/ 26 января 2010

Как насчет:

SELECT sAMAccountName
FROM OPENQUERY(ADSI, 'SELECT sAMAccountName, userAccountControl 
FROM ''LDAP://DC=MyDC,DC=com,DC=uk'' 
WHERE objectCategory = ''Person'' 
AND objectClass = ''user''') 
WHERE userAccountControl & 2 <> 0; -- disabled
4 голосов
/ 25 августа 2009

Очевидно, это сработало ... это был бы ID-10-T: p

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