提问人:Hugo_vdms 提问时间:7/24/2023 最后编辑:Hugo_vdms 更新时间:7/27/2023 访问量:295
NET::ERR_CERT_INVALID google 和 windows 证书存储
NET::ERR_CERT_INVALID google and windows certificate store
问:
我正在使用 C# 的 .NET 4.8 应用程序上,此应用程序在 localhost 用户上生成一个网页,并且我也在使用 , .X509Store
X509Certificate2
我在谷歌上生成的存储证书有一个非常未知的情况和行为,这里如何重现它:
我先打开谷歌浏览器(重要)
我打开多个选项卡:x 2、x 2、x 2(它们都会抛出
NET::ERR_CERT_INVALID
这是正常的,因为还没有存储证书)。https://localhost/
https://127.0.0.1/
https://192.168.0.12/
我生成一个允许这些 SAN(主机的 IP 地址)的基本证书:、、......
localhost
127.0.0.1
192.168.0.12
我将其存储在 with the (它可以是使用
X509KeyStorageFlags.MachineKeySet
的StoreLocation.LocalMachine
,它不会影响结果)。StoreLocation.CurrentUser
X509KeyStorageFlags.UserKeySet
然后我回到谷歌上,刷新其中一个选项卡(它可以是任何一个):
- -> 刷新的第一个选项卡将 ALLWAYS 抛出一个
NET::ERR_CERT_INVALID
,您可以无限刷新,它将 Allways 抛出它(它可以是任何一个,它只需要是生成证书后刷新的第一个)。 - -> 刷新后的所有其他选项卡都可以正常工作(即使它与第一个抛出错误的 URL 相同,第二个选项卡也可以工作)。
解决方案:(我关闭并打开谷歌浏览器,所有 SANs URL 在调用时都可以完美运行,即使是第一个选项卡)。
我的问题:我无法关闭谷歌浏览器(这是必要的),我也无法在证书生成后运行谷歌,因为谷歌已经打开,我需要随时重写证书。
这就是为什么我需要帮助来理解和确定为什么会发生这种行为,以及我是否可以控制它并可能修补它?(我真的希望这不是谷歌浏览器的行为)。
答: 暂无答案
评论