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

时间:2017-07-20 11:36:59

标签: ios security app-transport-security certificate-transparency

默认情况下,iOS不会为HTTPS连接强制执行证书透明度。

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

有没有办法让操作系统对所有域强制执行CT检查,而不是手动将每个域列为异常域(从而忘记其中的一些)?

1 个答案:

答案 0 :(得分:0)

这不是现在可以做的事情。鉴于Apple拥有这些密钥的历史记录,我认为目前此设置默认设置为NO,因为许多域目前都不支持。

我的猜测(此时我纯粹猜测)是随着服务器端支持的增长,Apple可能会为所有网址添加对此的支持,但例外情况则只更改为URL不支持证书透明度。

此时,它主要用于验证您的核心服务器证书是否已受到损害。我只想添加支持它的已知服务器并将它们包含在NSExceptionDomains列表中。但是,我看到有些人在iOS 9设备上遇到问题,NSExceptionDomains条目包含证书透明度(在iOS 9上无法识别)。确保在进行这些更改后是否支持您测试的iOS 9。