Morfiade
简体中文
试用

为什么普通 Chrome 的会话不能再迁移了

Morfiade 是一款 Windows 上的 Google Chrome 配置文件管理器。每个账号都在自己的配置文件里,拥有独立的 Cookie 和代理,始终保持登录,切换账号只需点一下。

一个熟悉的场景:换了新电脑,或者重装了 Windows——于是所有网站都要求你重新登录。几十个服务,邮箱和手机验证,这个忘了密码,那个连接收验证码的邮箱都进不去了。以前这个问题靠复制配置文件夹就能解决。现在不行了,而且这不是你的错。

发生了什么变化

从 Chrome 127 开始,浏览器用一种新方式加密 cookies——也就是所谓的 App-Bound Encryption。只有 Chrome 本身能解密它们,而且只能在文件最初所在的那台电脑上解密。把配置文件夹复制到另一台电脑,里面的 cookies 就会变成无法读取的垃圾数据;只要一启动,Chrome 就会把它们当作损坏数据清理掉。文件大小都还在,但登录状态全没了。

这么做是为了对付那些盗取会话的程序。带来的副作用是,普通用户也没法再靠简单复制把自己的登录状态带到新电脑上了。

Google 同步解决不了这个问题

合乎逻辑的做法是登录 Google 账号,让同步功能把一切都拉过来。它确实会拉过来一部分:书签、历史记录、密码。但不包括 cookies。 同步功能根本不会迁移网站会话——这本来就不是它的功能。所以在新机器上登录账号之后,你会拿回书签,但仍然要在每个网站上手动重新登录一遍。

很容易验证:在新电脑上登录 Google 账号,打开任何一个你在旧电脑上登录过的网站——它会要求你登录。书签已经到位了,会话却没有。

能做些什么

关键在于你在哪里登录网站。Chrome 用新方式加密的那些 cookies,是没法带走的。但从一开始就是在独立配置文件里创建的 cookies——可以带走:它们以可读的形式迁移,而不是作为一个加密文件。

Morfiade 正是这样工作的。每个账号都生活在自己独立的沙盒配置文件里,当你在这样的配置文件内部登录某个网站时,这个会话就变得可以迁移:

区别很简单:普通 Chrome 里的会话你已经带不走了,而通过 Morfiade 创建的会话却可以,因为它从一开始就存放在一个允许迁移的地方。

实际操作是什么样的

  1. 在 Morfiade 中新建一个配置文件,在里面登录你需要的网站——正常登录一次即可。
  2. 导出配置文件——程序会把配置文件、cookies、代理和你的备注打包成一个文件。里面的 cookies 保存方式能确保在任何一台电脑上都能打开。
  3. 把文件移到另一台电脑上,执行导入——配置文件连同会话一起恢复。打开网站,你已经是登录状态了。

存储和分发都是本地进行的:文件留在你手里,而不是别人的服务器上,整个过程也不依赖第三方云服务是否可用。

密码和登录信息怎么办

这里一切都取决于一个问题:它们存放在哪里——是在浏览器本身,还是在 Google 账号里。这决定了它们能不能一起迁移。

我们迁移 cookies 的方式让它们能在任何机器上打开——但 Chrome 是用绑定 Windows 账户的密钥来加密密码的。所以你没法简单地把密码文件复制到另一台电脑上:那里没有任何东西能解密它。这既适用于直接保存在浏览器里的密码,也适用于存在 Google 账号里的密码。对于它们,有一条单独的、可靠的路径——导出为文件。

无论如何要迁移密码的办法

Chrome 有自己的文件迁移方式,而且正好是在账号已登录的地方生效:

在旧电脑上。 打开 chrome://password-manager/settings → "导出密码"。Chrome 会要求你确认 Windows 登录——这是正常的,是它自身的一层保护。

在新电脑上。 打开同一个地址 → "导入密码" → 选择文件。

一个不错的附带结果:导入之后,这些密码会变成本地的。之后它们会自己跟着配置文件一起迁移,你不需要再重复这个过程。

⚠️ 导出的文件里包含你所有的密码,且是明文形式。 导入完成后请立即 删除该文件,不要把它留在"下载"文件夹里。

我们特意不替你完成这一步,也不要求你把密码交给我们信任:这个文件 应该经过你自己的手,并且不应该出现在其他任何地方。这个程序运行在 你自己的电脑上,而密码是我们有意识地完全不去触碰的唯一东西。

第二把锁,几乎没人写过它

加密只是一半的限制。另一半限制出现在 Chrome 136 中:当使用默认配置文件夹时,浏览器不再响应 --remote-debugging-port 和 --remote-debugging-pipe 启动参数。现在,调试通道只有配合指向单独文件夹的 --user-data-dir 时才被允许使用。

Google 为什么这么做?因为通过调试通道,只需一条命令就能直接导出配置里的所有 Cookie——包括页面脚本根本接触不到的那些。在新的加密机制封堵了直接读取文件之后,人们便开始用这种方式来抓取 Session,于是这扇门紧跟着也被关上了。

在实际使用中这意味着:任何外部程序——无论是读取配置文件还是带参数启动 Chrome——都无法从你日常使用的 Chrome 中获取 Session。 这不是程序做不到,而是浏览器根本不给。

“那自己动手不行吗?”

可以,而且不用一个一个地处理 Cookie。上述两个锁定机制是为了防止 通过外部程序 获取会话:无论是通过磁盘上的文件还是调试密钥。但是浏览器自身能看到的 Cookie 也可以手动导出——使用来自官方 Chrome Web Store 的 Cookie 管理扩展,例如 Cookie-Editor。它在已运行的 Chrome 内部工作,使用的是你自己在安装时确认的常规 cookies 权限——而不是通过磁盘上的文件或调试通道。因此,这两个锁定机制对它完全不起作用。

迁移流程:

  1. 将 Cookie-Editor 安装到你普通的 Chrome 中,在其窗口中点击 ⋮ → “See All Options”,并在“All Cookies”部分选择“Export All Cookies → As JSON”:所有网站的 Cookie 会立即复制到剪贴板(可能不会出现“Done!”窗口,页面也可能向下滚动——这都是正常现象)。扩展程序窗口本身的导出按钮在这里不适用:它只会导出当前打开网站的 Cookie。旁边有一个“Delete All”按钮——它会删除所有的浏览器 Cookie,请不要点击。打开记事本,粘贴 Cookie (Ctrl+V) 并将文件保存为以 .json 结尾的名称,例如 cookies.json。
  2. 在 Morfiade 中 选中该配置文件(或创建一个新配置)并点击“导入 Cookie”——程序无需任何修改即可理解 Cookie-Editor 的格式:我们已经在普通 Chrome 的实际导出中验证了这一点:包含数百个网站的数千个 Cookie,登录状态依然有效。在导入前,程序会显示在文件中找到了多少 Cookie 以及涉及多少个域名,如果无法理解格式——它会直接告诉你,而不是保持沉默。
  3. 之后,该配置文件就能在不同电脑之间正常迁移——如上所述,通过 Morfiade 的配置文件导出和导入功能即可。

⚠️ 包含 Cookie 的文件里有你所有账号的有效登录状态。导入后,请将其及扩展程序本身删除,且不要发送给任何人。

将数据导回普通 Chrome 也是可以的——例如,在重装 Windows 后的新电脑上——而且这不需要扩展程序。当 Morfiade 中的配置文件准备就绪(包含书签、扩展程序以及由扩展程序带过来的 Cookie),“Chrome 设置”窗口中的“替换 Chrome”按钮会将普通的 Chrome 变为该配置文件,里面的会话也会恢复原样:配置文件会连同加密密钥整个迁移过去,因此 Cookie 是可以被读取的。Chrome 原有的内容不会被删除,而是被搁置在旁边的备份文件夹中。在另一台电脑上,首先通过 Morfiade 的导出和导入功能迁移配置文件,然后再执行相同的操作。

我们不建议通过扩展程序导回数据:它会以自己的方式解析其他程序生成的文件,在此过程中,Cookie 的存活时间或作用域可能无法保留。

⚠️ 替换之后,配置文件将存放在普通的 Chrome 文件夹中,那里新的登录状态再次受到更强的保护——你无法再通过简单复制把它们带回来。因此,请提前使用 Morfiade 的配置文件导出功能进行备份。另外,在浏览器未运行时,不要去替换 Chrome 的 Cookie 数据库文件本身:在下次启动时,它可能会将该文件视为已损坏并将其清除——连同那里已有的会话一起清除。

通过扩展程序迁移的方式仍有其局限性:

那么,这个产品的意义何在?扩展程序解决的是一次性的迁移,而 Morfiade 负责的是迁移之后发生的事情。配置文件从一开始就存放在自己的文件夹中,然后作为一个单一文件与所有其他数据一起迁移,对于后续步骤,就再也不需要扩展程序了。

诚实的边界

为了不产生不切实际的期望:

简而言之

Chrome 是有意关闭了会话迁移的通道,Google 同步也不会迁移会话——这一点是没法改变的。但如果你通过 Morfiade 登录网站,会话依然属于你,而且可以迁移:可以在电脑之间迁移,可以在重装系统后保留,也可以同时用在多台机器上。不是"别再用 Chrome 了",而是别再一遍遍地重新登录了。