報告下載:新增199IT官方微信【i199it】,回覆關鍵詞【2020年應用程式介面資料安全報告】即可
一、API 的基本情況
伴隨著雲端計算、移動網際網路、物聯網的蓬勃發展,越來越多的開發平臺和第三方服務快速湧現,應用系統與功能模組複雜性不斷提升,應用開發深度依賴於應用程式介面(Application ProgrammingInterface,API)之間的相互呼叫。近年來移動應用深入普及,促使社會生產、生活活動從線下轉移到了線上,特別在此次新冠肺炎疫情期間,協同辦公、線上教育、便民服務等領域移動應用積極助力復工復產,各地依託大資料推出“健康碼”等疫情防控新舉措,API 在其中起到了緊密連結各個元素的作用。為滿足各領域移動應用業務需要,API 的絕對數量持續增長,通過API 傳遞的資料量也飛速增長。API 技術藉助移動應用蓬勃發展的勢頭融入社會經濟的方方面面,不僅為資料互動提供了便利,並且推動了企業、組織機構間的溝通和對話,甚至創造了新的經濟模式:API 經濟。
(一)API 簡介
API 是預先定義的函式,為程式之間資料互動和功能觸發提供服務。呼叫者只需呼叫API,並輸入預先約定的引數,即可實現開發者封裝好的各種功能,無需訪問功能原始碼或理解功能的具體實現機制。
從功能角度來看,API 是前端呼叫後端資料的通道;從業務角度來看,API 是將封裝後的應用對外開放的訪問介面。在資訊系統內部,隨著業務功能的逐漸細化,各個功能模組之間需要利用API 技術來進行協調;在資訊系統外部,API 承擔著與其他應用程式進行互動的重要任務。
(二)API 分類及組成要素
1.API 分類
API 技術應用廣泛,可滿足不同領域、不同業務的資料傳輸和操作需求,在包括軟體開發工具包(Software Development Kit,SDK)、Web 應用、閘道器等諸多領域均可發現API 的身影。因此,從應用領域角度難以合理清晰地區分其種類。為此,本報告從API 開放程度和API 核心技術兩個維度進行分類介紹。
(1)按API 開放程度分類
從API 的開放程度出發,API 可以分為開放API、面向合作方API和內部API。
開放API 是面向公網開放的介面,此類API 允許公眾呼叫。呼叫者可以是任何人或者機構,不需要和API 提供者建立合作關係,例如公司入口網站等。
面向合作方API 指的是企業或組織用來與外部合作伙伴進行溝通、交流和系統整合的API,例如面向外包機構、裝置供應商等。
內部API 僅在企業或組織內部使用,用來協調內部不同系統、應用之間的呼叫關係,例如CRM 系統API、薪資系統API 等。
(2)按API 核心技術分類
從API 核心技術進行劃分,可分為簡單物件訪問協議(SimpleObject Access Protocol,SOAP)API,RESTful(RepresentationalState Transfer,REST)API 及遠端過程調錄(Remote Procedure Call,RPC)API。
SOAP API 是指使用Web 服務安全性內建協議的API。基於XML協議,此類API 技術可與多種網際網路協議和格式結合使用,包括超文字傳輸協議(HTTP)、簡單郵件傳輸協議(SMTP)、多用途網際郵件擴充協議(MIME)等。
RPC API 是指使用遠端過程調錄協議進行程式設計的API,RPC 技術允許計算機呼叫其他計算機的子系統,並定義了結構化的請求方式。
不同於上述兩類依託於協議的API 技術,RESTful API 是一種架構,其通過HTTP 和JSON 進行傳輸,不需要儲存或重新打包資料,同時支援TLS 加密。
2.API 組成要素
API 通常包含如下組成要素,在這些要素的共同作用下,API 才能發揮預期作用。
(1)通訊協議:API 一般利用HTTPS 等加密通訊協議進行資料傳輸,以確保資料互動安全。
(2)域名:用於指向API 在網路中的位置。API 通常被部署在主域名或者專用域名之下,接入方可通過域名呼叫相關API。
(3)版本號:不同版本的API 可能存在巨大差異,尤其對於多版本並存、增量釋出等情況,API 版本號有助於準確區分API 的引數設定。
(4)路徑:路徑又稱“終點”(end point),指表示API 及API 執行功能所需資源的具體地址。
(5)請求方式:API 常用的請求方式有GET、POST、PUT 和DELETE四種,分別用於獲取、更新、新建、刪除指定資源。
(6)請求引數:即傳入引數,包含資料格式、資料型別、可否為空以及文字描述等內容。傳入引數主要包括Cookie、Requestheader、請求body 資料和位址列引數等。
(7)響應引數:即返回引數或傳出引數,返回引數本身預設沒有值,用於帶出請求引數要求API 後臺所返回的資料。
(8)介面文件:介面文件是記錄API 相關資訊的文件,內容包括介面地址、請求方式、傳入引數(請求引數)和響應引數等。
(三)API 安全標準化情況
近年來,我國陸續出臺多部資料介面有關標準,對資料介面在不同領域的應用、部署、管理、防護等進行了規範。
在國家標準層面,我國多部現行及制定中的國家標準針對API安全提出了安全要求。GB/T 35273-2020《資訊保安技術個人資訊保安規範》將API 開發、呼叫與個人資訊保安相結合,明確指出“個人資訊控制者在提供產品或服務的過程中部署了收集個人資訊的第三方外掛(例如網站經營者與在其網頁或應用程式中部署統計分析工具、軟體開發工具包SDK、呼叫地圖API 介面),且該第三方並未單獨向個人資訊主體徵得收集、使用個人資訊的授權同意,則個人資訊控制者與該第三方為共同個人資訊控制者。”制定中的國家標準GB/ XXXX-XX《資訊保安技術政務資訊共享資料安全技術要求》
要求共享交換過程中涉及的授權方(共享資料提供方、共享交換服務方)“支援資原始檔、庫表、介面等各共享方式上不同粒度的許可權控制”,並在級聯介面安全方面要求“共享交換服務方應採用密碼技術對共享交換系統間的級聯介面進行安全防護,保障通過級聯介面傳遞的資料的保密性和完整性。”
在通訊行業標準方面,隨著雲端計算、移動網際網路等領域的快速發展,通訊行業針對特定API 型別、API 應用場景等制定了一系列標準,細化了API 相關安全要求與規範。其中YD/T 2807.4-2015《雲資源管理技術要求第4 部分:介面》對涉及的介面型別進行了梳理,規定了雲資源管理平臺及分平臺間介面的技術要求。YD/T 3217-2017《基於表述性狀態轉移(REST)技術的業務能力開放應用程式介面(API)視訊共享》則針對基於REST 技術的視訊共享能力開放API進行了規範,涵蓋了介面資源定義、資源操作、資料結構、基本流程和安全要求等多方面內容。
在金融行業標準方面,已釋出多部標準對API 技術的部署、管理進行規範。其中JR/T 0171-2020《個人金融資訊保護技術規範》
要求金融機構嵌入或接入API 時,應符合相應技術規範要求,進行檢查、評估和審計。JR/T 0185—2020《商業銀行應用程式介面安全管理規範》則對API 技術提出了包括資料完整性保護、授權管理、使用情況監控、介面訪問日誌留存、安全金鑰管理、網路安全防護措施部署、介面安全監測、介面呼叫控制、介面變更處理、應急處理方案、安全審計溯源等一系列安全要求。
在交通行業標準方面,也相繼出臺了包括JT/T 1183-2018《出租汽車ETC 支付介面規範》、JT/T 1049-2017《道路運政管理資訊系統》在內的多部API 相關標準和規範性檔案。
報告下載:新增199IT官方微信【i199it】,回覆關鍵詞【2020年應用程式介面資料安全報告】即可