LDAP无效凭据-Active Directory Windows Server 2012 R2

时间:2018-11-22 17:20:04

标签: active-directory ldap windows-server-2012-r2

我以前没有使用过Active Directory,因此我需要在C#中的Unity独立实现与通过LDAP安装在Windows Server 2012 R2上的Active Directory之间建立连接。每次连接时,都会出现相同的错误:

  

LdapException:(49)无效的凭据   LdapException:服务器消息:8009030C:LdapErr:DSID-0C0903C5,注释:AcceptSecurityContext错误,数据2030,v2580

我确信我的用户名和密码正确。

DirectoryEntry entry = new DirectoryEntry("LDAP://"+ serverName+":"+port,userName,password);

    DirectorySearcher ds = new DirectorySearcher(entry);

    ds.Filter = "XX";

    SearchResult result = ds.FindOne();
    ResultPropertyCollection rpc = result.Properties;
    foreach (string property in rpc.PropertyNames)
    {
        foreach (object value in rpc[property])
            console.text+="Property = " + property + "Value = " + value;
    }
}
catch (Exception ex)
{
    Debug.Log(ex);
}

我已经尝试使用LdapAdmin(开源LDAP目录管理工具),但是即使在Windows PowerShell中使用ldp命令行,我也收到相同的错误。任何帮助将不胜感激。 Screenshot

1 个答案:

答案 0 :(得分:1)

这很晦涩,但是您被拒绝的原因是在错误消息中。真正的错误是data字段的值。在这种情况下,错误为0x2030

将值转换为十进制以获得8240

然后查找错误。 FormatMessage API will give you that,或在命令行上,您将执行以下操作:

net helpmsg 8240

您会得到

There is no such object on the server.

这意味着您使用的用户名不存在,有错字等。