Search code examples
sslios9tls1.2

iOS 9 - NSAllowsArbitraryLoads scope


I'm not well-versed on SSL / TLS / server certificates nor on iOS but I want to confirm a few things regarding iOS 9 and NSAllowsArbitraryLoads flag.

  1. On iOS 9, is the minimum version required TLS1.2?

  2. Is setting NSAllowsArbitraryLoads to YES bypassed security checks?

  3. If it is set to YES and I load a webpage or call an API on a server which certificate is invalid / expired, will there be a handshake error or will it proceed due to the set flag?
  4. If this flag is to be removed, what are the needed actions to make devices running on iOS 9 work fine?

Solution

  • Reading the iOS documentation for NSAppTransportSecurity answered the questions I've asked. Here's the link: https://developer.apple.com/library/ios/documentation/General/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html#//apple_ref/doc/uid/TP40009251-SW33