如何允许来自一个不安全URL的HTTP请求但如何禁止所有其他HTTP请求。应用传输安全设置

时间:2018-07-25 12:09:41

标签: ios encryption

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <false/>
    <key>NSExceptionDomains</key>
    <dict>
        <key>NSExceptionAllowsInsecureHTTPLoads</key>
        <true/>
        <key>appname-dev.domain.org</key>
        <dict>
            <key>NSExceptionRequiresForwardSecrecy</key>
            <false/>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
            <true/>
        </dict>
    </dict>
</dict>
</plist>

我正在尝试使appname-dev.domain.org正常工作,但除非拥有https,否则appname.staging.domain.org无法正常工作。

以上工作可以吗?我无法真正测试,因为我们有https后端,一个是供开发人员使用的,它不是http,另一个是供https使用的。因此,该应用会因为允许所有http非安全请求而被苹果拒绝。但是,它确实允许使用appname-dev.domain.org,但我不确定它是否不允许使用appname-staging.domain.org

唯一的非http请求必须来自appname-dev.domain.org,其他所有请求均必须被阻止。

1 个答案:

答案 0 :(得分:0)

我非常确定,如果允许的域为appname-dev.domain.org作为不安全的HTTP流量的唯一域,则appname.staging.domain.org如果不安全就不会起作用。

如果您添加了一些非安全流量域,Apple将不会拒绝您的应用程序。