通過正常化路徑,使路徑表達成一種更高效、更清晰的標準化形式。本文介紹服務網格ASM的路徑正常化策略,以及如何配置路徑正常化策略。
背景資訊
在服務網格對請求的處理過程中,HTTP請求的路徑資訊至關重要。例如,您可能使用授權策略來為Kubernetes叢集中的工作負載提供安全保護,而在請求路徑沒有符合規範標準的情況下,請求可能意外地被網格代理拒絕,這可能會導致叢集內服務的安全問題。在服務網格ASM中,您可以通過配置路徑正常化策略來保證服務網格中HTTP請求的路徑始終保持統一規範,根據不同的策略選擇,HTTP請求路徑會被網格代理進行不同的正常化處理。
操作步驟
登入ASM控制台,在左側導覽列,選擇 。
在網格管理頁面,單擊目標執行個體名稱,在基本資料頁面,找到配置資訊下的路徑正常化策略,單擊右側的編輯。
在彈出的對話方塊中,選擇特定的路徑正常化策略,然後單擊確定以儲存。ASM的路徑正常化策略具體說明如下:
路徑正常化策略
策略說明
NONE
不進行路徑正常化。
BASE
參照RFC3986標準進行路徑正常化。例如,
/a/../b
會被正常化成/b
。MERGE_SLASHES
在BASE策略的基礎上對相鄰的斜杠進行合井。例如,
/a//b
會被正常化成/a/b
。DECODE_AND_MERGE_SLASHES
在MERGE_SLASHES策略的基礎上,路徑上的字元會首先進行UTF-8解碼、然後合并相鄰斜杠。這意味著
%2F
、%21
、%5C
、%5C
將被轉譯為/
和\
字元。例如/a%21/b
會被正常化為/a/b
。