面對沒授權(quán)的訪問,拒絕服務(wù)的攻擊颜屠,以及竊取機(jī)密數(shù)據(jù)等攻擊辰妙,企業(yè)要使用通用安全框架鹰祸,來保護(hù)其后臺不受到攻擊甫窟,并保證良好的用戶體驗(yàn)。從請求到后端蛙婴,后端響應(yīng)橫斷網(wǎng)絡(luò)粗井,最后返回給前端,這一系列過程街图,對于API接口保護(hù)方法浇衬,所以按這個(gè)過程大致可分為四種類型
1、保障傳輸中的數(shù)據(jù)安全餐济。
1.1客戶端到API網(wǎng)關(guān)安全
1.2 API網(wǎng)關(guān)與后端服務(wù)安全耘擂。
為了保證傳輸?shù)臄?shù)據(jù)安全,用到SSL/TLS絮姆,SSL是在在TCP與http之間加了可選層醉冤,利用數(shù)據(jù)加密技術(shù),確保數(shù)據(jù)在網(wǎng)絡(luò)上傳輸過程不會被截取篙悯,TLS是通訊協(xié)議蚁阳,用于兩個(gè)應(yīng)用程序之間提供保密性和安全性,分為兩部份鸽照,第一部份雙方協(xié)商密鑰螺捐,第二部份,定義傳輸?shù)母袷健?/p>
假設(shè)A和B想說悄悄話矮燎,不想讓別人聽到定血,怎么做呢?
A通過SSL通道對B講:我想和你安全通話诞外,我這里對稱算法有DES糠悼、rc5,密鑰交換有rsa,dh,摘要算法有md5、sha.
B:我們用des-rsa-sha組合好了浅乔,這里有我證書倔喂,里面有我的名字和公鑰铝条,你去驗(yàn)證下我身份(把證書給A)。
A用了ca的證書驗(yàn)證了B證書,確認(rèn)了B的身份席噩,原來真是他的情人班缰,然后用B的公鑰,生成秘密信息情書悼枢。
A:這是我給你的情書埠忘,有很多秘密信息,用你的公鑰加過密了馒索,只有你的私鑰才能解開莹妒。(然后把情書給到B)
A和B情書信息就不會被人知道了。
2绰上、訪問控制與抵御拒絕服務(wù)(例如DDos攻擊)
首先要識別是正常請求還是惡意攻擊旨怠,一些管理平臺會自動根據(jù)流量的大小、類別蜈块、來源等來識別各種可疑的行為鉴腻,如apigee就是檢測服務(wù),識別出惡意攻擊之后百揭,就會策略保護(hù)API勉受惡意黑客的攻擊爽哎,如限速、分流器一、擴(kuò)容课锌、CDN、正則保護(hù)祈秕、驗(yàn)證請求等等渺贤。
3、身份驗(yàn)證與授權(quán)踢步。
識別可靠最終用戶信息癣亚,例如用OAuth2.0,動態(tài)碼获印,身份驗(yàn)證器述雾,識別最終用戶,授予已識別的用戶訪問某些資源的權(quán)限兼丰。
4玻孟、數(shù)據(jù)保密與屏蔽個(gè)人身份信息。
一些私有隱私的信息不應(yīng)該出現(xiàn)在公眾視野中鳍征,所以要對用戶信息黍翎、密碼、帳號艳丛、郵件匣掸、地址進(jìn)行轉(zhuǎn)碼加密趟紊、訪問控制、安全審計(jì)等手段來保護(hù)