使用云原生網關實現后端訪問簽名
更新時間 2024-09-19 09:53:33
最近更新時間: 2024-09-19 09:53:33
分享文章
本章節介紹如何使用云原生網關實現后端訪問簽名
概述
后端訪問簽名功能支持您在后端服務中開啟身份認證后,填寫設定的一對Access Key和Secret Key,并根據選擇的認證算法和加密算法,以及加密Headers列表,計算出相應的簽名信息。當通過網關請求該服務時,會將該服務的簽名信息設置在Header請求頭中,從而后端服務對比網關的簽名和服務器端計算的簽名是否一致進行身份驗證與鑒權。
前提
- 已開通云原生網關實例
- 已部署能夠進行驗證Header簽名信息的后端服務
網關中實現后端訪問簽名
- 部署服務,可選擇容器部署、Nacos注冊或固定地址。
- 進入服務詳情。
- 后端訪問簽名欄點擊編輯。
- 打開 開啟身份認證開關。
- 選擇認證算法(目前云原生網關只支持Hmac算法,后續將支持更多算法),填寫加密關鍵信息。
- 點擊保存。
- 為該服務創建路由。
- 請求路由。

其中,Hmac認證算法的關鍵屬性如下:
| 名稱 | 描述 |
|---|---|
| Access Key | 唯一標識符。 |
| Secret Key | 與Access Key配對使用。 |
| 加密算法 | 支持hmac-sha1,hmac-sha256和hmac-sha512三種加密算法。 |
| 加密Headers列表 | 要在加密計算中使用的headers 列表。指定后客戶端請求只能在此范圍內指定 headers,如果未指定,就會在所有客戶端請求指定的 headers 加入加密計算。 |
| URL參數編碼 | 當設置為是時,將對簽名中的URI參數進行編碼,默認為是。 |
結果驗證
在服務中開啟并配置后端訪問簽名后,請求路由,網關會在轉發給后端服務的Header頭X-HMAC-SIGNATURE中攜帶簽名信息。

注意
- 當創建多服務路由或標簽路由時,僅支持以下情況:
- 全部服務配置了相同的后端訪問簽名配置。
- 只有其中一個后端服務配置了后端訪問配置。
- 全部服務都沒有配置后端訪問簽名配置。
如果多服務路由或標簽路由中選擇的服務中配置了不同的后端訪問簽名配置,則無法創建。
- 當配置了后端訪問簽名配置的服務已經在多服務路由或標簽路由中引用時,則不允許修改配置信息。若要修改,請先刪除該路由。
