如何在 Appcelerator 中设置 App Transport Security
How to set App Transport Security in Appcelerator
我正在尝试配置 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
我做错了什么?在此先感谢您的帮助。
我们需要将 NSAllowsArbitraryLoads 键设置为 NO 以启用 ATS 并消除安全警告。
我认为文档有误。我已经在 github 上提交了 CR 以更新文档页面。
将NSAllowsArbitraryLoads
设置为true
禁用 ATS,这意味着所有URL都将被允许并且没有配置限制。这就是它在 Titanium 中的默认配置方式,以确保应用程序升级到更新的 SDK 版本后向兼容。它可以被覆盖以指定允许的域(白名单)或通过禁用 NSAllowsArbitraryLoads
.
正如 Nirman 指出的那样,文档仍然不正确,所以我只是 updated them(因为我找不到前面提到的拉取请求)。
我正在尝试配置 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
我做错了什么?在此先感谢您的帮助。
我们需要将 NSAllowsArbitraryLoads 键设置为 NO 以启用 ATS 并消除安全警告。
我认为文档有误。我已经在 github 上提交了 CR 以更新文档页面。
将NSAllowsArbitraryLoads
设置为true
禁用 ATS,这意味着所有URL都将被允许并且没有配置限制。这就是它在 Titanium 中的默认配置方式,以确保应用程序升级到更新的 SDK 版本后向兼容。它可以被覆盖以指定允许的域(白名单)或通过禁用 NSAllowsArbitraryLoads
.
正如 Nirman 指出的那样,文档仍然不正确,所以我只是 updated them(因为我找不到前面提到的拉取请求)。