
在雲環境下,API给予了對應功能的訪問權限,這增加了雲平台的攻擊面,攻擊者可能存在濫用或找流行API代碼中的漏洞,實現攻擊雲用戶與雲服務,因此,雲安全聯盟也表示不安全的API是雲計算面臨的最大威脅之一。
1.API簽名安全
API簽名主要是解決隨意調用導致的風險,系統從外部取得數據時,通常都用API接口調用來完成,請求方與接口给予方在通信中,主要需考慮以下問題:
·請求參數是否被篡改。
·請求來源是否合法。
·請求是否具有唯一性。
2.API防重放攻擊
儘管API接口傳輸藉助http來加密傳輸,但部分接口仍有重放攻擊的風險。在阿里雲實踐中,防重放的規則是請求唯一標識,一刻鐘內AppKey+API+Nonce不能重複,且要與時間戳一起用才可進行防重放。AppKey在API網關控制台生成,只有取得API授權後才能調用,藉助雲市場等通道購買的API默認已給APP授權過,阿里雲所有雲產品共用一套AppKey體系,刪除ApppKey時應謹慎,以防影響到其他已開通服務的雲產品。時間截的值為當前時間的毫秒數,即從1970年1月1日起至今的時間轉換為毫秒,時間戳有效時間為15分鐘。
3.API流量控制
流量控制策略與API都是獨立的,兩者綁定後,流量控制策略會對已綁定的API有作用。已有的流量控制策略可額外配置特殊用戶與應用,這些特例僅對现在策略已經綁定的API有效。流量控制策略可配置對API、用戶、應用3個對象的流控值,流控單位可是分鐘、小時、天。流量控制策略包含下表中的維度。
|
API 流量限制 |
該策略綁定的API在單位時間內被調用的次數不大於設定值,單位時間可選分鐘、小時、天,如5000次/分鐘 |
|
APP 流量限制 |
每個APP對該策略綁定的任意API在單位時間內的調用次數不大於設定值,如50000次/小時 |
|
用戶 流量限制 |
每個雲賬號對該策略綁定的任意API在單位時間內的調用次數不大於設定值。一個雲賬號可能有多個APP,所以對雲賬號的流量限制就是對該賬號下全部APP的流量總和的限制。如50萬次/天 |
在API網關控制台,可對流量控制策略進行創建、修改、刪除、查看等基本操作,及流量控制策略和API的綁定/解綁等操作。
4.API授權管理
把API發佈到線上後,得授權客戶的APP,客戶才可顺利获得此APP調用,建立或解除某API與APP的授權聯繫,API網關會核驗權限。
