受信任的根证书不受信任

时间:2021-06-17 15:23:32

标签: macos ssl ssl-certificate keychain certificate-transparency

我有一个奇怪的问题,我不明白。我认为它以前可以工作,我确实怀疑我之前在 macbook air 上加载的 macos 有更新,但我想我会在这里问这个问题,看看是否有人有任何见解。

我正在开发一个在公司防火墙后面运行的 PWA 应用程序。结果是没有机会获得公共 ssl 证书,因为我无法向公众公开该站点。因此,我进行了自签名过程,我是否已经建立了一个受信任的证书颁发机构,然后由该颁发机构为应用程序签署 ssl 证书。缺点是它需要将我的自签名权限的密钥加载到浏览器的受信任存储中。

这一切在 Windows 和 iPad 上都运行良好,直到今天早上我才开始制作有关如何安装它的视频时,我还以为我可以在 MAC 上运行它。就在视频之前,我的 mac 宣布要升级其操作系统,所以我让它。我去了钥匙串访问并删除了证书颁发机构。然后我在钥匙链中安装了新的证书文件并运行了我的浏览器。 Safari 根本无法工作,Chrome 显示了不安全标记。当我点击它时,我得到了这个下拉菜单

Drop down from insecure warning in address bar

如你所见,它说证书无效,但如果你点击它,你会弹出这个对话框。

The resultant certificate

也就是说它是完全可信的。

所以我不知道出了什么问题。是上次发布后 mac 钥匙串中的错误还是我做错了什么?

编辑:我怀疑这与证书透明度日志有关,尽管我找不到太多信息,但其他 Apple 已经更改了他们的政策。公共证书必须提交到证书透明度日志,并且长期证书需要在不同日志中的多个条目。但是我几乎找不到关于自签名证书是否需要这个的信息。

通过使用开发者工具并在 Service Worker 中设置断点,我最终也让 Safari 工作起来。它在用于刷新离线缓存的后台获取中抛出错误(由于证书错误),但是错误太多(我的应用程序有 100 个小文件要下载),我没有等太久它来完成这个过程。当我这样做时,它给了一条消息,询问我是否要信任该站点。当我确认我这样做时,它更新了钥匙串,然后一直工作。

0 个答案:

没有答案