# 支持Apple提出的ATS标准

- Link: https://www.xuepaijie.com/html/skill/devops/713.html
- Published: 2016-11-17T09:45:42+08:00
- Author: Admin

App Transport Security（应用程序安全传输），简称ATS，是苹果在iOS 9 中首次推出的一项
隐私安全保护功能，启用ATS后，它会屏蔽明文HTTP资源加载，强制App通过HTTPS连接网络服务，
通过传输加密保障用户数据安全。

ATS在iOS 9 中是默认开启的，但开发者仍然可以选择关闭ATS，让自己的应用通过HTTP 连接
传输数据。但从2017年1月1日起，所有提交到App Store 的App必须强制开启ATS。苹果最终
明确了这个最后期限，让那些想知道何时必须强制开启ATS的开发者松了一口气，而用户也能
明确的知道，他们的苹果App将默认使用安全的HTTPS连接，确保数据安全。

![Crypto](https://www.xuepaijie.com/wp-content/uploads/2019/01/6ebd922db5b1502aa7fa21a0b2a3ae45.
jpg)

**苹果提出的ATS有哪些强制标准呢：**

1、强制使用https
 2、证书域名和链接地址域名匹配 3、根证书受苹果信任 4、证书在有效期
内 5、必须支持TLS1.2 6、加密套件要求：

RSA算法要求使用以下加密套件：
 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA

DSA算法要求使用以下加密套件：
 TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA

**如何支持ATS标准：**
 1、购买苹果信任CA所颁发的证书；

2、部署https网站的web服务器也有一定要求，如下：

Apache，Nginx要求关联的openssl版本在1.0.1+，这样网站才支持TLS1.2，同时您需要对证书
相关参数做一定调整：
 Apache：

    ```html;
    SSLProtocol all -SSLv2 -SSLv3
    SSLCipherSuite ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!aNULL:!eNULL;
    ```

Nginx:

    ```html;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!aNULL:!eNULL;
    ```

Tomcat要求环境 tomcat7+和JDK1.7+，配置参考如下：

    ```html;
    <Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol"
    maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
    keystoreFile="keystore/domain.jks" keystorePass="证书密码"
    clientAuth="false" sslProtocol="TLS"
    ciphers="TLS_RSA_WITH_AES_128_GCM_SHA256,
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
    TLS_RSA_WITH_AES_128_CBC_SHA,
    TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
    TLS_RSA_WITH_AES_128_CBC_SHA256,
    TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,
    SSL_RSA_WITH_3DES_EDE_CBC_SHA,
    TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA" />
    ```

IIS要求环境 windows server 2008 R2/IIS 7+，调整方式如下：

下载调整加密套件的工具，官方地址：https://www.nartac.com/Products/IISCrypto/。下载
完成后运行程序，点击Best Practice按钮，然后点击Apply按钮，这时系统提醒您重启，点
击重启后配置才能生效。
