苹果APP接入HTTPS延迟截止时间是妥协吗

妥协?

时间临近2017年1月1日,对于其他开发者来说,这是再普通不过的元旦。然而对于我等iOS小民而言,怕要彻夜难眠了。跟领导说:“老大,元旦之后,苹果不让“裸奔”了”,领导总是一副不屑的眼神:“等等看,车到山前自有路,总会有办法的”。

好打脸,这下好了,12月21日,苹果发文,苹果APP接入HTTPS截止日期延迟,具体日期待定......

好吧!领导,您是对的!

[链接地址:Supporting App Transport Security](https://developer.apple.com/news/?id=12212016b)

看到这则消息,很多人都在为还能继续“裸奔”而欢呼雀跃,自欺欺人的以为这是苹果妥协的结果,事实真的如此吗?对于这种观点,我只能送你一句,别高兴太早,人家只是告诉你:“小子,这次我们是要玩真的”

强制使用ATS是不是苹果过于激进,那以后上线版本是不是必须要买证书啦,也不见得,其实iOS依旧可以使用HTTP,只是我们上线的时候,要做出合理解释而已。擦边球还是可以打一下的,我们可以在info.plist中,将服务端host:xxx.com添加到Exception Domains中,分别设置(可悲的是擦边球只能iOS10+):╮(╯_╰)╭

NSIncludesSubdomains: YES;                               // 含义是子域名是否适用
NSExceptionAllowsInsecureHTTPLoads: YES;   // 是否允许不安全HTTP负载
NSExceptionRequiresForwardSecrecy: NO;       // 是否适用前置加密

或者
NSIncludesSubdomains: YES;
NSThirdPartyExceptionAllowsInsecureHTTPLoads: YES; // 是否允许第三方不安全HTTP负载
NSThirdPartyExceptionRequiresForwardSecrecy: NO;    // 第三方是否适用前置加密
info.plist

即,将域名xxx.com避开ATS验证,依旧支持HTTP,不过我们需要解释说明,可以说需要访问的域名是第三方的,他们不支持HTTPS,不过如果访问的是自己的服务器的话,这个理由有点悬iOS喵神[2]不过为稳妥起见,我们还是尽快适配HTTPS为好。

info.plist code:
<key>NSExceptionDomains</key>
<dict>
    <key>xxx.com</key>
    <dict>
        <key>NSIncludesSubdomains</key>
        <true/>
        <key> NSExceptionAllowsInsecureHTTPLoads </key>
        <true/>
        <key> NSExceptionRequiresForwardSecrecy </key>
        <false/>
    </dict>
    ......
    <key>weibo.cn</key>
    <dict>
        <key>NSExceptionMinimumTLSVersion</key>
        <string>TLSv1.0</string>
        <key>NSIncludesSubdomains</key>
        <true/>
        <key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
        <false/>
    </dict>
</dict>

参考:
【1】 苹果ATS(强制HTTPS)审核新政解码
【2】关于 iOS 10 中 ATS 的问题

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 因为要结局swift3.0中引用snapKit的问题,看到一篇介绍Xcode8,swift3变化的文章,觉得很详细...
    uniapp阅读 10,135评论 0 12
  • 很可能你的应用是与一个支持HTTPS传输数据的服务器交互,但是并没有使用TLS 1.2或更高。在这种情况下,你定义...
    Www刘阅读 8,347评论 0 5
  • 1、@ echo on :关闭本次回显。2、@ echo off :关闭本次回显。3、@ 命令 ...
    星星之火666阅读 1,607评论 0 0
  • 向地平线奔跑的世界 请停下脚步 看看春雨里洗过的太阳 听听你不知道的事 还有读一首诗给你 面朝大海春暖花开 这不公...
    老爷爷不是我阅读 1,459评论 0 3
  • 文/柯临 01 朋友刚进入新团队没几天,一个外包的妹纸跑过来问她:“你是合同制员工吗?” 朋友有些尴尬:“是哦”。...
    临公子的后花园阅读 3,828评论 2 3

友情链接更多精彩内容