自2017年01月01日起,根據蘋果公司要求,所有iOS應用必須使用ATS(App Transport Security),即iOS應用內的串連必須使用安全的HTTPS串連。
說明 阿里雲CDN、傳統型負載平衡CLB(原SLB)服務中的HTTPS配置完全符合ATS的要求。
認證配置要求
蘋果ATS針對認證相關配置有如下四個方面的要求。
專案 | 具體要求 |
憑證授權單位 | 建議您使用GlobalSign品牌的OV或EV型數位憑證。 |
認證的雜湊演算法和密鑰長度 | |
傳輸協議 | 您Web伺服器上的傳輸協議必須滿足TLSv1.2,需要您在Web伺服器上開啟TLSv1.2,要求如下: 基於OpenSSL環境的Web伺服器,需要您使用OpenSSL 1.0及以上版本,推薦您使用OpenSSL 1.0.1及以上版本。 基於Java環境的Web伺服器,需要您使用JDK 1.7及以上版本。 其他Web伺服器,除IIS 7.5以及Weblogic 10.3.6比較特殊外,只要Web伺服器版本滿足要求,預設均開啟TLSv1.2。
Web伺服器的詳細配置要求如下: Apache、Nginx Web伺服器需要您使用OpenSSL 1.0及以上版本來支援TLSv1.2。 Tomcat 7及以上版本Web伺服器需要您使用JDK 7.0及以上版本來支援TLSv1.2。 IIS 7.5 Web伺服器預設不開啟TLSv1.2,需要您修改註冊表來開啟TLSv1.2。 下載並匯入ats.reg註冊表指令碼後,需要您重啟或登出伺服器,即可使TLSv1.2生效。 IBM Domino Server 9.0.1 FP3 Web伺服器支援TLSv1.2。根據ATS要求,建議您使用IBM Domino Server 9.0.1 FP5版本。更多資訊,請參見IBM HTTP SSL Server Questions and Answers。 IBM HTTP Server 8.0及以上版本支援TLSv1.2。根據ATS要求,建議您使用IBM HTTP Server 8.5及以上版本。 Weblogic 10.3.6及以上版本Web伺服器需要您使用Java 7及以上版本來支援TLSv1.2。
說明 Weblogic 10.3.6中存在多個SHA256相容性問題,建議您使用Weblogic 12及以上版本,或者您需要為Weblogic 10.3.6配置前端Apache和Nginx的HTTPS代理或SSL前端負載。 Webspere V7.0.0.23及以上版本、Webspere V8.0.0.3及以上版本、Webspere V8.5.0.0及以上版本支援TLSv1.2。關於如何配置Webspere伺服器支援TLSv1.2,請參見Configure websphere application server SSL protocol to TLSv1.2。
|
簽名演算法 | 簽名演算法必須滿足如下演算法要求: 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 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
|
配置樣本
以下通過舉例方式說明不同Web伺服器的ATS協議及加密套件的配置方法。
重要 本樣本僅列舉了與ATS協議有關的屬性,請不要完全複製以下配置用於您的實際環境。
Nginx設定檔片段
Nginx設定檔中ssl_ciphers及ssl_protocols屬性與ATS協議有關。
重要 參考以下樣本配置ssl_protocols參數時,您需要自行評估是否使用TLSv1.1。
server {
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
}
Tomcat設定檔片段
Tomcat設定檔中的SSLProtocol及SSLCipherSuite屬性與ATS協議有關。
重要 參考以下樣本配置SSLProtocol參數時,您需要自行評估是否使用TLSv1.1。
<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
scheme="https" secure="true"
ciphers="TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"
SSLProtocol="TLSv1.1+TLSv1.2+ TLSv1.3"
SSLCipherSuite="ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4" />
IIS系列Web伺服器的配置方法,請參見Enabling TLS 1.2 on IIS 7.5 for 256-bit cipher strength。您也可以使用可視化配置外掛程式進行配置。具體操作,請參見IIS Crypto。
ATS偵查工具
您可以在蘋果電腦中使用系統內建的工具執行nscurl --ats-diagnostics --verbose <網址>命令進行ATS檢測。