400-638-8808
|
微信公眾號




穩(wěn)定可靠 永不間斷

海外收發(fā) 暢通無阻

協(xié)同辦公 資源管理

超大郵件 超級功能

智能反垃圾郵件技術
易管理 免維護

蘋果iOS APP配置HTTPS,iOS ATS安裝配置SSL證書!
1. 背景
2017年1月1日起,蘋果AppStore中的所有App都必須啟用 App Transport Security(ATS)安全功能。App TransportSecurity(應用程序安全傳輸),簡稱 ATS,是蘋果在 iOS 9 中首次推出的一項隱私安全保護功能,啟用ATS后,它會屏蔽明文HTTP資源加載,強制App通過HTTPS連接網(wǎng)絡服務,通過傳輸加密保障用戶數(shù)據(jù)安全。ATS在 iOS 9 中是默認開啟的,但開發(fā)者仍然可以選擇關閉 ATS,讓自己的應用通過 HTTP 連接傳輸數(shù)據(jù)。但從2017年1月1日起,這招將行不通了,所有提交到 App Store 的App必須強制開啟 ATS。
2. 影響
100%被拒的情況:
以下幾種情況是特例,不會被拒:
3. 為什么要用 HTTPS
簡單地說,HTTP是明文協(xié)議,通過該協(xié)議傳輸?shù)臄?shù)據(jù)處在被竊聽、篡改、冒充這三大風險中,已經(jīng)是非常不安全的傳輸協(xié)議。HTTPS是加密協(xié)議,就是在HTTP的基礎上開啟一條SSL加密通道,讓原本明文“裸奔”的數(shù)據(jù),從加密通道中密文傳輸,保證了數(shù)據(jù)傳輸?shù)陌踩浴?/p>

目前,全球互聯(lián)網(wǎng)正在進行從HTTP到HTTPS的大遷移,蘋果一向非常關注用戶隱私安全,在執(zhí)行安全策略方面,態(tài)度也是非常強硬,實施強制HTTPS加密勢在必行。
4. 準備工作
申請一個SSL證書
SSL證書按驗證的類別可分:
DV SSL證書(域名驗證型):只驗證域名所有權,適合個人網(wǎng)站、博客等站點使用;
OV SSL證書(企業(yè)驗證型):驗證網(wǎng)站所屬單位身份,適合企業(yè)級用戶使用;
EV SSL證書(擴展驗證型):擴展驗證網(wǎng)站所屬單位身份,這種證書在瀏覽器中會顯示醒目的綠色地址欄,可信度最高,適合需要用戶高度信任的企業(yè)級用戶使用。

天下數(shù)據(jù)證書產(chǎn)品已經(jīng)上線,支持蘋果iOS系統(tǒng)。
5. AFN 配置 HTTPS
5.1.項目中的網(wǎng)絡交互都是基于AFN,要求AFN版本在3.0及其以上;
5.2.代碼部分
設置AFN請求管理者的時候 添加 https ssl 驗證。
// 1.獲得請求管理者
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
// 2.加上這個函數(shù),https ssl 驗證。
[manager setSecurityPolicy:[self customSecurityPolicy]];
// https ssl 驗證函數(shù)
- (AFSecurityPolicy *)customSecurityPolicy {
// 先導入證書
NSString *cerPath = [[NSBundle mainBundle] pathForResource:@"xxx" ofType:@"cer"];//證書的路徑
NSData *cerData = [NSData dataWithContentsOfFile:cerPath];
// AFSSLPinningModeCertificate 使用證書驗證模式
AFSecurityPolicy *securityPolicy = [AFSecurityPolicy policyWithPinningMode:AFSSLPinningModeCertificate];
// allowInvalidCertificates 是否允許無效證書(也就是自建的證書),默認為NO
//validatesDomainName 是否需要驗證域名,默認為YES;
5.3.關于證書
從天下數(shù)據(jù)CA獲取到HTTPS證書后,會得到一個有密碼的壓縮包文件,使用for other server里面的domain.crt的證書文件。
6. 后臺服務器配置HTTPS證書(Ngnix)
從天下數(shù)據(jù)CA證書文件壓縮包中,打開其中的for Nginx 文件可以看到 2 個文件,包括公鑰、私鑰。
打開Nginx安裝目錄下conf目錄中的nginx.conf文件找到
#HTTPS server
#
#server {
# listen 443;
# server_name localhost;
# ssl on;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key;
# ssl_session_timeout 5m;
# ssl_protocols SSLv2 SSLv3 TLSv1;
# ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
# ssl_prefer_server_ciphers on;
# location / {
# root html;
# index index.html index.htm;
# }
#}
將其修改為 :
server {
listen 443;
server_name localhost;
ssl on;
ssl_certificate sslkey/public.cer; (證書公鑰)
ssl_certificate_key sslkey/private.key; (證書私鑰)
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1TLSv1.2;
ssl_ciphers ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!aNULL:!eNULL;
ssl_prefer_server_ciphers on;
location / {
root html;
# index index.html index.htm;
# }
#}
將其修改為 :
server {
listen 443;
server_name localhost;
ssl on;
ssl_certificate sslkey/public.cer; (證書公鑰)
ssl_certificate_key sslkey/private.key; (證書私鑰)
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1TLSv1.2;
ssl_ciphers ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!aNULL:!eNULL;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
}
保存退出,并重啟Nginx。
通過https方式訪問您的站點,確認站點證書安裝配置正確。
產(chǎn)品與服務
香港服務器 香港高防服務器 美國服務器 韓國服務器 新加坡服務器 日本服務器 臺灣服務器云服務器
香港云主機 美國云主機 韓國云主機 新加坡云主機 臺灣云主機 日本云主機 德國云主機 全球云主機高防專線
海外高防IP 海外無限防御 SSL證書 高防CDN套餐 全球節(jié)點定制 全球?qū)>GPLC關于我們
關于天下數(shù)據(jù) 數(shù)據(jù)招商加盟 天下數(shù)據(jù)合作伙伴 天下數(shù)據(jù)團隊建設 加入天下數(shù)據(jù) 媒體報道 榮譽資質(zhì) 付款方式關注我們
微信公眾賬號
新浪微博
天下數(shù)據(jù)手機站 關于天下數(shù)據(jù) 聯(lián)系我們 誠聘英才 付款方式 幫助中心 網(wǎng)站備案 解決方案 域名注冊 網(wǎng)站地圖
天下數(shù)據(jù)18年專注海外香港服務器、美國服務器、海外云主機、海外vps主機租用托管以及服務器解決方案-做天下最好的IDC服務商
《中華人民共和國增值電信業(yè)務經(jīng)營許可證》 ISP證:粵ICP備07026347號
朗信天下發(fā)展有限公司(控股)深圳市朗玥科技有限公司(運營)聯(lián)合版權
深圳總部:中國.深圳市南山區(qū)深圳國際創(chuàng)新谷6棟B座10層 香港總部:香港上環(huán)蘇杭街49-51號建安商業(yè)大廈7樓
7×24小時服務熱線:4006388808香港服務電話:+852 67031102
本網(wǎng)站的域名注冊業(yè)務代理北京新網(wǎng)數(shù)碼信息技術有限公司的產(chǎn)品