【问题标题】:Unknown username or bad password, LDAP Active Directory未知用户名或错误密码,LDAP Active Directory
【发布时间】:2011-11-18 13:38:21
【问题描述】:

我正在尝试使用应用程序模式 (ADAM) 对 AD 进行身份验证,但不断收到未知用户名或错误密码。如果我在LDP.exe 中测试登录,它登录没问题,简单绑定。我已经浏览了所有具有相同问题的类似帖子,但还没有解决,有什么建议我应该检查一下吗?

private bool ValidateActiveDirectoryLogin(string Username, string Password)
{
   bool Success = false;

   System.DirectoryServices.DirectoryEntry Entry = new System.DirectoryServices.DirectoryEntry("LDAP://localhost:389/OU=Users,O=TestDirectory", Username, Password);
   System.DirectoryServices.DirectorySearcher Searcher = new System.DirectoryServices.DirectorySearcher(Entry);
   Searcher.SearchScope = System.DirectoryServices.SearchScope.Subtree;

   try
   {
      System.DirectoryServices.SearchResult Results = Searcher.FindOne();
      Success = (Results != null);
   }
   catch (Exception ex)
   {
      Success = false;
      throw;
   }
   return Success;
}

【问题讨论】:

    标签: asp.net active-directory


    【解决方案1】:

    确定您的应用程序使用什么上下文来访问 AD。如果您的 ASP.NET 应用程序池标识是低权限标识,则它没有足够的权限来查询活动目录。如果您不想创建自定义用户来以适当的权限运行应用程序池 - 您可以使用 LogonUser API 在该帐户的安全上下文下进行 ValidateActiveDirectoryLogin 调用。

    最后,如果您使用 .NET 3.5 或更高版本,您应该考虑使用System.DirectoryServices.AccountManagement

    你可以使用类似的代码

    bool validCreds = false;
    using (PrincipalContext context = new PrincipalContext(ContextType.Domain))
     {
         validCreds = context.ValidateCredentials( username, password );
     }
    

    【讨论】:

    • 我已经尝试了上下文、目录条目和主体 - 两者都具有相同的结果,主体使用 ContextType.ApplicationDirectory,因为它是 ADAM。我将应用程序池设置为 ApplicationPoolIdentity,我尝试使用 Localservice、Localsystem,但得到了同样的错误。
    • 只是开玩笑,您是否尝试过在 web.config 中添加身份 impersonate=true,这将在请求用户的上下文下执行请求,如果可行,则 perms 是问题所在。跨度>
    • 试过,没有效果,问题依旧。我已经在 AD 中设置了 userprincipalname,如果我在 VS 中创建一个新站点并将成员资格提供程序更改为 AD,它就没有问题,但不是来自上面的代码。
    • 所以你在本地运行应用程序正确吗?什么操作系统?赢7? Win2k3/8?
    • 是的,本地,Win7,使用本地 AD。
    猜你喜欢
    • 1970-01-01
    • 2012-06-26
    • 1970-01-01
    • 1970-01-01
    • 2010-09-28
    • 1970-01-01
    • 2021-10-22
    • 1970-01-01
    • 2012-07-13
    相关资源
    最近更新 更多