我正在尝试创建一个web应用程序,根据问题/答案使用System.Web.Security API重新设置密码。
我有个例外:
DirectoryServicesCOMException (0x8007202f):如果用户对问题提供了一个错误的答案,就会发生约束冲突。
如果我将attributeMapFailedPasswordAnswerCount的值重置为不设置,则帐户再次处于活动状态。
AD中的帐户锁定阈值设置为20次登录尝试。
我是广告知识的新手,如果有人能指导我如何解决这个问题,我将不胜感激。
谢谢。
发布于 2012-07-27 15:59:36
我猜你在用ASP.NET?我对它没有任何经验,我一般也没有使用.NET的经验(我自己还在学习),但这是一个非常有用的链接,提供了各种Active (链接)的示例。包括重置用户密码。这里有一个指向DirectoryEntry类的链接,如果您不确定如何设置它(链接)。另外,仅仅浏览名称空间文档非常非常有用(链接)。也许我唯一喜欢微软的地方就是他们的好文档。
我通常会这样做(在IronPython中,所以它不会直接转换成您可以使用的代码):
ou = System.DirectoryServices.DirectoryEntry("LDAP://ou=Users,dc=whatever,dc=something,dc=localetc")
search = System.DirectoryServices.DirectorySearcher(ou, "(samAccountName="+acc"+")", Array[str](["distinguishedName"]]))
result = search.FindAll() # note 1
if result.Count != 1:
raise BadError
else:
ent = System.DirectoryServices.DirectoryEntry(result[0].Properties["distinguishedName"][0])
ent.Username = admin # note 2
ent.Password = pwd
ent.Invoke("SetPassword", Array[object](["newpassword!"]))
ent.Properties["LockOutTime"].Value = 0
ent.CommitChanges()备注:
哦,你的帐户锁定门槛很高。我建议3-5,取决于你的用户的能力。
https://stackoverflow.com/questions/11677306
复制相似问题