Commit Graph

14 Commits

Author SHA1 Message Date
gitadmin ba26ac97f5 feat: 用户管理 UI 全面统一 + LDAP 邮箱同步 + 角色/Key 页面对齐
- 新增用户详情页,支持编辑(状态切换/密码确认)、键盘导航
- Modal 增加 ESC/←→/Enter 键盘支持
- LDAP 邮箱三路径同步:密码登录、SSO 免登录、批量同步接口
- 角色权限页:删除改 Modal、按钮样式对齐
- API Key 页:副标题、状态切换、创建弹窗错误提示、成功提示颜色对齐
- 全站字体/颜色一致:text-sm、dark mode 补全
- TopBar 文字颜色对齐
2026-05-18 16:56:40 +08:00
gitadmin 4a97326955 docs: 添加 Git Tag 日期版本号规范 2026-05-18 14:58:32 +08:00
gitadmin 9364d56e00 fix: SSO 免登录和本地 JWT 路径现在也会更新 last_login_at
此前仅密码登录路径更新 last_login_at,导致通过 SSO 共享 JWT
或本地 JWT 访问系统的用户始终显示"从未登录"。
2026-05-18 14:49:12 +08:00
gitadmin 0a4dadc748 docs: 记录 docker-compose ALLOWED_API_KEYS 修复与 middleware Edge Runtime 修复 2026-05-15 15:21:38 +08:00
gitadmin 66dbd80587 fix: docker-compose 补全 ALLOWED_API_KEYS 环境变量
P2 部署后 middleware 需要 ALLOWED_API_KEYS 验证 API Key,但 docker-compose.yml
未将该变量传入容器,导致中间件返回 401,IP 查询再次失效。
2026-05-15 12:03:49 +08:00
gitadmin 3f3dfc1f19 fix: middleware 移除 better-sqlite3 依赖,修复 Edge Runtime 报错
middleware 运行在 Edge Runtime,不支持 Node.js 原生模块。
API Key 验证回归 ALLOWED_API_KEYS 环境变量检查,DB 验证由 route handler 负责。
2026-05-15 09:26:25 +08:00
gitadmin 69694d3fe9 docs: 记录 API Key 修复与中间件安全加固(v2026.05.14)
- [修复] api_keys 表补注册 issue-ai 使用的 API Key
- [优化] 中间件 API Key 验证统一为 ALLOWED_API_KEYS → DB 两级
2026-05-15 09:13:51 +08:00
gitadmin 5d841a56a6 fix: 内置角色旧权限迁移不生效 — 移除 builtin skip
迁移循环中 `if (builtinNames.has(r.name)) continue` 导致 editor/viewer
内置角色的旧 assets:write 权限永远不会被迁移。移除该限制,让权限迁移
对所有角色生效(admin 因持有 * 不受影响)。
2026-05-14 17:49:09 +08:00
gitadmin dbc7600a59 feat: 权限细粒度拆分 + 前端按钮权限控制 + 角色管理优化
- 权限拆分:assets:write → assets:create + assets:import + assets:update
- 旧 assets:write 自动迁移(自定义角色),editor 默认权限同步更新
- API 层:create/import/update/batch/template 路由改用独立权限检查
- 前端:资产列表页/详情页按钮由权限驱动显隐(导入/模板/新增/编辑/删除)
- 新增/导入/编辑页面增加权限守卫,无权限重定向到资产列表
- 角色管理页权限选择列表同步新增三个权限选项
- 修复模板按钮链接指向错误的 404 页面
- editor/viewer 角色可编辑权限,仅 admin 强制同步默认值
- 三个内置角色均不可删除
- 部署到 txjp 服务器 (assets.tlyq.ai)
2026-05-14 17:38:34 +08:00
gitadmin 747fe293d5 feat: SSO 集成 — 共享 JWT + LDAP 认证 + 跨站点用户管理 API
- 新增 src/lib/jwt.ts:共享 JWT 签发/验证(与 OA 共用密钥)
- 新增 src/lib/ldap.ts:LDAP 认证与用户存在性检查
- 新增 src/app/api/internal/roles/route.ts:内部 API 供 OA 查询角色
- 重构 auth.ts:双路径认证(共享 JWT + 本地 JWT 回退)
- 重构 middleware.ts:SSO 优先 + 本地认证回退
- 更新 docker-compose.yml:挂载 docker.sock 用于运行时 LLDAP 密码获取
- 更新 next.config.ts:serverExternalPackages 添加 ldapts
- 更新 Dockerfile:生产依赖安装优化
2026-05-14 16:37:49 +08:00
gitadmin c6a92ed33a feat: SSO双路径认证 + 端口修正 5177→6177
- 中间件支持 X-Remote-User (SSO) + JWT 双路径
- lib/auth.ts 新增 getSession() 统一会话获取
- 所有 API 路由改用 getSession(),支持 SSO header 回退
- 退出登录同时清除 SSO cookie
- 侧边栏根据角色显示/隐藏系统设置
- layout.tsx 支持 SSO 用户自动创建
- package.json 端口 5177→6177
- 跨站点引用 localhost 端口全部修正
2026-05-09 17:14:36 +08:00
gitadmin 3e7f94b014 feat: 添加 .dockerignore 减小 Docker 构建上下文
排除 node_modules、.next、data 等目录,解决 Build Cache 膨胀问题。
2026-05-08 12:56:03 +08:00
gitadmin 00b9e990f2 feat: 角色权限系统改造 + 导出权限细粒度拆分
- 角色页完全重写,支持新建/编辑角色,12个细粒度权限复选框
- 导出权限拆分为 assets:export:selected 和 assets:export:all
- 导出按钮显隐由权限驱动,选中设备后区分"导出选中"和"导出全部"
- 内置角色权限自动同步最新默认值,自定义角色旧权限自动迁移
- 用户管理页角色下拉改为 API 动态获取
- 设备详情页空字段区块自动隐藏
- API filter 参数增加字段白名单校验
- 导出文件名日期改为本地时间
2026-05-07 21:47:21 +08:00
gitadmin a4fe324efd chore: 初始化仓库 — 资产管理系统 2026-05-07 10:25:02 +08:00