我的电脑上安装了十几个 PKI 证书,用于测试 Web 应用程序。它们代表“用户”Andy Tester、Billy Tester、Cindy Tester 等。我经常需要测试应用程序的某些部分,这些部分需要多个用户对某件事发表评论,或者根据查看者的不同而有不同的行为。在这些情况下,如果能够可靠地更改证书,并且尽可能快速地更改,那就太好了。
我如何更改正在使用的 PKI 证书?目前,我发现完全退出 Firefox 3.6/4 是必要的,但并不总是足以让我选择新证书。(另一方面,在 IE7/8 中,退出似乎就足够了。)如果有多种方法,则最好使用更少的步骤/更简单的步骤。我看到的一些网站建议直接删除证书并重新添加,但这似乎太尴尬了,不可能是正确的。
答案1
您的证书和密钥保存在您的 Firefox 配置文件中。因此,最简单的解决方案是为 Andy、Billy 和 Cindy 设置多个配置文件。请参阅 mozillaZine 的命令行参数如何使用不同的配置文件启动 Firefox。更多信息可参见管理个人资料。
如果出于某种原因这不是一个可接受的解决方案,那么更麻烦的方法是使用一个配置文件,但切换证书/密钥文件,以便为 Andy、Billy 和 Cindy 提供单独的设置。这意味着退出 FF、复制文件并重新启动 FF 以更改身份(但一次只能使用一个身份)。
涉及的文件有:
- “key3.db”——密钥数据库
- “cert8.db”——客户端证书数据库
以下文件也可能有用:
- “secmod.db”——安全模块描述(?)
- “signons.txt”——已保存的密码(已弃用?)
答案2
隐私浏览模式
在隐私浏览模式下,私人会话与主会话是隔离的。两个会话都可以使用一组单独的客户端证书进行操作。
主会话将在整个过程期间使用所选证书。这在测试环境中是一个缺点。但是,可以生成私有会话并每次选择一个新证书。无需重新启动 Firefox 应用程序。
例如,您可以打开一个私人窗口 ( Ctrl+Shift+P
) 并选择“Andy Tester”证书。完成 Andy 的测试后,关闭私人窗口 ( Ctrl+Shift+W
)。重新打开私人窗口后,您可以选择其他证书,例如“Billy Tester”。
我发现这是在测试环境中切换客户端证书最快捷、最可靠的方法。不过,测试时使用“匿名”浏览器会话是个好主意。
此概念也与 Chrome 的隐身模式类似。