如何在Appcelerator中设置App Transport Security

时间:2018-02-14 20:48:22

标签: titanium appcelerator titanium-mobile appcelerator-titanium nsapptransportsecurity

我正在尝试配置App Transport安全性,但我总是从安全扫描获得一个没有正确配置的响应。我正在使用适用于iOS的Appcelerator SDK 7.0.1。

扫描结果:

App Transport Security
App Transport Security (ATS), which is a networking security feature that ensures network connections employ the most secure protocols and ciphers, was found to be misconfigured.

NSAllowsArbitraryLoads set YES

这是我的tiapp.xml的一部分

<property name="ios.whitelist.appcelerator.com" type="bool">false</property>
<ios>
    <enable-launch-screen-storyboard>true</enable-launch-screen-storyboard>
    <use-app-thinning>true</use-app-thinning>
    <plist>
        <dict>
            <key>UISupportedInterfaceOrientations~iphone</key>
            <array>
                <string>UIInterfaceOrientationPortrait</string>
            </array>
            <key>UISupportedInterfaceOrientations~ipad</key>
            <array>
                <string>UIInterfaceOrientationPortrait</string>
                <string>UIInterfaceOrientationPortraitUpsideDown</string>
            </array>
            <key>UIRequiresPersistentWiFi</key>
            <false/>
            <key>UIPrerenderedIcon</key>
            <false/>
            <key>UIStatusBarHidden</key>
            <false/>
            <key>UIStatusBarStyle</key>
            <string>UIStatusBarStyleDefault</string>
            <key>NSAppTransportSecurity</key>
            <dict>
                <key>NSAllowsArbitraryLoads</key>
                <true/>
            </dict>
        </dict>
    </plist>
</ios>

按照文档中的说明完成: http://docs.appcelerator.com/platform/latest/#!/api/Titanium.Network

我做错了什么?在此先感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

我们需要将NSAllowsArbitraryLoads密钥设置为NO才能启用ATS并摆脱安全警告。

我认为文档有误。我已经在github上提交了一份CR,以更新文档页面。

答案 1 :(得分:1)

NSAllowsArbitraryLoads设置为true 禁用,这意味着将允许所有URL,并且未配置任何限制。这是在Titanium中默认配置的方式,以确保向后兼容升级到较新SDK版本的应用程序。可以覆盖它以指定允许的域(列入白名单)或通过禁用NSAllowsArbitraryLoads

文档仍然如Nirman所指出的那样是不正确的,所以我只是updated them(因为我找不到前面提到的请求请求)。