<address id="r9vd9"><address id="r9vd9"><listing id="r9vd9"></listing></address></address>

      歡迎您光臨深圳塔燈網絡科技有限公司!
      電話圖標 余先生:13699882642

      網站百科

      為您解碼網站建設的點點滴滴

      iOS APP配置HTTPS流程

      發表日期:2018-03 文章編輯:小燈 瀏覽次數:2153

      您的APP啟用HTTPS了嗎?距離2017年1月1日"蘋果iOS強制要求HTTPS連接"還有不到1個月的時間,是否支持HTTPS直接影響APP能否在蘋果商店順利上架。本文將幫助您更快實施HTTPS!

      1. 背景

      2017年1月1日起,蘋果AppStore中的所有App都必須啟用 App Transport Security(ATS)安全功能。App TransportSecurity(應用程序安全傳輸),簡稱 ATS,是蘋果在 iOS 9 中首次推出的一項隱私安全保護功能,啟用ATS后,它會屏蔽明文HTTP資源加載,強制App通過HTTPS連接網絡服務,通過傳輸加密保障用戶數據安全。ATS在 iOS 9 中是默認開啟的,但開發者仍然可以選擇關閉 ATS,讓自己的應用通過 HTTP 連接傳輸數據。但從2017年1月1日起,這招將行不通了,所有提交到 App Store 的App必須強制開啟 ATS。

      2. 影響

      100%被拒的情況:

      NSAllowsArbitraryLoads,打開此開關相當于關閉ATS

      NSExceptionAllowsInsecureHTTPLoads,使用自有網站的HTTP鏈接

      NSExceptionMinimumTLSVersion,使用自有網站低于TLS1.2標準的HTTPS鏈接

      以下幾種情況是特例,不會被拒:

      App提供流媒體服務,媒體源已經對內容進行了加密,這時只要使用蘋果的AV Foundation框架加載內容,就可以無視ATS;

      App的內容如果有來自已知的第三方,不過最好的做法是和第三方溝通下,敦促他們所有傳輸都使用TLS1.2加密。

      App的內容來自于不可知的第三方,比如說允許用戶通過App訪問任意網站,比如說瀏覽器app,可以忽視ATS。

      3.為什么要用HTTPS

      簡單地說,HTTP是明文協議,通過該協議傳輸的數據處在被竊聽、篡改、冒充這三大風險中,已經是非常不安全的傳輸協議。HTTPS是加密協議,就是在HTTP的基礎上開啟一條SSL加密通道,讓原本明文“裸奔”的數據,從加密通道中密文傳輸,保證了數據傳輸的安全性。

      4.準備工作

      申請一個SSL證書

      SSL證書按驗證的類別可分:

      DV SSL證書(域名驗證型):只驗證域名所有權,適合個人網站、博客等站點使用;

      OV SSL證書(企業驗證型):驗證網站所屬單位身份,適合企業級用戶使用;

      EV SSL證書(擴展驗證型):擴展驗證網站所屬單位身份,這種證書在瀏覽器中會顯示醒目的綠色地址欄,可信度最高,適合需要用戶高度信任的企業級用戶使用。

      SSL證書類別

      沃通新證書產品已經上線,支持蘋果iOS系統,新品推廣期間申請沃通超真SSL Pre通配型證書可享8折優惠,名額有限先到先得。

      5.AFN配置HTTPS

      5.1.項目中的網絡交互都是基于AFN,要求AFN版本在3.0及其以上;

      5.2.代碼部分

      設置AFN請求管理者的時候 添加 https ssl 驗證。
      /**
      // 1.獲得請求管理者

      AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];

      // 2.加上這個函數,https ssl 驗證。

      [manager setSecurityPolicy:[self customSecurityPolicy]];

      // https ssl 驗證函數

      • (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.關于證書

      從沃通獲取到HTTPS證書后,會得到一個有密碼的壓縮包文件,使用for other server里面的domain.crt的證書文件。

      6.后臺服務器配置HTTPS證書(Ngnix)

      從沃通證書文件壓縮包中,打開其中的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;

      }

      }

      保存退出,并重啟Nginx。

      通過https方式訪問您的站點,確認站點證書安裝配置正確。


      本頁內容由塔燈網絡科技有限公司通過網絡收集編輯所得,所有資料僅供用戶學習參考,本站不擁有所有權,如您認為本網頁中由涉嫌抄襲的內容,請及時與我們聯系,并提供相關證據,工作人員會在5工作日內聯系您,一經查實,本站立刻刪除侵權內容。本文鏈接:http://www.webpost.com.cn/20470.html
      相關開發語言
       八年  行業經驗

      多一份參考,總有益處

      聯系深圳網站公司塔燈網絡,免費獲得網站建設方案及報價

      咨詢相關問題或預約面談,可以通過以下方式與我們聯系

      業務熱線:余經理:13699882642

      Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.    

      国产成人精品综合在线观看