如何设置密码复杂度策略以约束MongoDB用户的密码强度

张开发
2026/4/20 0:07:45 15 分钟阅读

分享文章

如何设置密码复杂度策略以约束MongoDB用户的密码强度
启用 pwdPolicy 前必须开启 --auth 或 security.authorization: enabled否则策略被忽略setSecuritySettings 仅对新用户或手动改密生效仅 minLength 和 characterClassCount 有效其他字段未实现。启用 pwdPolicy 前必须开启访问控制不启动 --auth 或未在配置文件中设置 security.authorization: enabledMongoDB 会直接忽略所有密码策略配置连日志都不会报错——看起来配置生效了实际形同虚设。启动时加参数mongod --auth --config /etc/mongod.conf配置文件里必须有security: { authorization: enabled }改完配置要重启服务mongod 不支持热加载策略setSecuritySettings 只对新用户生效旧用户密码不强制重置执行 db.adminCommand({ setSecuritySettings: { pwdPolicy: { ... } } }) 后已存在的用户比如 admin 或 myapp仍可用弱密码登录策略只约束后续创建或修改密码的操作。新建用户自动受控db.createUser({ user: alice, pwd: 123, roles: [...] }) 会直接报错 errmsg: Password does not meet the minimum complexity requirements已有用户需手动改密db.changeUserPassword(alice, NewPass2024) 才触发校验不支持批量刷新旧用户密码得一个一个调 changeUserPassword密码策略参数不是全都能配minLength 和 characterClassCount 是唯二真正起作用的字段MongoDB 从 4.0 开始支持 pwdPolicy但文档里写的 maxConsecutiveCharacters、maxRepetitions 等字段目前v6.0/v7.0压根没实现设了也白设源码里是 // TODO: implement 状态。 通义听悟 阿里云通义听悟是聚焦音视频内容的工作学习AI助手依托大模型帮助用户记录、整理和分析音视频内容体验用大模型做音视频笔记、整理会议记录。

更多文章