我正在尝试使用Powershell v4通过SSL查询LDAP服务器。服务器位于受信任的域中。
- 服务器名称为 xxx.xxx.intranet
- 使用服务器名称和端口636,我可以使用 JXplorer 和 LDAPAdmin
连接并查询服务器- 当我在没有搜索库的情况下查询服务器时,它返回包含" vendorName = Sun Microsystems" " vendorVersion =目录代理服务器11.1.1.7.1",所以我猜测我没有和MS机器说话
-I'我试图使用 System.DirectoryServices.Protocols 进行查询,因为这似乎是与供应商无关的方式来使用Powershell进行查询 - 对吗?
- 现在,我还是坚持这个:
Find-LdapObject -SearchFilter:"(attributeOrigin=HR)" -LdapServer:"xxx.xxx.intranet:636" -searchBase "ou=People,o=Company"
这会返回以下错误:
The Distinguished Name Contains Invalid Syntax
接下来,我尝试在变量中定义LDAP服务器:
$ldapSrv=new-object System.DirectoryServices.Protocols.LdapConnection(new-object System.DirectoryServices.Protocols.LdapDirectoryIdentifier(xxx.xxx.intranet, 636))
然后,将auth类型设置为' basic'使用 - 丑陋但似乎有效:
$ldapSrv.AuthType = New-Object System.DirectoryServices.Protocols.AuthType
这就是我最终的结果:
The LDAP server is unavailable
非常感谢帮助。
此致 迈克尔