LDAP到LDAPS URL更改(.Net MVC)

时间:2016-08-03 03:51:32

标签: asp.net-mvc authentication active-directory ldap

我的应用程序使用LDAP身份验证登录时使用LDAP URL。一切都很好,直到我们的SA告诉我们将URL更改为LDAPS。一旦我将URL添加为LDAPS,它就会引发异常并且不允许用户登录。请帮助我。

Working LDAP URL: LDAP://reg1.abc.com
LDAPS URL (NEW) : LDAPS://reg1.abc.com (Not working once changed)

以下是通过LDAP验证用户的代码。

    public static SearchResult AuthenticateUser(string userName, string password)
    {
        var directoryEntry = new DirectoryEntry(ConfigurationManager.AppSettings["ActiveDirectoryPath"], userName, password, AuthenticationTypes.Secure);
        var directorySearcher = new DirectorySearcher(directoryEntry);
        directorySearcher.Filter = "(samaccountname=" + userName + ")";
        var result = directorySearcher.FindOne();
        return result;
    }

1 个答案:

答案 0 :(得分:1)

这是一个可能已在Unknown Error (0x80005000) with LDAPS Connection得到解答的常见问题。按照该链接尝试添加端口636和自定义证书验证:

LdapConnection con = new LdapConnection(new LdapDirectoryIdentifier("server", port));
con.SessionOptions.SecureSocketLayer = true;
con.SessionOptions.VerifyServerCertificate = new VerifyServerCertificateCallback(ServerCallback);
con.Credential = new NetworkCredential(String.Empty, String.Empty);
con.AuthType = AuthType.Basic;
con.Bind();

在给定示例中,Credential使用空字符串,如果需要,可能需要通过真实登录/密码进行更改。