Yunling Zhang
|
b3c7f04c2b
|
feat(auth): 管理端新增 AUTH_MODE=builtin|sso,默认 builtin 行为不变
- internal/auth/mode.go:Mode 解析/归一化,X-Auth-User 头常量
- server:adminAuth 按模式鉴权,sso 只认网关注入的 X-Auth-User(缺失 401 JSON)
- 新增公开 /api/admin/mode 供前端识别模式;sso 下 login/logout 返回 404
- main:读取 AUTH_MODE,sso 时跳过自带口令并打印启动提示
- 测试覆盖两种模式、伪造 header 不绕过、数据面不受影响
|
2026-09-29 13:43:57 +08:00 |
|
Yunling Zhang
|
5417c747aa
|
fix(server): 不存在的账号返回 401 而非 404,避免泄漏账号存在性
未知账号与未认证/停用账号统一返回 401 + WWW-Authenticate。
新增 account_test.go 验证带/不带凭据均为 401。
|
2026-09-28 17:38:16 +08:00 |
|
Yunling Zhang
|
df5bff9b3c
|
feat(server): 装配 WebDAV 与 admin/client API
- /<账号>/ chroot 隔离 + Basic 认证(401 带 WWW-Authenticate)+ 只读 403 + 路径逃逸 400
- admin API:登录/列表/新建/换口令/局部更新/删除(保留目录)/连接信息
- client API:登录/列表/上传/下载(Range)/新建文件夹/重命名/删除
- go:embed 内嵌前端,SPA 路由 / 与 /admin
- 修正 .gitignore 中误伤 cmd/davbox 的规则
|
2026-09-28 16:52:49 +08:00 |
|