Open API 安全設計

2022-09-12 04:15:10 字數 1192 閱讀 2605

如何保證外網開放介面的安全性。

1.使用加簽名方式,防止資料篡改。

2.資訊加密與金鑰管理,aes加密。

3.搭建oauth2.0認證授權,授權之後獲取accesstoken。

4.使用令牌方式,先獲取token,帶著token傳送請求。

5.搭建閘道器實現黑名單和白名單。

一、令牌方式搭建搭建api開放平台

方案設計:

2.第三方機構請求資料需要加上accesstoken引數,每次業務處理中心執行業務前,先去dba持久層檢視accesstoken是否存在(可以把accesstoken放到redis中,這樣有個過期時間的效果),存在就說明這個機構是合法,無需要登入就可以請求業務資料。不存在說明這個機構是非法的,不返回業務資料。

3.好處:無狀態設計,每次請求保證都是在我們持久層儲存的機構的請求,如果有人盜用我們accesstoken,可以重新申請乙個新的taken.

二、基於oauth2.0協議方式

原理:主流分為商家自研和isv(獨立軟體開發商,應用服務商)模式

商家自研,基本是自己的店鋪商戶,子公司等。平台提**用掛店鋪的形式。乙個應用可以掛多個店鋪

isv模式,同樣乙個應用掛多個店鋪,是獨立軟體**商,提**用服務。平台在應用服務市場提供購買服務產品,商家購買服務後方可使用。

三、資訊加密與金鑰管理

1、發放加密key,按照規則加密引數,引數暴露,加密sign驗證**。

2、rsa加密是一種非對稱加密,發放公鑰私鑰。

3、aes加密,發放加密key,引數非暴露,通過傳入的client_id進行引數解密。

四、白名單驗證

1、在作業系統層面,配置 iptables,拒絕指定 ip 的網路請求。

2、在 web server 層面,通過 nginx 自身的 deny 選項 或者 lua 外掛程式 配置 ip 黑名單。

3、在應用層面,在請求服務之前檢查一遍客戶端 ip 是否在黑名單(服務閘道器)。

Open API安全考慮

很初級的簡單想法,先記下來。需要有個年輕聰明的青年才俊論證一下 1 是否用https,這些就沒有必要了。2 嚴謹性 是否有漏洞,這麼做安全性依賴哪些要素,能多大程度上保證。3 必要性 是否有冗餘環節。4 效能 壓一下,注意監控cpu。以下是正文。1 所有的秘鑰都由我們生成並頒發。2 我們需要儲存 1...

Open API的實現技術

一 遠端接 術 a soap 針對 rpc的一種解決方案,也叫簡單物件訪問協議。同時 soap 作為應用協議,可以基於多種傳輸協議 等 來傳遞訊息。b rest 注意問題 1 面向資源的介面設計。2 抽象操作作為基礎的 中的get put post delete 分別對應 是應用協議而非傳輸協議。4...

openapi 使用者繫結(passport

支援所有外部平台的使用者介面功能 主要就是使用者繫結和使用者解綁等功能。設計的難點和重點 1 安全性 2 整合性 開放平台,是乙個支援外部環境介面的開發空間,本人原來狹窄的認為那只是乙個提供資料來源的平台。自從使用者繫結專案之後,對開放平台有了新的認識。開放平台不能只有資料,還要展示。所以在這些的o...