active-directory – 通过Domain Admin帐户或其他服务帐户重置Active Directory中的用户密码

在Active Directory中,您可以设置和实施用户必须使用强密码的规则,不能使用他们已有的最后5个密码,强制执行密码复杂性.有没有办法强制执行这样的设置,以便如果服务帐户(密码重置Web服务)尝试为用户设置新密码,它将根据策略进行检查并被接受或拒绝?

似乎由于服务帐户强制更改密码,用户可以通过Web界面输入相同的密码,并一遍又一遍地使用相同的密码.由于它是更改密码的服务帐户,因此不会根据最后已知的密码进行检查,因此不会强制执行密码规则

虽然程序员可以对复杂性进行编码检查,但是在Web界面上无法检查上次使用的密码检查,因为Web服务不具有最后密码的知识.

是否有可能强制它,以便服务帐户的密码更改也受到限制,就像正常的用户密码更改一样?

解决方法

在AD中,有两种类型的操作可以更改用户的密码 – 更改可以匿名执行,因为它需要旧密码作为请求的一部分,而重置则不需要旧密码,必须由有权访问的用户可以重置被定位帐户的密码.

在这种情况下,软件应用程序正在进行重置操作,而不知道用户的旧密码,但是在认证时可能是具有所需权限的服务帐户.

从AD的角度来看,密码正在被管理重置;在这种情况下,密码历史记录永远不会强制执行,因为执行重置的管理员不应该知道用户的旧密码 – 如果他们习惯将新密码设置为例如Thursday1,那么就不能满足重置操作的策略会很混乱.

虽然用户体验不佳,但我能想到的最好的机制是让Web应用程序重置密码(可能是他们没有输入的东西,只是生成的)然后设置“必须在下次登录时更改密码” “帐户上的标志强制用户立即执行密码更改操作,这将强制执行历史记录.

有一些讨论在.Net中使用LDAP API来实现在这种重置here上执行历史记录的目标,但我不确定这是否适合您,具体取决于您使用的应用程序;如果您控制代码和LDAP库,您正在使用支持控件,那么它应该是可行的.

相关文章

vue阻止冒泡事件 阻止点击事件的执行 <div @click=&a...
尝试过使用网友说的API接口获取 找到的都是失效了 暂时就使用...
后台我拿的数据是这样的格式: [ {id:1 , parentId: 0, name:...
JAVA下载文件防重复点击,防止多次下载请求,Cookie方式快速简...
Mip是什么意思以及作用有哪些