必须通过组策略配置密码策略参数才能强制执行高强度校验:启用“密码必须符合复杂性要求”、设最小长度为12位、最长有效期90天、最短有效期1天;命令行仅支持部分参数且无法启用复杂性校验。

要让Windows系统在用户修改开机登录密码时强制执行更高强度的校验规则,必须通过组策略精确配置密码策略参数,否则即使设置了账户密码,系统仍可能接受123456、password等弱密码。
用本地组策略编辑器启用并强化密码复杂度
此方法适用于Windows专业版、企业版或教育版,直接作用于本机所有本地用户账户,无需域环境支持。
第一步:按下 Win + R 组合键,输入 gpedit.msc,回车打开“本地组策略编辑器”。
第二步:在左侧依次展开:计算机配置 → Windows 设置 → 安全设置 → 账户策略 → 密码策略。
第三步:双击右侧“密码必须符合复杂性要求”,勾选【已启用】→ 点击“确定”。【该选项一旦启用,新设或重置的密码必须包含大写字母、小写字母、数字、特殊字符中至少三类】
第四步:双击“最小密码长度”,将数值改为 12(默认8位仅满足最低门槛,12位可显著提升暴力破解成本)→ 确定。
第五步:双击“密码最长使用期限”,设为 90 天→ 确定;再双击“密码最短使用期限”,设为 1 天→ 确定。后者防止用户改完立刻换回旧密码绕过历史记录。
用命令提示符快速配置基础密码策略
适合无图形界面环境或需批量部署的场景,但仅支持有限参数,且不启用复杂性校验。
Windows 命令行编码与兼容规范。涵盖 GBK/UTF-8 编码、PowerShell/pwsh 互操作、Python/Node.js、Git 配置及代码生成规则。适用于 Windows 10/11 + MSYS2/Git Bash 环境下的所有命令行操作。
方法一:以管理员身份运行命令提示符,执行以下命令:
net accounts /minpwlen:12 /maxpwage:90 /minpwage:1 /uniquepasswords:24
这条命令一次性设置最小长度、最长有效期、最短有效期和强制历史次数,但无法启用密码复杂性要求——这是该命令的固有缺陷,必须搭配组策略使用。
方法二:若需禁用复杂性校验(仅限测试或临时调试),可用secedit导出策略模板后手动修改再导入,但生产环境严禁这样做。
验证策略是否真正生效
策略配置完成后不会立即拦截旧密码,只约束后续所有新设/重置行为。
在登录界面按 Ctrl + Alt + Del → 选择“更改密码”,尝试输入一个仅含小写字母和数字的8位密码(如 abcdef12),系统会明确提示“密码不符合复杂性要求”。
若提示消失或弱密码仍能通过,说明策略未生效:【请检查当前系统是否已被域策略接管——此时本地gpedit.msc中对应选项呈灰色不可编辑,必须去域控制器上用gpmc.msc修改】
运行 gpresult /h report.html 生成策略应用报告,在浏览器中打开,确认“密码必须符合复杂性要求”值为“已启用”且来源是“本机策略”或你指定的GPO。










