Validation 必须指定协商或SimpleBind,并且不能将它们组合在一起
我正在尝试使用principalcontext根据active directory验证用户的凭据,但始终会出错。 我尝试通过ssl连接,因为它是敏感数据,但它总是在标题中显示错误Validation 必须指定协商或SimpleBind,并且不能将它们组合在一起,validation,active-directory,principalcontext,Validation,Active Directory,Principalcontext,我正在尝试使用principalcontext根据active directory验证用户的凭据,但始终会出错。 我尝试通过ssl连接,因为它是敏感数据,但它总是在标题中显示错误 try { PrincipalContext pc = new PrincipalContext(ContextType.Domain, "myAwesomeDomain.com", null, ContextOptions.SecureSocketLayer, adUser, adPassword);
try
{
PrincipalContext pc = new PrincipalContext(ContextType.Domain, "myAwesomeDomain.com", null, ContextOptions.SecureSocketLayer, adUser, adPassword);
using (pc)
{
retVal = pc.ValidateCredentials(userID, password, ContextOptions.SecureSocketLayer);
}
}
我还尝试为容器设置DC=“myAwesomeDomain,DC=COM”,而不是null。
登录广告的凭据是正确的,它们可以与DirectoryEntry一起正常工作。
我不知道该怎么继续下去
有什么想法吗?Mh,从现在开始已经有一段时间了,当时我找到了一个解决方案:
try
{
using (PrincipalContext pc = new PrincipalContext(ContextType.Domain, "myAwesomeDomain.com", null, ContextOptions.SecureSocketLayer, adUser, adPassword);
{
retVal = pc.ValidateCredentials(userID, password, ContextOptions.SecureSocketLayer);
}
}
它确实是这样工作的,我无法解释为什么