浏览器进程隔离与运维所有权
规划浏览器进程、工作负载边界、生命周期控制和运维访问,不把部署隔离误认为站点隔离实现。
BotBrowser Team
浏览器进程隔离首先是运维决策:哪个工作负载拥有进程、谁可以查看它、谁负责关闭它。BotBrowser 可以提供受控的浏览器 Profile 与上下文流程,但不能授予操作系统权限、批准容器策略或决定谁能访问主机。
要点
- 为每个浏览器进程和工作负载指定一个负责所有者。
- 需要独立崩溃、资源、权限或访问域时,使用独立进程或工作节点。
- 将关闭、排空、超时和替换定义为明确的生命周期状态。
- 以最小权限、时间限制和可审计理由审查运维访问。
- Chromium Site Isolation 说明浏览器安全边界;它不替代部署所有权。NIST SP 800-190 说明容器风险与控制,也不保证容器天然安全。
目录
BotBrowser 能力边界
BotBrowser 可以启动已批准的浏览器构建、挂载指定 Profile、创建受控上下文,并向所属自动化服务提供应用层生命周期事件。它可以帮助比较部署变更前后的会话配置,但不能隔离主机内核、执行容器运行时策略、撤销基础设施访问或证明远程服务接受了操作。这些决定仍由部署、安全和应用所有者负责。
浏览器可见的进程标签只是观察,不是操作系统所有权证明。上下文关闭是本地清理,也不是远程账户或服务端记录已删除的证明。
选择进程边界
先列出必须分开的故障域和访问域。经授权的上下文如果可以共享版本与主机,同时保持存储分配分离,共享浏览器可能足够。需要独立崩溃域、扩展集合、资源限制或运维访问时使用独立浏览器进程;需要文件系统、网络命名空间或主机策略边界时使用独立工作节点或容器。
| 边界 | 所有者 | 证据 | 升级对象 |
|---|---|---|---|
| 浏览器进程 | 浏览器服务 | 进程组、版本、租约 | 进程所有者 |
| 工作节点或容器 | 平台服务 | 工作负载 ID、镜像、限制 | 平台所有者 |
| 主机与网络 | 基础设施 | 主机、命名空间、策略版本 | 基础设施所有者 |
| 应用会话 | 产品所有者 | 作业 ID、结果、保留期 | 应用所有者 |
负责工作负载生命周期
一个服务应从创建到退役持续负责进程。使用 starting、ready、draining、closing、closed 和 reconciling 等状态,并为每个状态记录所有者与截止时间。租约绑定进程、工作负载、Profile 分配和服务身份。关闭超时后应隔离并由监督者替换,不要继续向所有权不明的进程分配工作。
关闭时只记录进程组、版本、时间、退出状态、资源压力和清理结果。凭据、页面内容和 Profile 数据不应进入普通日志。若策略要求新会话,替换进程应获得新分配,不应默默继承不确定状态。
审查运维访问
区分服务所有权与人工访问。操作员只获得处理已声明事件所需的最小读写范围,并带有审批、过期时间和审计记录。优先使用只读指标;紧急访问应少用、有时限、有记录并自动撤销。访问浏览器进程不等于获准查看账户或修改目标服务。
结论
可靠的进程边界需要明确所有者、工作负载、生命周期和访问路径。BotBrowser 负责让浏览器侧分配可重复;平台与应用所有者仍负责主机隔离、容器策略、远程授权和数据保留。浏览器版本、镜像、工作负载或访问策略变化后,应重新检查边界。