倒计时10天,苹果iOS强制HTTPS迫在眉睫

zhuyds

zhuyds

发表于 2016-12-21 21:09:56

距离苹果iOS强制HTTPS只剩10天!10天后,苹果将关闭HTTP的大门,如果您的iOS APP还在使用HTTP明文连接,将无法通过App Store审核,影响应用上架!您还在使用 NSAllowsArbitraryLoads来关闭ATS功能?2017 年 1 月 1 日起,这招将行不通了,100%审核被拒。

1.什么是ATS?
ATS是iOS9和OS X ElCapitan的一个新特性,开启该功能后,ATS对使用NSURLConnection, CFURL 或NSURLSession 等 APIs 进行的网络请求,默认强制使用HTTPS加密传输,目标是提高Apple操作系统以及应用程序的安全性。

2.ATS和HTTPS什么关系?
启用ATS后,将屏蔽HTTP明文连接及不符合要求HTTPS连接。简单地说,ATS标准有点像PC端浏览器验证机制,用于规范iOS移动端与服务端网络连接的安全性。

3. HTTPS怎样才符合ATS要求?
ATS默认的安全要求:
•服务器必须支持传输层安全(TLS)协议1.2以上版本;
•通讯加密套件仅限支持完全正向加密的套件;
•证书必须使用SHA256或更高的哈希算法签名;以及2048位以上RSA密钥或256位以上ECC密钥。
不满足以上条件,ATS会拒绝连接。

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

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

5.如何启用HTTPS支持ATS?
选择合适的SSL证书、在APP服务端部署SSL证书、在iOS客户端适配ATS,简单三步即可让您的iOS APP启用HTTPS支持ATS要求。

如何选择SSL证书?各种版本服务器如何配置HTTPS支持ATS?CDN如何配置HTTPS证书?iOS客户端适配ATS要注意哪些问题?这些都是困扰开发者的难题。针对这个问题,LZ推荐一个“苹果iOS HTTPS专题页”(http://www.wosign.com/marketi...),汇总了最全服务器证书安装指南和iOS客户端适配教程。应该对开发者朋友们有所帮助。

特别提示:采用自签名证书(无效证书)实现HTTPS连接,直接访问会报错且极有可能无法通过App store审核,开发者慎用!

内容来源:https://segmentfault.com/a/1190000007873462

用户评论
开源开发学习小组列表