fix: 设计原则审查修复 — DIP/ISP, LoD, DRY, OCP, URL, 301缓存
- P0 DIP+ISP: 全链路注入接口,消除零接口紧耦合 - P0 URL: auth 301→302,修复登出后浏览器缓存陷阱 - P1 DRY: JWT 认证逻辑收敛至 TokenService+中间件 - P2 DRY: 前后端角色/状态映射统一为 model 常量 - P2 LoD: 新增 SettingsController,router 不再跨层调 repo - P2 URL: settings ?tab= → /settings/:tab 伪静态 - P3 OCP: 角色权限 map 化,告别硬编码 switch
This commit is contained in:
25
config.yaml
25
config.yaml
@ -3,13 +3,13 @@
|
||||
|
||||
server:
|
||||
port: 8080
|
||||
mode: debug # debug | release | test
|
||||
mode: debug # debug | release | test
|
||||
|
||||
database:
|
||||
host: 127.0.0.1
|
||||
port: 5432
|
||||
user: metazone
|
||||
password: "" # 敏感值由 .env 注入
|
||||
password: "" # 敏感值由 .env 注入
|
||||
dbname: metalab_dev
|
||||
sslmode: disable
|
||||
|
||||
@ -21,3 +21,24 @@ jwt:
|
||||
|
||||
bcrypt:
|
||||
cost: 12
|
||||
|
||||
# 角色配置(可扩展,无需修改源代码)
|
||||
roles:
|
||||
# 角色层级(数字越大权限越高)
|
||||
levels:
|
||||
user: 0
|
||||
moderator: 1
|
||||
admin: 2
|
||||
owner: 3
|
||||
# 角色显示名称
|
||||
names:
|
||||
user: "普通用户"
|
||||
moderator: "版主"
|
||||
admin: "管理员"
|
||||
owner: "站长"
|
||||
# 角色权限规则
|
||||
permissions:
|
||||
# 可操作的目标角色(未在此列出的角色默认可操作所有角色)
|
||||
operable_roles:
|
||||
admin: ["user"]
|
||||
moderator: ["user"]
|
||||
|
||||
Reference in New Issue
Block a user