应对苹果ATS标准,你需要知道的都在这里

背景

6月14日在WWDC 2016开发者大会上,苹果宣布了一个最后期限:2017年1月1日起,所有提交到 App Store 的应用强制开启ATS(App Transport Security)安全功能。启用ATS后,它会屏蔽明文HTTP资源加载,强制App通过HTTPS连接网络服务,通过传输加密保障用户数据安全。

ATS在 iOS 9 中默认开启,但开发者仍然可以选择使用 NSAllowsArbitraryLoads来关闭 ATS,继续通过HTTP连接传输数据。但从 2017 年 1 月 1 日起,这招将行不通了,所有提交到 App Store 的App必须强制开启 ATS,否则将无法通过App Store的审核,影响应用上架。

1月9日更新:苹果宣布暂时延长iOS强制ATS的最后期限,给开发者更多时间做好准备,还没有确认新的截止日期,随时可能再次执行强制ATS。建议开发者停止观望,在时间充裕的情况下,尽快完成HTTPS升级方案。

为什么强制使用HTTPS

简单地说,HTTP是明文协议,通过该协议传输的数据处在被窃听、篡改、冒充这三大风险中,已经是非常不安全的传输协议。HTTPS是加密协议,就是在HTTP的基础上开启一条SSL加密通道,让原本明文“裸奔”的数据,从加密通道中密文传输,保证了数据传输的安全性。

HTTPS和HTTP的区别

目前,全球互联网正在进行从HTTP到HTTPS的大迁移,苹果一向非常关注用户隐私安全,在执行安全策略方面,态度也是非常强硬,实施强制HTTPS加密势在必行。

苹果ATS安全设置的要求

ATS默认的安全要求:

不满足以上条件,ATS会拒绝连接。

苹果iOS APP配置HTTPS最全方案汇总