2012-12-18 74 views
1

我正在网站上管理ldap。我陷入了一种情况,当我尝试通过帐户锁定或禁用它来验证用户失败时。 我想要做的是首先验证用户显示消息后,该帐户被锁定或禁用。Ldap用户身份验证不适用于锁定或禁用的帐户

我编码这样

LdapConnection connection = new LdapConnection(new  LdapDirectoryIdentifier("SJTPNOC.com", 636)); 
connection.SessionOptions.VerifyServerCertificate = new VerifyServerCertificateCallback((con, cer) => true); 
connection.SessionOptions.ProtocolVersion = 3;   
connection.AuthType = AuthType.Basic;  
connection.SessionOptions.SecureSocketLayer = true; 
connection.Timeout = new TimeSpan(0, 0, 10); 
connection.Credential = new NetworkCredential(username, password); 
using (connection){ 
connection.Bind(); 
} 
+0

显示错误? –

+0

感谢但是有什么样的错误? –

+0

像你想要做的是清楚然而,当运行与上述代码的ur应用程序是它给任何一种错误?我现在不能运行我们的代码,因为我不在我的桌子上 –

回答

3

不知道我理解这个 - 如果用户被锁定或禁用它们将不能够进行身份验证。您应该捕获从LDAP返回的错误,并使用该信息向用户显示友好的消息,或者查找用户并阅读指示用户状态的属性(例如,AD中的userAccountControl)。

+0

并且每个LDAP服务器以不同方式报告锁定用户或错误密码的错误。 – geoffc

+0

好吧我会管理锁定或禁用帐户,但它不工作的用户必须在下次登录时更改密码也。没有身份验证,我可以允许用户更改密码。 –

+0

@ mayank.karki您需要使用更改密码扩展操作,同时以管理员用户身份进行身份验证。 – EJP

相关问题