fix(saas): 修复安全审查发现的 Critical/High/Medium 问题

- Critical: 移除注册接口的 role 字段,固定为 "user" 防止权限提升
- High: 生产环境未配置 cors_origins 时拒绝启动而非默认全开放
- Medium: 增强 SSRF 防护 — 阻止 IPv6 映射地址、私有 IP 网段、十进制 IP 格式
This commit is contained in:
iven
2026-03-27 13:09:59 +08:00
parent 94bf387aee
commit 900430d93e
4 changed files with 69 additions and 9 deletions

View File

@@ -36,7 +36,7 @@ pub async fn register(
let password_hash = hash_password(&req.password)?;
let account_id = uuid::Uuid::new_v4().to_string();
let role = req.role.unwrap_or_else(|| "user".into());
let role = "user".to_string(); // 注册固定为普通用户,角色由管理员分配
let display_name = req.display_name.unwrap_or_default();
let now = chrono::Utc::now().to_rfc3339();

View File

@@ -24,7 +24,6 @@ pub struct RegisterRequest {
pub email: String,
pub password: String,
pub display_name: Option<String>,
pub role: Option<String>,
}
/// 公开账号信息 (无敏感数据)