密码复杂度策略
➡️ 配置 iTop 用户密码的复杂度要求
管理员可配置密码复杂度策略,确保用户使用安全的密码。
默认策略
创建新的本地用户账号或更改本地用户密码时,iTop 会应用密码策略,通过正则表达式检查密码复杂度。
默认情况下,密码必须满足:
- 至少包含一个小写字母
- 至少包含一个大写字母
- 至少包含一个数字
- 至少包含一个特殊字符
- 长度超过 8 个字符
其他注意事项:
- 现有密码不受影响
- 安装期间创建的 admin 账号不受影响
- 所有更改密码的方式均受影响,但 CSV 导入和数据同步除外(已知限制)
- 管理员无法绕过策略,但可以修改策略配置
配置
默认设置不会显式出现在配置文件中,但格式如下:
$MyModuleSettings = array(
'authent-local' => array (
'password_validation.pattern' => '^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[^\da-zA-Z]).{8,}$',
),
);
禁用策略
如需禁用密码模式匹配策略,将正则表达式设为空字符串:
$MyModuleSettings = array(
'authent-local' => array(
'password_validation.pattern' => '',
),
);
自定义策略
如需应用自己的策略,只需编写相应的正则表达式。建议使用 regex101.com 测试正则表达式。
例如,强制密码长度在 6 到 15 个字符之间:
$MyModuleSettings = array(
'authent-local' => array(
'password_validation.pattern' => '.{6,15}',
'password_validation.message' => array(
'FR FR' => 'Le mot de passe doit faire en 6 et 15 caractères de long',
'EN US' => 'Password length must be between 6 and 15 characters',
),
),
);
设置密码验证提示信息时,可以使用翻译键 Error:UserLocalPasswordValidator:UserPasswordPolicyRegex/ValidationFailed,或使用配置键 password_validation.message:
- 配置键优先级高于翻译键
- 可以是字符串或按语言分类的数组
- 如果使用数组,
EN US条目将作为用户语言未找到时的回退
其他策略
可以通过扩展引入其他密码策略。
密码过期
LocalUser 类新增了两个原生字段:expiration 和 password_renewed_date。
password_renewed_date在密码更改时自动填充expiration标志允许定义过期规则
如需实现密码过期策略,请参考相关指南。
原文:https://www.itophub.io/wiki/page?id=3_2_0:admin:password-policy
Last modified: 2025/03/10 10:24 by127.0.0.1
版本:3_2_0/admin/password-policy.txt · Last modified: 2025/03/10 10:24 by 127.0.0.1