Skip to content

Release v1.1.8

Latest

Choose a tag to compare

@oiov oiov released this 06 Oct 10:47
· 7 commits to main since this release

本版本完善自部署初始化与管理员安全,并修复手机端后台横向溢出。

主要更新

  • 不再提供可直接使用的默认管理员。升级时停用仍使用原始密码的 admin@admin.com,保留已修改密码的管理员及全部业务数据。
  • 管理员由部署者通过 BOOTSTRAP_ADMIN_EMAIL / BOOTSTRAP_ADMIN_PASSWORD 显式初始化,Docker 启动和 Vercel 构建自动执行;已有可用管理员时重复执行不会新增账号。
  • 移除 /api/setup 的首位用户提权逻辑,停用或删除用户后撤销已有会话。
  • 校验 AUTH_SECRET,移除弱默认值;Docker 构建排除本地 .env 等文件。
  • 修复旧 /setup 被当作短链接的问题,以及手机端后台内容超出屏幕宽度的问题。
  • 包含 v1.1.7 后已合入的依赖安全更新,以及 amd64 / arm64 Docker 镜像发布流程。

升级前必读

  1. 确保 AUTH_SECRET 是至少 32 字节的独立随机值,可用 openssl rand -base64 32 生成。已有强密钥可继续使用;更换密钥会使现有登录失效。
  2. 若仍在使用原始默认管理员且没有其他可用管理员,升级前设置 BOOTSTRAP_ADMIN_EMAIL(自己的邮箱,不能是 admin@admin.com)和 BOOTSTRAP_ADMIN_PASSWORD(至少 16 位,含至少 8 种不同字符)。初始化邮箱若已属于其他用户,会报错而不会自动提权。
  3. 新管理员创建成功后,从部署环境移除 BOOTSTRAP_ADMIN_PASSWORD。本地源码部署请在迁移数据库后运行 pnpm bootstrap-admin。
  4. 初始化配置缺失或密钥过弱时,启动/部署会明确报错,不会回退到默认账号。

验证

  • 管理员初始化与会话撤销测试:9 项通过。
  • TypeScript 检查、生产构建、本地 Docker 镜像构建与容器启动通过。
  • 隔离 PostgreSQL:18 个迁移通过,验证初始化、重复执行及默认账号停用。
  • Chromium:新管理员登录、管理员/普通用户的旧 setup 跳转、拒绝默认密码、账号停用后撤销会话、普通用户不能访问管理 API。
  • 桌面 1440×1000 和手机 390×844 截图检查;手机横向溢出已修复。

Docker 镜像由版本 tag 的 GitHub Actions 工作流 发布;请等待对应构建完成后再拉取 ghcr.io/oiov/wr.do/wrdo:v1.1.8。

English

This release hardens self-hosted administrator setup, revokes sessions for disabled/deleted users, and fixes mobile dashboard overflow. Deployments must use a random AUTH_SECRET of at least 32 bytes. If there is no active administrator, configure BOOTSTRAP_ADMIN_EMAIL and a unique BOOTSTRAP_ADMIN_PASSWORD of at least 16 characters with 8 distinct characters before upgrading. The original default account is disabled only when its bundled password is unchanged. Existing data and administrators with changed passwords are preserved. Remove the bootstrap password after setup.

Full Changelog: v1.1.7...v1.1.8