移動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請求對服務端的資料造成安全隐患。