Chrome 106中受信任根存储的Windows自签名证书无效问题
可能的原因及解决办法
1. Chrome独立证书存储与Windows系统存储不同步
Chrome 88及以上版本默认启用独立证书存储,不再完全依赖Windows系统的证书存储体系。即便证书已导入Windows受信任根,Chrome可能未同步识别该证书的信任状态。
- 解决办法:
- 打开Chrome,进入
设置 > 隐私和安全 > 安全 > 管理证书 - 切换到
受信任的根证书颁发机构标签页,点击导入 - 选择从Windows证书管理器导出的自签名证书(.cer格式),按向导完成导入
- 打开Chrome,进入
2. 证书缺少SSL/TLS服务器所需的密钥用法
早期使用New-SelfSignedCertificate生成的证书,若未明确指定密钥用法或增强型密钥用法(EKU),Chrome 106的合规性校验会判定证书无效。
- 解决办法:
重新生成符合要求的证书,执行以下PowerShell命令(替换yourdomain.local为项目实际域名/localhost):
生成后,将证书从New-SelfSignedCertificate -DnsName "yourdomain.local", "localhost" ` -CertStoreLocation "Cert:\LocalMachine\My" ` -KeyUsage DigitalSignature, KeyEncipherment ` -Type SSLServerAuthentication ` -NotAfter (Get-Date).AddYears(2)个人存储区导出为.pfx或.cer格式,再导入到受信任的根证书颁发机构存储区。
3. 证书缺少主体备用名称(SAN)
Chrome 58及以上版本强制要求HTTPS证书包含SAN字段,仅依赖通用名称(CN)的证书会被标记为无效。若你的旧证书未配置SAN,即使有效期未到也会失效。
- 解决办法:
重新生成证书时,通过-DnsName参数指定所有项目使用的域名/主机名(如上述命令中的yourdomain.local和localhost),确保SAN字段覆盖所有访问场景。
4. 系统时间异常
若本地系统时间被误设置为超出证书有效期的范围(比如设为2025年),Chrome会判定证书已过期。
- 解决办法:
检查Windows系统时间,确保与当前实际时间一致,开启自动同步时间功能。
5. 证书在系统存储中被移除或标记为不信任
系统更新、安全软件操作或误操作可能导致证书从受信任根存储区被删除,或被标记为不信任状态。
- 解决办法:
- 打开
mmc,添加证书管理单元,选择计算机账户 - 检查
受信任的根证书颁发机构 > 证书中是否存在目标自签名证书 - 若不存在,重新从
个人 > 证书中导出证书并导入到受信任根存储区;若存在但状态异常,右键证书选择属性,确保启用所有用途选项被勾选。
- 打开
内容的提问来源于stack exchange,提问作者Mat Butler
相关产品推荐
相关产品推荐

