请求签名、内容签名和服务器回执有不同的签名用途前缀。source=msg 只影响提示,不提高权限。请求数据不能构造 ExecutionContext / Principal。普通读取无业务副作用;纯路径 GET 写入必须使用显式 run 包、主体证明、请求 ID、摘要和短有效期。
根、在线 CA、回执和 HTTPS 私钥分开。@root 始终 local_only;HTTP、回环 HTTP、MCP、本站 SSH 与工具均不能代理根命令。根签发只能从 msgd cert issue 的本机控制台入口显示申请、确认摘要、无回显输入 PIN后执行。下级 CA 得到的是受限签发资格,不是 root 身份。
运行服务的账号不可读取 /etc/msgd/root/。该目录 root:root、0700,加密根私钥 0600;网络运行入口还会检查低权限账号和根目录访问性。根管理使用真实本机 VT/串行控制台,不接受 SSH 环境、任意 /dev/pts、环境变量 PIN、管道 PIN或 --yes。VPS 应使用提供商的串行控制台,而不是放松本机检查。
拥有宿主 root 或任意代码执行权限的人能改变进程、配置和数据库;应用中的本机边界不能抵御宿主已经被控制的情况。Python 对象释放也不是可靠内存擦除承诺。根签名进程只短时解锁,不维护长期解锁缓存。
一个资源只有一条安全父链;历史、稳定 ID、附件、搜索、RSS 和托管读取不获得额外权限。证书授权逐层受凭据上限、当前成员、scope、operation、有效期、签发链及授权来源约束。证书撤销后,不会继续使用缓存授权执行待提交写入。
Root 轮换是明确的信任更新,会使旧链失效。轮换日志只含加密密钥和公开材料,支持显式恢复。现有实例检测到 active_root_certificate 变化会要求重启。旧密钥遗失使用单独确认的 --lost-key 流程,不通过网络找回 PIN。
DNS / HTTP 工具只接受已注册 schema,不执行任意 shell。公网默认策略逐次解析并固定连接目标,每次重定向重新检查;私网权限需额外授权。策略取部署、工具、凭据与证书约束的交集。bubblewrap 缺失或不工作时拒绝执行,不降级为宿主进程。HTTP worker 不挂载应用数据、根材料、SMTP 凭据或用户 home。
工具已经执行但确认或本地提交失败时记录 uncertain。SMTP 开始 DATA 后的未知结果也不盲目重发;只对发送前的可确认连接失败退避重试。这个系统不承诺跨外部网络的 exactly-once。
SSH 只允许明确站内命令、签名 packet 与指定 Git 服务,拒绝通用 shell、PTY、转发、用户 rc、scp、SFTP 和 msgd 根代理。Git 引用准备提交时重新验证身份和权限,不只在开始上传时检查。
密钥库保存客户端密文。服务器只能检查封装形态,不能证明客户端实际加密了所有敏感信息。元数据名称可使用不含敏感信息的随机名。内置 msg-x25519-v1 不是 age/OpenPGP,外部格式由对应客户端处理。
用户网站必须使用与身份服务分离的来源,不共享 API Cookie;公开部署生成明确发布记录,不能仅凭共享底层字节读取私有来源。
归档不是擦除。purge 建立明确墓碑并触发物理回收;Git 孤儿对象受保护引用与回收宽限约束。已导出的备份、第三方缓存和其他 Agent 保存的副本不会被“彻底删除”自动追溯清除。
不要在公开 issue 中粘贴私钥、PIN、令牌或完整纯路径写 URL。先提供不含凭据的复现步骤、版本、错误码和受影响边界;涉及可利用漏洞时先由仓库维护者建立私下沟通渠道。本地日志默认不记录完整访问 URL 或证明。