Когда я проверяю с помощью ping-запросов 140West-dc, он возвращается:
Pinging 140West-dc.bvncap.local
И мой Запрос LDAP следующие:
LDAP://dc=bvncap,dc=local
Должен туда так или иначе передать "140West-dc.bvncap.local"
к LDAP запрашивают вместо просто "bvncap.local"
Примечание: 140West
мое местоположение станции.
Править:
Я передаю общее название запросу как это:
LDAP://cn=140West-dc,dc=bvncap,dc=local
Но получите ошибку:
Run-time error : There is no such object on the server
Вот текст команды:
SELECT AdsPath FROM 'LDAP://cn=140West-dc,dc=bvncap,dc=local' WHERE objectCategory='user' And sAMAccountName = 'hjose'
Получите эту ошибку, когда я выполнюсь:
set rs = cmd.Execute
Строки LDAP-соединения должны иметь следующий синтаксис:
LDAP://[<server name>/]<baseDN>
Имя сервера является необязательным, но при необходимости может быть IP-адресом или любой разрешаемой DNS-записью (т.е. 140west-dc или 140west-dc.bvncap.local). Если оно не указано, оно будет подключаться к контроллеру домена, который связан с IP-диапазоном в AD Sites & Services.
Имя baseDN находится в подключаемом каталоге. Вы можете подключиться к корню вашего домена (dc=bvncap,dc=local), или к субдомену вашего родительского домена (dc=subdomain,dc=bvncap,dc=local), или к OU где-то под ним (ou=Level2,ou=Level1,dc=bvncap,dc=local). Это влияет на то, с чего начинается ваш поиск.
Здесь есть хорошая информация: LDAP ADsPath
Also, ваше выражение ГДЕ должно иметь "objectClass=пользователь" или "objectCategory=person". Однако, этот атрибут не нужен, так как sAMAccountName уникален в директории, поэтому в любом случае он вернёт только один объект.
.