В рамках моей нынешней роли мне часто приходится работать с объектами в одном из ресурсных лесов моей организации.На данный момент для этого я использую сеанс RDP, подключенный к серверу в этом лесу, и аутентифицируюсь на нем с определенной учетной записью «Администратор» в этом лесу.
Я начинаю находить этоутомительно, и поэтому я пытался придумать хороший файл profile.ps1, который даст мне DirectoryEntry для леса ресурсов, с которым я смогу работать с Powershell (v2.0) на моей локальной рабочей станции, и спасу менянадоело постоянно восстанавливать сеансы RDP.
Итак, у меня есть некоторый код в моем profile.ps1, который выглядит следующим образом:
$resforest = "LDAP://DC=ldap,DC=path,DC=details"
$creds = Get-Credential -credential "RESOURCE_FOREST\my_admin_account"
$username = $creds.username
$password = $creds.GetNetworkCredential().password
$directoryentry = New-Object System.DirectoryServices.DirectoryEntry($resforest,$username,$password)
Все это происходит нормально, однако, когдаЯ на самом деле использую эту запись следующим образом:
$search = New-Object DirectoryServices.DirectorySearcher($directoryentry)
$search.filter = "(&(anr=something_to_look_for))"
$search.findall()
Я получаю ошибку входа в систему.
Теперь я знаю, что с учетными данными все в порядке, я могу сопоставить с ними диски со своей рабочей станции на машиныв лесу ресурсов - и это прекрасно работает - так что я тут теряю?
PS - Пожалуйста, не просите меня ничего делать с командлетами AD Quest - они здесь не разрешены.