6

在 iOS 9 中启用 ATS 后,我的许多客户都无法满足前向保密要求。但是,它们可以满足 https 和 TLS 1.2 的要求。因此,我想放宽前向保密要求,同时保持 https 和 TLS 1.2 到位。

我想知道是否有人想出了一种方法来使用 NSExceptionRequiresForwardSecrecy 或 NSThirdPartyExceptionRequiresForwardSecrecy 来禁用所有域的前向保密。

我尝试将 * 用于 NSExceptionDomains 或 *.com,但是当我使用时,问题链接不起作用。当我使用它的 domain.com 时,问题链接将加载。我正在查看上面的Apple Docs,但没有看到任何方法可以实现我的目标。

是否可以仅禁用所有域的前向保密,就像您可以通过将 NSAppTransportSecurity/NSAllowsArbitraryLoads 设置为 true 来完全禁用 ATS 一样?

谢谢!

4

2 回答 2

5

对的,这是可能的。您可能至少有一个您肯定会连接到的域。如果不是这样,请尝试使用任何可靠的网站(google.com、facebook.com 等)。您应该通过以下方式指定配置NSExceptionDomains来为此域添加规则:NSAppTransportSecurity

<key>NSAppTransportSecurity</key>
    <dict>
        <key>NSExceptionDomains</key>
        <dict>
            <key>google.com</key>   
            <dict>
                <key>NSIncludesSubdomains</key>
                <true/>                
                <key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
                <false/>
            </dict>
        </dict>
    </dict>

仅供参考,facebook 应用程序使用相同的配置NSAppTransportSecurity

于 2016-02-11T05:09:56.313 回答
2

有可能,试试看。

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

即使您可以添加特定的例外,

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSExceptionDomains</key>
    <dict>
        <key>testdomain.com</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <false/>
            <key>NSExceptionAllowInsecureHTTPSLoads</key>
            <false/>
            <key>NSExceptionRequiresForwardSecrecy</key>
            <true/>
            <key>NSExceptionMinimumTLSVersion</key>
            <string>TLSv1.2</string>
            <key>NSThirdPartyExceptionAllowInsecureHTTPSLoads</key>
            <false/>
            <key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
            <true/>
            <key>NSThirdPartyExceptionMinimumTLSVersion</key>
            <string>TLSv1.2</string>
            <key>NSRequiresCertificateTransparency</key>
            <false/>
        </dict>

        ...

    </dict>
</dict>
于 2016-02-11T05:13:19.050 回答