以前簡(jiǎn)單介紹過(guò)web api 的設(shè)計(jì),但是還是有很多朋友問(wèn)我,如何合理的設(shè)計(jì)和實(shí)現(xiàn)web api。比如,接口安全,異常處理,統(tǒng)一數(shù)據(jù)返回等問(wèn)題。所以有必要系統(tǒng)的總結(jié)總結(jié) web api 的設(shè)計(jì)和實(shí)現(xiàn)。由于前面已經(jīng)介紹過(guò)web api 的參數(shù)和返回格式的設(shè)計(jì),《Web API系列(一)設(shè)計(jì)經(jīng)驗(yàn)與總結(jié)》。這次,就來(lái)講講接口安全。

 

  由于Web API是基于互聯(lián)網(wǎng)的應(yīng)用,因此安全性要遠(yuǎn)比在本地訪問(wèn)數(shù)據(jù)庫(kù)的要嚴(yán)格的多,一般通用的做法,是采用幾步來(lái)保證接口和數(shù)據(jù)安全:

  1.首先一個(gè)是基于CA證書(shū)的HTTPS進(jìn)行數(shù)據(jù)傳輸,防止數(shù)據(jù)被竊聽(tīng);

  2.然后是采用參數(shù)加密簽名方式傳遞,對(duì)傳遞的參數(shù),增加一個(gè)加密簽名,在服務(wù)器端驗(yàn)證簽名內(nèi)容,防止被篡改;

  3.最后是對(duì)一般的接口訪問(wèn),都需要使用用戶(hù)身份的token進(jìn)行校驗(yàn),只要檢查通過(guò)才允許訪問(wèn)數(shù)據(jù)。

 

網(wǎng)友評(píng)論