必须通过域控制器的域名级GPO(如默认域策略)配置密码策略,路径为计算机配置→策略→Windows设置→安全设置→账户策略→密码策略;启用复杂性要求、设最长使用期限60天、最短使用期限1天、历史记录24次、最小长度12位;执行gpupdate /force并用gpresult验证生效。
要在windows域环境中强制全网终端用户定期修改密码并满足复杂度要求,核心是通过域控制器上的组策略对象(gpo)统一配置密码策略,并确保策略正确链接、生效和验证。
必须在“默认域策略”或域名级GPO中配置
密码策略属于域级别安全设置,仅在以下路径生效:
计算机配置 → 策略 → Windows 设置 → 安全设置 → 账户策略 → 密码策略
不能在OU级GPO、用户配置分支或本地组策略中设置——这些位置无法覆盖或触发域级密码校验逻辑。必须编辑“默认域策略”,或新建一个GPO并明确链接到域名根节点(如DC=contoso,DC=com),且确保未被阻止继承或被更高优先级GPO覆盖。
关键策略项配置要点
双击右侧策略项逐一设置:
- 密码必须符合复杂性要求:启用 —— 启用后密码需含大写字母、小写字母、数字、特殊符号四类中的至少三类;禁止包含用户名、全名、常见弱口令(如password、123456);自动将最小长度强制为8位(即使你设更低也无效)
- 密码最长使用期限:建议设为60天 —— 超期后用户登录时会强制提示修改;注意该策略不影响已勾选“密码永不过期”的账户,需单独清理AD用户属性中的对应选项
- 密码最短使用期限:设为1天 —— 防止用户当天改完立即换回旧密码,绕过历史记录限制
- 强制密码历史:建议设为24次 —— 用户无法重复使用最近24次用过的密码
- 最小密码长度:设为12位及以上 —— 启用复杂度后此项虽不主导下限(系统保底8位),但设为12可提升实际强度,且对未启用复杂度的兼容场景也起作用
策略刷新与生效验证
配置完成后需主动触发更新并确认落地:
- 在域控制器上以管理员身份运行:gpupdate /force
- 在任意域成员机上同样执行gpupdate /force,确保客户端拉取最新策略
- 用gpresult /h report.html生成HTML报告,检查“密码策略”部分是否显示已应用的目标GPO
- 观察用户下次登录或按Ctrl+Alt+Del → 更改密码时的反馈:不符合复杂度或超期的密码会被实时拦截
常见失效原因排查
若用户仍能设简单密码或不提示过期,重点检查:
- 是否通过非标准方式改密(如PowerShell直接调用Set-ADAccountPassword、ldp.exe写unicodePwd)——这类操作绕过Windows密码筛选器(pwdfilt.dll)校验
- 目标用户是否被细粒度密码策略(FGPP)覆盖——FGPP优先级高于默认域策略
- 事件查看器中筛选Security日志的ID 4723(密码更改尝试)和4724(密码重置成功),比对调用方和结果状态
- 是否存在服务账户、内置Administrator等被排除在策略外的账户类型

















