如何强制 Chrome 保存自签名或损坏的 SSL 上的密码?

如何强制 Chrome 保存自签名或损坏的 SSL 上的密码?

我一直在寻找一种方法来做到这一点,但从来没有找到一个好的答案,尽管过去曾创建过票证(#142818&#405549)。

显然,Chromium 开发人员从未创建过chrome://flags使用密码保存功能覆盖“损坏的” SSL。这似乎是修复这个烦人的“功能”的最简单方法(通过标志)。我完全理解他们为什么默认阻止它。

据我所知,由于没有覆盖,我假设您需要将给定的自签名证书导入 (Windows) 存储中的受信任根区域。这似乎也不起作用。

有人能让它工作吗?我可以忍受警告 - 只是不能保存密码。我大部分工作时间都在开发环境中度过,每天需要重新输入密码数十次(复制/粘贴)。

编辑(2023 年 2 月 20 日)
请注意,一旦您通过警告/豁免站点页面,Firefox 就会保存并提供密码。这个问题严格针对 Chrome。据我所知,仍然没有办法允许类似于 Firefox 的这种做法(通过标记或豁免站点“列表”)。

答案1

在今天之前我并不知道这个选项,但看起来 Chrome 确实有一个允许来自localhost源的不安全证书的标志。此选项可从以下页面获得chrome://flags/#allow-insecure-localhost

截屏

这只会帮助您在原点上使用自签名证书localhost,我还没有测试它是否真的能解决您的密码管理器问题,但它看起来很有希望。

答案2

或者,您可以使用命令行开关启动 Chrome --unsafely-treat-insecure-origin-as-secure="http://example.com",或者转到chrome://flags/#unsafely-treat-insecure-origin-as-secure并输入不安全的来源,例如http://example.com

答案3

导航chrome://flags/#allow-insecure-localhost

然后点击“启用”。

请极其警惕,这是一个重大的安全漏洞。

编辑:由于 Chrome 不再允许超链接到 Chrome 协议,因此链接到 chrome://flags/ 不再有效,因为出于对协议超链接中使用 url 编码的安全性考虑。某些 url 编码字符串会导致旧版本的 Chrome 崩溃。他们没有修复此问题,而是完全取消了超链接选项。因此,只需通过复制和粘贴链接导航到该位置即可。

答案4

这些都不适合我,我最终遵循了以下 powershell 答案的组合这里还添加了-NotAfter标志,略作修改,使用从评论中复制和粘贴,而不是导出证书。一旦我为正确的域完成了所有这些工作,chrome 就不会再说证书无效,并提示保存密码。

为您的特定域创建新证书:

以管理员身份打开 Powershell ISE,运行以下命令:

New-SelfSignedCertificate -DnsName *.mydomain.com, localhost -CertStoreLocation cert:\LocalMachine\My

要信任新证书:

  • 打开 mmc.exe
  • 转到控制台根目录 -> 证书(本地计算机) -> 个人
  • 选择您创建的证书,复制
  • 转到控制台根目录 -> 证书 -> 受信任的根证书颁发机构,粘贴

要将证书绑定到您的站点:

  • 打开 IIS 管理器
  • 选择您的站点并在右侧窗格中选择“编辑站点”->“绑定”
  • 使用正确的主机名和新证书添加新的 https 绑定

相关内容