Isoline 指南
浏览器配置文件隔离:究竟隔离了什么?
配置文件隔离可以分开浏览器状态、减少账号混用,但不会自动分隔设备、网络、下载文件或每个进程。
“独立配置文件”听起来很明确,直到真实工作开始依赖它。有的产品指的是不同文件夹,有的则还加入进程管理、按配置文件设置的网络策略、加密、锁定、备份和团队权限。单凭名称,不能保证具备这些边界中的任何特定组合。
因此,实际要问的是:与什么隔离,防范哪种故障或哪类行为者,又有什么证据?
容易混淆的四种边界
| 边界 | 隔离什么 | 不能证明什么 |
|---|---|---|
| Web 源 | 一个网站可由脚本读取的存储,与其他源分开 | 不能分开同一配置文件中同一网站的两次登录 |
| 浏览器配置文件 | 与某个配置文件关联的一组浏览器状态 | 不能防止可访问同一操作系统账号的其他人读取 |
| 网站隔离与沙箱 | 将不同网站的网页内容放在受限的渲染进程中 | 不代表每个配置文件都有独立浏览器安装或网络栈 |
| 操作系统账号、容器或虚拟机 | 在系统边界处分隔文件、进程、凭证,有时还包括网络策略 | 未经配置,不会自动分开浏览器内的账号 |
这些层次解决不同问题。同源规则阻止一个源的普通脚本读取其他源的存储。Chromium 的网站隔离安全模型在网站之间增加带沙箱的渲染进程边界。浏览器配置文件归集某个人或某种工作流的浏览器状态。操作系统账号或虚拟机,则处理更强的本地对手或主机隔离问题。
不能拿某一层的宣称,作为另一层的证据。
持久化浏览器配置文件通常分开什么
Chromium 文档说明,用户数据目录包含历史记录、书签、Cookie 等配置文件数据,而每个配置文件都是用户数据目录中的一个子目录。Chrome 配置文件指南也说明,配置文件可以分开书签、历史记录、密码和设置。
对于持久化工作配置文件,预期的状态边界通常包括:
| 状态 | 分隔的实际效果 |
|---|---|
| Cookie 与身份验证状态 | 在配置文件 A 登录服务,不应通过同一个 Cookie 存储区让 B 也登录 |
| 本地存储与网站数据库 | 网页应用在本地保留的状态属于创建它的配置文件 |
| HTTP 缓存与 Cache Storage | 可复用响应与离线应用数据通常不会进入另一配置文件 |
| 历史记录、书签与已打开会话状态 | 导航记录与已保存目标仍关联预期工作流 |
| 网站权限 | 摄像头、麦克风、通知、位置等决定可以按配置文件不同 |
| 扩展程序及其状态 | 已安装扩展、设置与获准访问范围可以按配置文件管理 |
| 密码与自动填充状态 | 本地保留的凭证和表单数据留在所选配置文件,但仍受启用的账号同步影响 |
实际存储位置因平台而异。Chromium 文档指出,缓存路径可能由配置文件路径推导,再存放于操作系统的缓存位置,而不是配置文件旁边。文档还区分了配置文件数据,以及用户数据目录中其他按安装实例保存的本地状态。因此,可信的隔离设计应跟踪所有归属路径,并说明共享的安装状态,不能把一个看得见的文件夹当作全部边界。
目录边界仍需要生命周期控制
只有每次启动都收到正确路径,独立数据路径才能避免意外重用状态。Chromium 也指出,两个正在运行的 Chrome 实例不能安全共用一个用户数据目录。受管理的配置文件系统应明确生命周期规则:
- 为每个配置文件分配唯一存储根目录。
- 阻止两个写入者打开同一份持久化状态。
- 识别哪些进程属于本次启动。
- 将这些进程作为一个生命周期整体停止或恢复。
- 备份或迁移前完成写入。
- 下次启动前检测上次是否未完整关闭。
缺少这些控制,即使“文件夹不同”,也可能启动错配置文件、留下失效锁、复制不完整,或在中断后损坏数据。
配置文件不会自动隔离什么
本地访问
Chrome 提醒,能访问设备的人可以切换到其他 Chrome 配置文件,并查看访问过的网站等信息。官方建议只与信任的人共用设备。普通配置文件选择器用于组织可信使用者,不能防范使用同一操作系统账号的其他人。
如果风险包括好奇或恶意的本地人员,应使用独立操作系统账号、设备控制,或更强的运行边界。配置文件加密与解锁策略能减少静态数据暴露,但仍需审查设计、密钥存储、恢复路径,以及解锁后的行为。
浏览器程序与更新路径
多个配置文件可以位于同一个 Chromium 用户数据目录下,通常依赖同一套已安装浏览器及更新程序。分开配置文件状态,不会产生独立的安全补丁机制。
共享组件可能有好处,因为维护一个浏览器更容易保持更新一致;但过时或被入侵的浏览器版本,也会影响所有使用它的配置文件。浏览器更新时效、签名验证和安全回退,都应纳入隔离评估。
网络身份
新建配置文件本身不会改变公网 IP、DNS 路径、本地网络或上游代理。同一设备上的配置文件通常使用同一路由,除非浏览器、扩展、操作系统策略或管理工具进行了不同配置。
如果工作要求每个配置文件使用独立代理,验证范围不能只限于已填写的地址。应测试身份验证、DNS 处理、WebSocket 和其他协议行为、失败后的回退,以及代理就绪前会发生什么。即使存储的代理设置正确,失败后放行直连的行为也可能破坏网络边界。
设备与环境特征
配置文件可以具有不同 Cookie 和设置,同时仍暴露同一浏览器、操作系统、硬件、显示设备、语言配置与网络的特征。W3C 将指纹识别描述为通过可观察特征重新识别,并在指纹识别指南中列出请求头、IP 地址、窗口大小、字体、连接设备、性能、传感器与图形渲染等潜在输入。
配置文件分隔可以避免状态被重用,但不能让设备无法识别、保证指纹不同,或保证获得任何第三方服务的访问权。
配置文件之外的文件
下载内容通常离开浏览器所属存储,进入普通用户文件夹。Chrome 的数据删除文档明确说明:清除下载记录不会删除已下载文件。
上传则带来反方向的风险。多个配置文件的文件选择器可能访问同一主机文件系统。剪贴板、拖放数据、打印输出、截图与操作系统通知,也可能跨越配置文件边界,除非外围产品或操作系统加以限制。
选择并记录下载策略,例如每个配置文件使用专属目录、临时工作目录、显式导出,或更强的容器边界。合适方案取决于目标是避免误操作、保护机密,还是隔离彼此不信任的工作。
云端账号与同步
磁盘上分开的浏览器状态,仍可能经启用的同步服务复制。密码、书签、设置或历史记录出现在其他地方,可能是因为配置文件连接到会同步该类别的账号。例如,Chrome 允许已登录用户选择哪些配置文件信息保存到 Google 账号。
把同步视为另一道信任边界。记录上传什么、如何加密、谁能授权新设备、删除如何传播,以及恢复时会不会混入错误配置文件的状态。
网站隔离是另一种安全控制
在支持的平台上,Chromium 网站隔离会将不同网站的页面放入不同的沙箱渲染进程,降低某网站渲染进程被攻破后获取其他网站敏感数据的可能性。
这项保护在浏览器会话内部运作,不能回答两个工作配置文件是否有独立数据根目录、明确生命周期归属、不同代理、独立备份或不同团队权限。反过来,产品即使创建了不同数据目录,仍可能依赖浏览器普通的网站沙箱防范恶意网页内容。
两种控制都重要,应分别描述和测试。
持久化配置文件、无痕会话,还是一次性配置文件?
Chrome 无痕模式在私密会话打开期间暂存 Cookie 与网站数据,会话结束后不再保留这些网站数据或访问记录。Google 也说明,无痕模式不会改变访问的网站及其服务收集数据的方式。
因此,无痕模式适合在可信设备上进行短时会话;需要固定扩展程序、可恢复状态、指定负责人或受控交接时,它不能很好地替代长期工作配置文件。
受管理的一次性配置文件,可以把临时状态策略与明确的启动、网络及清理控制结合,但删除仍需证据。管理工具应验证属于配置文件的路径和凭证已移除,并明确指出为稽核或法律原因保留在配置文件之外的文件或记录。
恢复也是隔离的一部分
恢复和启动一样可能破坏隔离。运行中复制配置文件,可能得到新旧数据库状态混杂的副本。恢复到错误标识,可能合并两种工作流。用旧浏览器打开新浏览器写入的数据,也可能产生兼容问题;Chromium 对此有明确的用户数据降级与兼容规则。
恢复设计应证明:
- 备份属于一个不可变的配置文件身份。
- 快照在生命周期的一致状态点创建。
- 机密在封存包及恢复过程中受到保护。
- 浏览器版本与恢复状态兼容。
- 恢复不会隐式合并到已有配置文件。
- 中断后能回到最后已知正常的状态。
缓存通常可重新生成;书签、用户在本地创建的数据、凭证、扩展状态与稽核元数据则未必如此。恢复策略应区分它们。
一次实用的隔离测试
假设获授权的 QA 团队测试同一网页应用中的两个租户。租户 A 与 B 必须保持独立。
团队可为每个配置文件记录一组小型测试:
- 在 A 中登录、设置偏好、授予网站权限,并建立离线应用状态。
- 在 B 中打开同一源,确认不存在 A 的登录与本地状态。
- 为 B 设置预期网络路由,在输入凭证前验证普通请求与失败行为。
- 从每个配置文件下载无害标记文件,确认文件出现在哪里、谁能读取。
- 中断一次启动,重新打开,验证没有状态转移到另一配置文件。
- 将 A 备份并恢复到新的测试标识下,确认 B 没有变化。
这些是在测试可观察行为。两扇不同颜色窗口的截图,不能代替测试。
依赖隔离之前要问的问题
- 哪些具体数据类别归配置文件所有?
- 主目录之外是否还有状态或缓存路径?
- 两次启动能否写入同一配置文件,如何阻止?
- 哪些浏览器进程或服务共享?
- 首个请求之前是否已绑定网络策略,失败时会不会阻断连接?
- 下载、上传、剪贴板和通知在哪里跨越边界?
- 谁能解锁、导出、复制、恢复或删除配置文件?
- 加密密钥如何存储与恢复?
- 同步会不会跨配置文件或设备合并状态?
- 有哪些当机、升级、备份和回退证据?
根据实际风险作选择
如果主要目标是在可信人员控制的设备上整理工作、分开账号,普通浏览器配置文件即可。当启动错配置文件、并发写入、网络失误、恢复失败或团队交接带来重大风险时,应要求受管理的隔离配置文件系统。如果威胁包括其他本地用户、不可信原生代码,或需要更强主机边界,则应考虑操作系统账号、容器或虚拟机。
“隔离”只是起点。真正需要评估的是有文档支持的边界、失败时的行为,以及边界能经受日常使用的证据。
适用限制
浏览器与操作系统行为会随时间、平台、策略、扩展程序和产品实现而变化。以上类别是评估框架,不代表每个配置文件管理器都分隔相同数据。请测试计划使用的确切浏览器版本、设备、网络、扩展、身份识别提供者与恢复流程。
关于本指南
- AI 辅助
- 本文由 AI 根据英文原文翻译。Isoline 对发布内容负责。目前尚无人工语言审核记录。
来源
来源支持下列主题。访问日期说明引用材料最近何时经过核查。
- Chromium 文档:用户数据目录 Chromium project
- 支持的主题
- 配置文件子目录、按安装实例保存的状态、不同平台的缓存路径,以及并发使用用户数据目录的限制。
- 访问日期
- Chromium 文档:用户数据存储 Chromium project
- 支持的主题
- 具有版本差异的 Chromium 配置文件数据的向前迁移,以及降级时功能受损的行为。
- 访问日期
- Google Chrome 帮助:使用多个配置文件管理 Chrome Google Chrome Help
- 支持的主题
- Chrome 配置文件的数据分隔,以及设备使用者可以切换到其他本地配置文件的提醒。
- 访问日期
- Google Chrome 帮助:在所有设备上使用书签、密码等信息 Google Chrome Help
- 支持的主题
- 用户选定的 Chrome 数据类别可以保存到 Google 账号,并在其他设备上使用。
- 访问日期
- Chromium 安全:网站隔离 Chromium project
- 支持的主题
- 网站隔离的渲染进程与沙箱边界,以及它们与配置文件分隔的区别。
- 访问日期
- Google Chrome 帮助:删除 Chrome 浏览数据 Google Chrome Help
- 支持的主题
- 不同的浏览数据类别,以及清除下载记录不会删除已下载文件。
- 访问日期
- Google Chrome 帮助:使用无痕模式浏览 Google Chrome Help
- 支持的主题
- 无痕模式的数据保留限制,以及访问的网站及其服务仍可观察活动。
- 访问日期
- W3C:在 Web 规范中减轻浏览器指纹识别 World Wide Web Consortium
- 支持的主题
- 可观察的指纹信息来源,以及将清除存储状态视为身份重置的局限。
- 访问日期