我设法为SSL设置了一个Windows 2003 Active Directory,包括StartTLS和LDAPS,我已经使用Windows Resource Toolkit中的Ldp.exe进行了验证。我也可以使用C#.NET中的LdapConnection对象查询目录的内容。
我想继续为我的Active Directory查询使用SSL,例如:
我尝试过使用
domain = Domain.GetDomain(new DirectoryContext(DirectoryContextType.DirectoryServer, mydomain + ":636", username, password));
但似乎没有将LDAPS与端口636对话,我得到以下异常
System.DirectoryServices.ActiveDirectory.ActiveDirectoryObjectNotFoundException: Domain controller "ad.rambutan.com:636" does not exist or cannot be contacted.
Forest.GetForest也是如此。
有没有办法让Domain.GetDomain通过SSL工作?无论是StartTLS还是LDAPS都可以。
答案 0 :(得分:0)
DirectoryContextType的文档未提及LDAPS,因此我认为您无法使用它。
答案 1 :(得分:0)
您似乎无法使用Domain.GetDomain执行此操作,但您可以通过将DirectoryEntry属性设置为AuthenticationType来使用SecureSocketsLayer类来执行此操作。有关示例,请参阅DirectorySearcher not working for Windows 7 64 bit or 32 bit over network。