API安全網關具有以下功能:
安全認證:若用戶在控制臺配置了某個應用需要進行安全認證,網關在接收到該應用的請求時,就會進行基于簽名的安全認證,稱為App認證。App認證會根據請求的內容,使用應用的密鑰進行簽名。可以在控制臺進行查詢得知參與簽名的內容包括請求的路徑(Path)、請求參數(Query String)、網關需要的請求頭(Header)、調用方自定義的請求頭以及請求體(Body)。
授權檢測:調用方基于應用來調用API,發送請求到網關時需要傳遞請求頭AppId,網關會根據請求中的AppId來判斷該請求調用的API是否被授權,如果未被授權,則網關會拒絕該請求,返回報錯信息。服務方可以在網關控制臺授權API給應用App,調用方也可以通過購買來獲得API
訪問控制:服務方可以對API設置訪問控制,僅允許部分網段的請求,或者拒絕部分網關的請求。當服務方對某API配置了訪問控制,網關運行態在接收到該API的請求時,會判斷該請求的源IP地址,并根據服務方配置的訪問控制策略來判斷是否接收該請求的調用,如果不接收,則會拒絕該調用,并返回報錯信息。
參數映射:服務方可以對API輸入輸出參數進行定義,從而控制網關對請求的參數映射。當網關運行態接收到配置了參數映射的API的請求時,會對請求的輸入參數進行檢測,包括必填項檢測以及類型檢測。網關在轉發請求給服務方之前,會根據輸出參數的定義,修改請求的參數,包括入參映射以及常量映射。的調用權限。
后端簽名:安全認證可以保證調用方發給網關的請求安全,但是如果網關到服務端之間的網關是不可靠的,那么網關轉發請求給服務方時,請求仍然可能被篡改。如果要保證網關轉發給服務方的請求安全,服務方可以配置后端簽名,當網關接收到配置了后端簽名的API請求時,網關會按照類似安全認證中描述的方式計算簽名,放入請求頭中,再轉發給服務方。服務方接收到網關轉發的請求后,可以將計算的簽名和網關計算的簽名進行比較,從而判斷請求是否被篡改,進行身份驗證。
路由轉發:當網關根據服務方的配置處理完請求后,將請求轉發給服務方。當網關接收到服務方返回的響應后,進行調用統計等處理后就會將響應轉發給調用方,從而完成請求的調用。
流量控制:服務方可以配置流量控制,多維度控制API在單位時間內的調用次數。流量控制范圍可基于API設定單位時間內調用次數,也可基于用戶設定單位時間內調用API次數,還可基于應用App設定單位時間內調用次數。時間單位包括秒、分鐘,小時、天。
調用統計:網關運行態會對請求的調用情況進行統計,包括是否成功以及是否需要計費。這些統計信息可以在網關控制態查詢看到,從而了解API的調用情況,分析API的穩定性和調用量。
回答所涉及的環境:聯想天逸510S、Windows 10。
API安全網關具有以下功能:
安全認證:若用戶在控制臺配置了某個應用需要進行安全認證,網關在接收到該應用的請求時,就會進行基于簽名的安全認證,稱為App認證。App認證會根據請求的內容,使用應用的密鑰進行簽名。可以在控制臺進行查詢得知參與簽名的內容包括請求的路徑(Path)、請求參數(Query String)、網關需要的請求頭(Header)、調用方自定義的請求頭以及請求體(Body)。
授權檢測:調用方基于應用來調用API,發送請求到網關時需要傳遞請求頭AppId,網關會根據請求中的AppId來判斷該請求調用的API是否被授權,如果未被授權,則網關會拒絕該請求,返回報錯信息。服務方可以在網關控制臺授權API給應用App,調用方也可以通過購買來獲得API
訪問控制:服務方可以對API設置訪問控制,僅允許部分網段的請求,或者拒絕部分網關的請求。當服務方對某API配置了訪問控制,網關運行態在接收到該API的請求時,會判斷該請求的源IP地址,并根據服務方配置的訪問控制策略來判斷是否接收該請求的調用,如果不接收,則會拒絕該調用,并返回報錯信息。
參數映射:服務方可以對API輸入輸出參數進行定義,從而控制網關對請求的參數映射。當網關運行態接收到配置了參數映射的API的請求時,會對請求的輸入參數進行檢測,包括必填項檢測以及類型檢測。網關在轉發請求給服務方之前,會根據輸出參數的定義,修改請求的參數,包括入參映射以及常量映射。的調用權限。
后端簽名:安全認證可以保證調用方發給網關的請求安全,但是如果網關到服務端之間的網關是不可靠的,那么網關轉發請求給服務方時,請求仍然可能被篡改。如果要保證網關轉發給服務方的請求安全,服務方可以配置后端簽名,當網關接收到配置了后端簽名的API請求時,網關會按照類似安全認證中描述的方式計算簽名,放入請求頭中,再轉發給服務方。服務方接收到網關轉發的請求后,可以將計算的簽名和網關計算的簽名進行比較,從而判斷請求是否被篡改,進行身份驗證。
路由轉發:當網關根據服務方的配置處理完請求后,將請求轉發給服務方。當網關接收到服務方返回的響應后,進行調用統計等處理后就會將響應轉發給調用方,從而完成請求的調用。
流量控制:服務方可以配置流量控制,多維度控制API在單位時間內的調用次數。流量控制范圍可基于API設定單位時間內調用次數,也可基于用戶設定單位時間內調用API次數,還可基于應用App設定單位時間內調用次數。時間單位包括秒、分鐘,小時、天。
調用統計:網關運行態會對請求的調用情況進行統計,包括是否成功以及是否需要計費。這些統計信息可以在網關控制態查詢看到,從而了解API的調用情況,分析API的穩定性和調用量。
回答所涉及的環境:聯想天逸510S、Windows 10。