如何在 iOS ATS 配置中为所有域启用证书透明度检查?

问题描述 投票:0回答:2

默认情况下,iOS 不会对 HTTPS 连接强制实施证书透明度。

自 iOS 10 起,Apple 引入了新的 ATS 配置密钥 NSRequiresCertificateTransparency。默认情况下这是NO,如果开发人员想要启用CT检查,他可以将其设置为YES。 但是,此密钥存在于“NSExceptionDomains”级别,并且仅适用于列为例外域的特定域。

有没有一种方法可以让操作系统对所有域强制执行 CT 检查,而无需手动将每个域列为例外域(从而忘记其中一些域)?

ios security app-transport-security certificate-transparency
2个回答
0
投票

这不是现在就能完成的事情。鉴于 Apple 使用这些键的历史,我认为目前所有域的此设置默认设置为“否”,因为许多域当前不支持它。

我的猜测(目前纯粹是我的猜测)是,随着服务器端支持的增长,Apple 可能会为所有 URL 添加对此的支持,但例外情况将更改为仅适用于不支持证书透明度的 URL 。

此时,主要是为了验证您的核心服务器证书没有受到损害。我只需添加支持它的已知服务器并将它们包含在

NSExceptionDomains
列表中。然而,我发现有些人在 iOS 9 设备上遇到了问题,其中的
NSExceptionDomains
条目仅包含证书透明度(iOS 9 无法识别)。确保您在进行这些更改后测试是否支持 iOS 9。


0
投票
© www.soinside.com 2019 - 2024. All rights reserved.