Firefox不会提示您输入客户端证书


  • Firefox 91.12.0
  • Windows 10 Enterprise for Virtual Desktops版本21H2内部版本19044.1766
  • Visual Studio 2022 V 17.1.6
  • C#
  • .NET Core 6.0
  • System.Security,Cryptography.OpenSsl 5.0.0 nuget包

我正在创建一个证书颁发机构,以编程方式生成客户端证书。CA(和中间CA(被导入到窗口中。我在IIS中创建了一个使用该证书的网站,它可以与所有三种浏览器(edge、chrome、firefox(配合使用。

我在IIS中创建了另一个需要客户端证书的网站,并使用CA应用程序生成了客户端证书。我用chrome导入了那个证书,我在MMC中看到了那个证书;证书-当前用户";在"个人"下->证书。Chrome和Edge都会提示输入证书,当我选择它时,它会授予我访问该网站的权限,我可以看到index.html的内容。

Firefox不会提示我输入证书。在Firefox高级偏好:

  • security.occlientcerts.autoload=true
  • security.enterprise_roots.enabled=true

我试图在Firefox中导入我的应用程序生成的PFX文件,它会提示我输入密码,但它会发出错误消息"PKCS#12操作由于未知原因而失败"。。。告诉我什么也没说。

在我的研究中,我看到了关于证书字段被编码为"0"的评论;可打印的字符串";而不是UTF8,但我找不到控制它的方法,甚至无法控制它。

那么我做错了什么?Firefox需要什么特别的东西却没有得到?

编辑:我之前提到的问题是,证书不包含PrintableStrings。我使用ASN.1解码器确认,我的证书实际上对证书中的所有内容都使用了PrintableStrings

问题是,当我生成证书时,它与CA的证书具有相同的序列号。我将编号更改为9,并重新启动Firefox,它提示我输入证书。

所以。。。来自同一CA的证书之间明显重复的序列号对Firefox来说是个问题。

最新更新