还有 3 天,苹果就要关上 HTTP 大门了

版权声明:本文由贺嘉 原创文章,转载请注明出处: 
文章原文链接:https://www.qcloud.com/community/article/274113001482113656

来源:腾云阁 https://www.qcloud.com/community

2017年1月1日以后,所有iOS需要访问网页的 App 都要面临一个问题:ATS(App Transport Security)。由于 ATS 要求 HTTPS 访问,换句话来说,还有 13 天,苹果就要对 APP 开发者们关闭 HTTP 的大门了。

1、什么是 ATS?

ATS 全称 App Transport Security,是 iOS 9 引入的一套安全机制,默认行为会强制保证所有的网络请求都使用 HTTPS。

2、绕过 ATS?

由于这样的要求影响非常广,苹果也是考虑到开发者的过渡问题,预留了一些绕过 ATS 的方法。比如,可以通过在 Info.plist 中添加 NSAppTransportSecurity 字典并且将 NSAllowsArbitraryLoads设置为 YES 来禁用 ATS。

但是到了 WWDC 16 后,苹果对 ATS 的推进力度加大,要求从 2017 年 1 月 1 日起,所有的新提交 app 默认是不允许使用 NSAllowsArbitraryLoads 来绕过 ATS 限制的。

虽然还有其他的一些方法,但是紧随苹果的脚步,采用 HTTPS 传输显然是更好、更安全的一个选择。绕过 ATS 协议并不是一个好的方案,苹果强推 ATS 的目的,也是在于防止意外泄露个人信息,并为应用程序提供默认安全行为。

3、启用 HTTPS

在 APP 的服务器上启用 HTTPS 协议其实并没有想象的那么复杂,只需要通过一些简单的步骤部署 SSL 证书即可完成。

HTTPS,是指超文本传输安全协议(Hypertext Transfer Protocol Secure),是一种在 HTTP 协议基础上进行传输加密的安全协议,能够有效保障数据传输安全。

证书方面,可以选择免费版的 Let‘s Encrypt,也可以购买权威机构颁发的 CA 证书。后者是一个更加可靠、安全的选择,许多云厂商也提供有类似的 SSL 证书服务,并且可以部署到 CDN 上。

由于笔者个人使用腾讯云的服务比较多,下面以腾讯云为例介绍如何申请、部署 SSL 证书。腾讯云的 SSL 证书是由 GeoTrust 颁发的,可免费使用一年。如果你是阿里云或其他云厂商的用户,可以查看各自对应的证书产品。

3.1、申请证书

登录腾讯云之后,前往 SSL 证书管理控制台,点击申请证书,会弹出证书选择框。目前只能选择 GeoTrust 颁布的证书,后续似乎会开放更多证书厂商的产品。

接下来,需要填写一些申请信息,最重要的是绑定域名。假如你的域名的 abc.com,需要填写的必须是类似 a.abc.com 这样非顶级域名。

下一步,会要求手动进行 DNS 验证。具体的步骤可参考产品文档:域名验证指引

一般配置正确的话,很快就可以拿到属于自己的免费证书了。据笔者个人的情况来看,大概一刷新就可以通过审核。

3.2、服务器安装证书

审核通过后,可以在SSL 证书管理控制台看到证书下载链接。先将证书下载到本地,并上传到 App的服务器,为服务器上安装证书做好准备。

这里,我们以较为常用 Nginx 为例介绍具体安装过程。如果使用的是 Apache 或 IIS 等其他服务器,请参考官方文档

3.2.1 获取证书

Nginx文件夹内获得SSL证书文件 1_www.domain.com_bundle.crt 和私钥文件2_www.domain.com.key

  • 1_www.domain.com_bundle.crt 文件包括两段证书代码 “-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”
  • 2_www.domain.com.key 文件包括一段私钥代码“-----BEGIN RSA PRIVATE KEY-----”和“-----END RSA PRIVATE KEY-----”。

3.2.2 证书安装

将域名 www.domain.com 的证书文件 1_www.domain.com_bundle.crt 、私钥文件2_www.domain.com.key 保存到同一个目录,例如 /usr/local/nginx/conf 目录下。

更新Nginx根目录下 conf/nginx.conf 文件如下:

server {
        listen 443;
        server_name www.domain.com; #填写绑定证书的域名
        ssl on;
        ssl_certificate 1_www.domain.com_bundle.crt;
        ssl_certificate_key 2_www.domain.com.key;
        ssl_session_timeout 5m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照这个协议配置
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照这个套件配置
        ssl_prefer_server_ciphers on;
        location / {
            root   html; #站点目录
            index  index.html index.htm;
        }
    }

配置完成后,先用 bin/nginx –t 来测试下配置是否有误。正确无误的话,重启 nginx,就可以使https://www.domain.com 来访问了。

4. CDN 上部署 HTTPS

很多网站都会使用 CDN 服务,因为云厂商一般有提供一些免费的 CDN 流量额度,比如腾讯云就有 60GB 的免费流量。

对于使用了 CDN 的 App 或网站,还可以将 HTTPS 部署在全网 CDN 节点,实现全网数据加密传输功能。

4.1 配置 HTTPS 的条件:

  • 域名管理页面,域名的状态为 部署中 或 已启动。
  • 域名不是由 COS 同步而来的 .file.myqcloud.com 后缀域名。
  • 域名的接入方式为 自有源 或者 COS源、FTP源。

登录CDN控制台,进入 【域名管理】 页面,点击域名右侧 管理 按钮,进入管理页面:

在 【高级配置】中找到 HTTPS 配置模块

4.2 证书类型

腾讯云 CDN 目前支持两种方式部署证书:

  • 自有证书:将自有证书、私钥内容上传至 CDN 进行部署,全程加密传输,证书不落地,保障您的证书安全。
  • 腾讯云托管证书:也就是上面咱们已经申请成功的 SSL 证书。

4.3 证书配置

前往CDN高级工具-证书管理界面,

根据情况选择希望配置证书的域名、证书类型和回源方式即可。这里需要满足前面提到的这个条件:域名的状态为 部署中 或 已启动。

勾选“腾讯托管证书”后,可以在证书列表下拉菜单中找到刚才申请到的证书。回源方式选择为 HTTPS,之后提交即可。

证书配置成功后,会出现 强制跳转 开关,开启后,即使用户发起 HTTP 请求,也会强制跳转为 HTTPS进行访问。

检测部署效果

完成上面一系列的操作之后,还需要最后确认部署的 SSL 证书是否符合 ATS 要求。否则,折腾了那么久,最终却是做了无用功的话,那是非常痛苦的一件事。

对此,云厂商也是提供了较为方便的检测方式,只需要输入目标域名即可一键检测。

至此,就完成了 App 服务器的 SSL 证书部署,并满足了苹果 ATS 协议的严格要求。

时间: 2024-11-24 03:44:49

还有 3 天,苹果就要关上 HTTP 大门了的相关文章

苹果金表,中国消费的新毒瘤

传闻了几年的Apple watch如今终于成为现实,苹果官方已经开售 ,本次预定最惹人注目的事件无疑是中国土豪在1小时之内,把金色的苹果手表抢购一空,要知道这款18K金色手表最高售价达到12万,相当于一辆小型轿车的价格了.苹果首席执行官库克听闻该消息之后,大赞中国顾客非常给力.随着苹果金表大卖,库克估计会再次提高中国市场的战略地位,并在适当的时候拜访神州,说一些连鬼都相信的话:他喜欢中国,他爱这里的消费者. 这个现象的特殊性早就超越了消费者本身,"抢购金表"更像是中国社会的一个缩影:一

传《斗战神》美术创作婉拒暴雪挖角 中国游戏人缺少这份傲骨

据某国际猎头爆料,今年年初,全球第一大游戏发行商动视暴雪曾欲以百万年薪.美国绿卡等优厚待遇挖角腾讯游戏<斗战神>美术创作.该美术创作因其出色的美术功底和对场景及人物的准确把握被动视暴雪看中,并有机会参与到<暗黑破坏神3>的开发创作之中.但时值<斗战神>研发进入攻坚阶段,出于对游戏理想的坚持以及打造中国人自己的魔幻史诗网游的梦想,动视暴雪邀约被该美术创作婉拒. 暴雪地位无人能及 国际游戏公司鲜有华裔身份 在全球游戏领域,动视暴雪的地位可以与手机界的"苹果&quo

知乎转载

链接:https://www.zhihu.com/question/22590902/answer/55182189来源:知乎著作权归作者所有,转载请联系作者获得授权. 题主的问题是如何白手起家靠一个人赚到100万,我觉得这个是可以做到的,但是要分阶段,不太可能从一个从无经商经验的人突然转变成一个人折腾点东西就能赚百万(多个人一起有可能).我先把我个人的阶段拆解开来,给你一个直观的感受. 第一阶段:打黑工,饭店服务生,送PIZZA (读书时兼职工作)时间: 18岁-19岁 年收入:<10万人数:

十年后2023年再读这篇文章,看看我将会怎么样?

http://blog.csdn.net/wojiushiwo987/article/details/8453881看到一篇文章不错[清华差生10年奋斗经历] ,写给将要工作的自己,十年后2023年再读这篇文章,看看我将会怎么样? 在2012年收关时刻,看到如此激励的文章,实在是我的幸运.文章讲述了所谓清华差生的奋斗史,从毕业.各种工作经历.与同事.领导关系细致入微的剖析了实战的职场及人和人差距拉开的原因等.正如文中作者指出的那样,这也是我的心灵导师俞敏洪一直教导的,”人生是跑马拉松的过程,不在

你是厂家?只在某宝上卖货就太苦逼了

(产品要大卖取决于找对路子并选择与胜者为舞!) 电子商务的出现给传统商家带来了巨大的挑战,而随着“互联网+”计划的不断裂变与发展,更是给传统商业带来了前所未有的危机,使得传统商业雪上加霜.商家被迫转行进入电子商务领域后,发现电子商务更不好做,竞争异常激烈,传统电商经过十来年的发展,已趋于饱和,想要赚到钱已经很困难了. 说到做电子商务,商家第一会想到上某猫,可是每年光给平台就要交纳十万的费用,如果是新厂商的话,对不起某猫已经为你关上了大门,现在已经没有入驻可能.上某宝的话如果是小卖家根本连活下去的

{转}一位北京差生9年的北京生活

[一位清华差生9年的北京生活:地产.奋斗.房子.内幕.青春.大学.装逼]清华差生10年奋斗经历:只写事业不写女人.作者从04年本科毕业写到2012年,近9年奋斗经历.反正看完后各种反省各种彻悟.不要老去抱怨别人"天时地利人和",做好当下,后人或许会羡慕嫉妒恨你. [导读]清华"差生"10年奋斗经历:只写事业,不写女人.作者从2004年本科毕业写到2012年,近9年的奋斗经历.反正一字一句看完后,各种反省各种彻悟.不要老去抱怨别人"天时地利人和",

简历浅析

精益技术简历之道——改善技术简历的47条原则 原文链接:http://lucida.me/blog/lean-technical-resume/ 关于 这篇文章围绕着技术简历这个话题,从版式.个人信息.技术能力.项目经历和教育背景等方面出发,给出了编写高质量技术简历所应遵循的47条原则.它们既有益于求职者编写高质量的简历,也有助于招聘者筛选合格的求职者. 为什么要编写这篇文章? 技术简历既是技术人员求职必不可少的一环,也是找工作的第一步,其重要性不言而喻.然而关于如何编写技术简历的靠谱教程却少之

[转]清华差生10年奋斗经历

转自 https://kb.cnblogs.com/page/163907/   源于PMP老师的推荐... [导读]清华"差生"10年奋斗经历:只写事业,不写女人.作者从2004年本科毕业写到2012年,近10年的奋斗经历.反正一字一句看完后,各种反省各种彻悟.不要老去抱怨别人"天时地利人和",做好当下,后来人或许还会羡慕嫉妒恨你. 我的故事里有三个人:我自己.我大学同宿舍的哥们.我第一个公司的直接领导.我们三个都是学建筑设计的,我哥们和我同年,都是80后,领导比

适配iOS10以及Xcode8-b

现在在苹果的官网上,我们已经可以下载到Xcode8的GM版本了,加上9.14日凌晨,苹果就要正式推出iOS10系统的推送了,在此之际,iOS10的适配已经迫在眉睫啦,不知道Xcode8 beat版本,童鞋们有木有下载过来试试呢?就我的使用来说,总体觉得苹果还是坑不断,但是也在一直进步的啦.下面我就来说说,iOS10的适配以及Xcode8使用上的一些注意点. 一.证书管理 用Xcode8打开工程后,比较明显的就是下图了,这个是苹果的新特性,可以帮助我们自动管理证书.建议大家勾选这个Automati