Skip to content

权限、限流与审计

管理员权限

第一个注册用户自动成为管理员。后续用户默认是普通用户,通常需要邀请码注册。

备份中心、用户管理、邀请码等管理功能会检查:

text
role === "admin" && status === "active"

禁用用户即使 token 仍未过期,也会在认证后被拒绝。

限流

限流由 src/services/ratelimit.tssrc/config/limits.ts 控制。重要限制包括:

场景默认值
公开接口60 次/分钟/IP
公开只读接口120 次/分钟/IP
敏感公开/认证接口30 次/分钟/IP
认证 API200 次/分钟/用户
注册接口5 次/分钟/IP
refresh token30 次/分钟/IP
密码提示1 次/分钟/IP,3 次/小时/IP
登录失败锁定10 次失败后锁定 2 分钟

登录失败记录保存在 login_attempts_ip,会低频清理过期记录。

大请求限制

普通 JSON API 默认最大 25 MiB。文件上传路径例外,例如:

  • 附件上传
  • Send 文件上传
  • 备份导入

文件大小另外由附件/Send 限制控制。

审计日志

审计日志保存在 audit_logs 表。当前会记录:

  • 首个管理员注册
  • 邀请注册
  • 密码变更
  • 备份设置更新
  • 手动/定时远程备份成功或失败
  • 实例备份导出
  • 实例备份导入
  • 远程备份删除

当前实例备份不会导出审计日志。审计日志更偏运行痕迹,不是密码库核心数据。

Released under the LGPL-3.0 License.