Мне нужно запросить AD, чтобы определить, отключена ли учетная запись пользователя.SQL-запрос для отключенных учетных записей Active Directory
Используя аналогичный запрос, используемый в ответах here
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
Приведенный выше код возвращает активных пользователей. Удивительное решение. Гораздо лучше использовать внутри OPENQUERY из-за предела 1000 строк, введенного ADSI. – JiggsJedi
1.2.840.113556.1.4.803 - код для операции BitWise AND 1.2.840.113556.1.4.804 - код для операции BitWise OR На всякий случай кто-то задавался вопросом, почему там было странное число и что это значило. Также это лучшее решение по причинам, о которых говорится в предыдущем комментарии. – Matt
Работал как шарм. Огромное спасибо! – Lumberjack