Files
infstellar 996fb44a2a docs(runtime): document identity migration and rollback
Document service-account setup, storage initialization, migration checks, and rollback constraints.

补充服务账户配置、存储初始化、迁移校验和回滚限制说明。
2026-08-17 17:35:16 +08:00

1.5 KiB

1. 部署身份与镜像默认值

  • 1.1 在 start.sh 中解析、校验并导出非 root 运行时 UID/GID;保持显式部署配置可覆盖自动值。
  • 1.2 调整 API 与 Agent 镜像,使其在非 Compose 场景也默认以非 root 用户运行,并将 Agent 可写 home 迁入受控 runtime volume。
  • 1.3 在 Compose 中要求运行时 UID/GID,使用其运行 API 与 Agent,并声明所需 volume 初始化依赖。

2. 受控存储初始化与运行时检查

  • 2.1 实现仅处理显式挂载根的初始化程序:校验身份、拒绝不安全节点、创建目录并归一化所有权和 0700/0600 权限。
  • 2.2 添加一次性初始化服务,限制其挂载范围和权限,并确保 API 与 Agent 只在其成功后启动。
  • 2.3 在设置与 BlobStore 初始化路径中加入非符号链接和运行身份访问权限的 fail-closed 检查,保持上传与恢复流程的权限契约。

3. 迁移、测试与文档

  • 3.1 为历史图片权限归一化添加测试,验证普通图片字节摘要不变,符号链接、特殊节点和多链接文件被拒绝。
  • 3.2 为启动入口与 Compose 配置添加测试,覆盖自动 UID/GID、显式覆盖、root/非法值拒绝和缺少变量时的失败。
  • 3.3 添加 Compose 集成验证:以非 1003 身份启动、上传图片、从 Agent 身份通过只读挂载打开图片,并验证 Agent 未以 root 运行。
  • 3.4 更新部署与故障排查文档,说明服务账户、直接 Compose 所需变量、迁移行为与回滚限制。