c# - 使用 C# 的事件目录身份验证

标签 c# active-directory ldap

我在针对 AD 验证我的用户时遇到严重问题。我可以使用 PrincipalContext 方式或 DirectoryEntry 方式来检查登录是否成功。但这对我来说还不够。我需要知道身份验证失败的原因(例如:密码过期、帐户被锁定、错误密码计数限制)。有没有办法在不使用 native win32 dll 的情况下实现这一目标。顺便说一句,这可能不会一直是一个网络项目。我的最佳解决方案可能是通用的。 感谢您的帮助...

最佳答案

你应该在异常中得到错误的原因。

如果身份验证将失败,您会通过使用 PrincipalContext 成员获取信息,例如:

  • AccountExpirationDate(账户是否过期)
  • AccountLockoutTime(账户是否被锁定)
  • 已启用(帐户是否已启用)
  • IsAccountLockedOut(账户是否被锁定)
  • PermittedLogonTimes(用户现在是否允许登录)
  • PermittedWorkstations(是否允许用户从此客户端登录)

关于c# - 使用 C# 的事件目录身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12744644/

相关文章:

c# - 装饰模式问题C#/java

java - 如何使用UnboundID获取DN和密码

ldap - 是否可以为 LDAP 用户设置本地组

tomcat - JNDI Tomcat Servelet(grails)尝试从身份验证的 LDAP 绑定(bind)中获取更多属性

c# - 是否可以在 OS X 中使用 WPF 和 C# 之类的东西?

c# - 设置相对于最后一行文本的光标位置C# 控制台应用程序

c# - GetFilesAsync 能否仅选择 *.png 图像?

asp.net - IIS 6/ASP.NET Windows 身份验证 list ?

c# - 将密码存储在加密的 cookie 中?

c# - 使用 LDAP 查询从我公司的所有林中获取所有域