天天看點

App端與伺服器之間的安全政策

一:https保證通道安全 二:下發token保證無登入的使用者不能随意調用服務 三:token有過期時間,保證服務不被長期木馬攻擊 四:對于支付等安全功能,需要另外增加支付密碼校驗和短信驗證 五:應用層内做自己的安全協定(對稱、非對稱、打包證書等等)

移動app通過post請求調用伺服器的api接口,為了

確定伺服器的資料安全和通訊安全,防止資料篡改等惡意攻擊,

本人通過查詢資料和思考,總結出了一個方案,個人認為能解決

基本的接口調用安全問題,具體方案如下。

首先,移動端通過通路公開接口與伺服器通訊,使用使用者名和密碼(當然是MD5加密)作為參數向伺服器申請TOKEN,伺服器擷取使用者名和密碼,伺服器端判斷該使用者是否法,如果合法,服務端為移動APP應用配置設定APPID (32位随機字串)以及TOKEN(32位随機字串)同時伺服器儲存APPID和TOKEN,當然根據應用的不同,伺服器可以為該TOKEN(建立有效期如3600s)背景就要建立觸發器或者自動作業銷毀token。 移動端收到APPID和TOKEN進行存儲,同時傳回給使用者與伺服器建立連接配接成功等提示資訊。之後,移動端請求其他功能接口,接口參數中要增加APPID和TOKEN,其接口格式如下:method(APPID, Token,…其他參數),伺服器首先驗證token是否有效,進行資料服務完成之後如果token為臨時有效,應重新修改有效期時間起點為調用時刻。

最後,APP一直沒有通路服務端,如token永久有效,則沒有後續操作,若token為臨時有效,token過了有效期,驗證無法通過則通知使用者通路相應接口,重新擷取驗證token。該方案其實是兩步驗證,其實對于一般應用,在使用者注冊的時候,可以同時為使用者生成永久驗證Token,使用者在使用APP進行調用服務端API的時候,将該Token配置到系統中,

這樣就可以防止惡意使用者直接通過通路post請求對服務端的資料造成安全隐患。

繼續閱讀