Property List Key

NSAllowsArbitraryLoads

A Boolean value indicating whether App Transport Security restrictions are disabled for all network connections.

Details

Name
Allow Arbitrary Loads
Type
boolean

Attributes

Default: NO

Discussion

Set this key’s value to YES to disable App Transport Security (ATS) restrictions for all domains not specified in the NSExceptionDomains dictionary. Domains you specify in that dictionary aren’t affected by this key’s value.

Disabling ATS means that unsecured HTTP connections are allowed. HTTPS connections are also allowed, and are still subject to default server trust evaluation, as described in Ensure the Network Server Meets Minimum Requirements. However, extended security checks—like requiring a minimum Transport Layer Security (TLS) protocol version—are disabled. Without ATS, you’re also free to loosen the default server trust requirements, as described in Performing Manual Server Trust Authentication.

In iOS 10 and later and macOS 10.12 and later, the value of the NSAllowsArbitraryLoads key is ignored—and the default value of NO used instead—if any of the following keys are present in your app’s Information Property List file:

For more information about how the OS version affects ATS behavior, see Versioning.

See Also

Global Exceptions

property list key NSAllowsArbitraryLoadsForMedia

A Boolean value indicating whether all App Transport Security restrictions are disabled for requests made using the AV Foundation framework.

property list key NSAllowsArbitraryLoadsInWebContent

A Boolean value indicating whether all App Transport Security restrictions are disabled for requests made from web views.

Name: Allow Arbitrary Loads in Web Content
property list key NSAllowsLocalNetworking

A Boolean value indicating whether to allow loading of local resources.