全部產品
Search
文件中心

Intelligent Media Services:回調鑒權

更新時間:Sep 26, 2024

當回調方式為HTTP請求時,您可以通過在HTTP頭部增加鑒權參數,供回調訊息接收服務端進行簽名認證,防止非法或無效請求。通過閱讀本文,您可以瞭解鑒權參數、簽名計算、接收端校正規則和切換鑒權密鑰的詳情。

使用說明

您可以自行決定是否開啟回調鑒權(建議開啟),開啟或關閉回調鑒權不會影響原有功能。如果開啟回調鑒權,回調時會攜帶所有鑒權相關內容供訊息接收服務端進行鑒權使用,這樣可以有效過濾非法請求,增強系統安全性。

鑒權參數

在進行HTTP請求回調時,HTTP頭部增加以下鑒權參數:

參數

描述

X-ICE-TIMESTAMP

HTTP請求發起時間,用UNIX時間戳記表示。

X-ICE-SIGNATURE

簽名字串,用32位MD5值表示,演算法請參見下文。

計算簽名字串

計算X-ICE-SIGNATURE時,需要依賴以下欄位:

欄位

描述

樣本

回調URL

HTTP請求回調地址。

https://www.example.com/your/callback

X-ICE-TIMESTAMP

HTTP請求發起時間,使用UNIX時間戳記表示。

1519375990

鑒權密鑰

使用者預設的簽名Key,最長32位,必須同時包含大小寫字母和數字。

Test123

將上述三個欄位以豎線(|)拼接,再計算MD5值:

MD5Content = 回調URL|X-ICE-TIMESTAMP|鑒權密鑰
X-ICE-SIGNATURE = md5sum(MD5Content)

X-ICE-SIGNATURE計算樣本如下:

X-ICE-SIGNATURE = md5sum(https://www.example.com/your/callback|1519375990|Test123) = c72b60894140fa98920f1279219b****

回調訊息接收端校正規則

  • 回調訊息接收端將設定的回調URL、X-ICE-TIMESTAMP和鑒權密鑰字串進行拼接,然後進行MD5值計算並得到加密串,再將加密串與X-ICE-SIGNATURE欄位進行對比,如果不一致,則表示非法請求。

  • 回調訊息接收端擷取目前時間,與回調請求所帶的X-ICE-TIMESTAMP欄位時間相減,如果值超過服務端所設定的指定時間(例如5分鐘,由服務端自訂),則表示該請求無效。

切換鑒權密鑰

如果您需要切換鑒權密鑰,為了保證回調功能不受影響,訊息接收服務端需要在一段時間內相容新舊鑒權密鑰進行平滑切換,此操作由服務方完成。建議操作順序如下:

  1. 定義新鑒權密鑰。

  2. 升級回調訊息接收服務端,從而相容新舊鑒權密鑰的鑒權。

  3. 控制台回調鑒權地區更新鑒權密鑰

  4. 觀察一段時間後,回調訊息接收服務端刪除對原來舊鑒權密鑰的相容,完成切換。