# 安全与合规

---
DDS-Section: 12. 安全与合规
DDS-Lines: L930-L944
---

## 传输安全

| 要求 | 实现 |
|:---|:---|
| 密码加密 | RSA-OAEP(SHA-256, 2048) |
| 禁止明文 | 登录密码必须加密传输 |

## 存储安全

| 要求 | 实现 |
|:---|:---|
| 密码哈希 | bcrypt，默认成本因子 |
| RSA 私钥 | 仅存 DB，不下发前端 |
| 敏感字段 | json:"-" 标签，不外露 |

## 账户状态

| 状态 | JWT 校验 |
|:---|:---|
| active | ✅ 通过 |
| locked | ❌ 拒绝 |
| disabled | ❌ 拒绝 |

## 密码策略

| 策略 | 值 | 说明 |
|:---|:---|:---|
| 有效期 | 3 个月 | 修改/创建刷新过期时间 |
| 首次登录 | 强制改密 | must_change_password = true |
| 注册状态 | disabled | 需审批激活 |

## 账户有效期

| 创建者 | 要求 |
|:---|:---|
| 非 SuperAdmin | 必须设置有效期 |
| SuperAdmin | 可设置永久 |

过期账户无法登录。

## Token 安全

| 配置 | 值 |
|:---|:---|
| 算法 | HS256 |
| 有效期 | 4h |
| 刷新 | 无，需重登 |
| 注销 | 无服务端注销 |

## 权限检查

| 规则 | 说明 |
|:---|:---|
| SuperAdmin | 全通 |
| Admin 限制 | 只能管理/授权 normal/third |
| 授权校验 | 授予者必须具备相应权限 |
| 谁注册谁管理 | 非 SuperAdmin 只能管理自己注册的用户 |

## TBD/TODO

| 功能 | 状态 |
|:---|:---|
| 登录失败锁定策略 | 未实现（字段存在） |
| Watchdog 权限检查 | 待补全 |
