我正在尝试使用PrincipalContext连接到C#中的LDAP服务器。我已经使用Apache Directory Studio验证了网络参数和身份验证设置是否正确。这是我使用的代码:
string sDomain = @"vds.myCompany.net:1234";
string sDefaultOU = @"ou=apdev,ou=ads,o=vds";
string sUser = @"myUsername";
string sPassword = @"myPassword";
ContextOptions options = ContextOptions.SimpleBind | ContextOptions.SecureSocketLayer;
PrincipalContext context = new PrincipalContext(ContextType.Domain, sDomain, null, options, sUser, sPassword);
我必须使用SSL连接,我的凭据是SSO。我已尝试使用和不指定sDefaultOU作为容器参数。它在最后一行抛出的错误是:
System.NullReferenceException:未将对象引用设置为实例 一个对象。在 System.DirectoryServices.AccountManagement.PrincipalContext.ReadServerConfig(字符串 serverName,ServerProperties&物业) System.DirectoryServices.AccountManagement.PrincipalContext.DoServerVerifyAndPropRetrieval() 在 System.DirectoryServices.AccountManagement.PrincipalContext..ctor(ContextType contextType,String name,String container,ContextOptions选项, String userName,String password)