feat: 密码强度多级校验 — low/medium/high/very_high

- site_settings 新增 password.strength 配置项
- 四级:low(len>=8) / medium(两类) / high(三类+无连续) / very_high(四类+无连续)
- 连续字符检查:重复/升序/降序/键盘水平/键盘垂直序列
- 注册和改密接口统一读取配置
- 前端 register.js 动态校验 + 管理后台安全设置区
This commit is contained in:
2026-06-22 00:54:21 +08:00
parent e9b7401dc9
commit 9a496d3055
8 changed files with 225 additions and 11 deletions

View File

@ -165,6 +165,28 @@
</div>
</div>
<!-- 安全设置 -->
<div class="settings-section">
<div class="section-title">安全设置</div>
<div class="section-body">
<div class="setting-item">
<div class="setting-info">
<span class="setting-label">密码强度</span>
<span class="setting-desc">注册和修改密码时的最低强度要求</span>
</div>
<div class="setting-input-wrap">
<select id="setting-password-strength" class="setting-select" data-key="password.strength">
<option value="low">低 — 仅要求 8 位</option>
<option value="medium" selected>中 — 字母+数字/符号(两类)</option>
<option value="high">高 — 大小写+数字+符号(至少三类)+ 禁止连续字符</option>
<option value="very_high">极高 — 四类全有 + 禁止连续字符</option>
</select>
<button class="btn btn-sm btn-primary btn-save-select" data-key="password.strength" data-input="setting-password-strength">保存</button>
</div>
</div>
</div>
</div>
<!-- 注册设置 -->
<div class="settings-section">
<div class="section-title">注册设置</div>