【发布时间】:2017-03-02 12:55:09
【问题描述】:
我正在开发一个应用程序,用户可以在其中输入我的应用程序可以连接的任意 URL。目标服务器可以是 http 或 https。我在应用程序 info.plist 中添加了以下值。
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
由于上述配置,http 调用和安全服务器工作正常,即使缺少任何安全服务器要求,即 TLS1.2、前向保密等。
我想确保我的安全服务器满足 iOS 文档中提到的所有要求,即 TLS1.2、前向保密,如果我的安全服务器上缺少任何内容,我的请求将失败。如果我的服务器未正确配置 SSL 要求(TLS1.2,前向保密),我已使用以下配置并且请求失败。
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<false/>
</dict>
使用上述配置后,我无法连接 http 服务器。如果安全服务器配置不正确,有什么方法可以连接 http 服务器并请求失败。
注意:我的应用可以连接到用户输入的任何服务器。我不能使用 NSExceptionDomains 配置来指定服务器。
【问题讨论】:
标签: ios app-transport-security