自定義授權服務策略
更新時間 2025-02-21 10:08:00
最近更新時間: 2025-02-21 10:08:00
分享文章
服務網格支持集成外部授權服務,通過自定義授權服務策略,您可以輕松定義自定義的外部授權服務并將策略應用到網格數據面,實現靈活的安全管控能力。
策略配置說明
| 配置項 | 說明 |
|---|---|
| 安全策略名稱 | 策略名稱 |
| 協議 | HTTP和GRPC協議的外部授權服務 |
| 服務地址 | 實現了Envoy ext_authz授權接口的服務名稱,如ext-auth.default.svc.cluster.local |
| 服務端口 | 授權服務端口 |
| 超時時間 | 數據面請求外部授權服務的超時時間,如1s,2.5s |
| 鑒權服務不可用時放行請求 | 訪問鑒權服務失敗或者鑒權服務返回5XX狀態碼時是否放行請求,默認關閉 |
| 鑒權服務不可用自定義錯誤碼 | 請求鑒權服務出現網絡錯誤時返回自定義狀態碼 |
| 在鑒權請求中攜帶請求Body | 是否將請求Body帶到鑒權服務 |
| 鑒權請求攜帶Body的最大長度(Byte) | 允許攜帶到鑒權服務的Body最大長度 |
| 允許將不完整消息發送至鑒權服務 | 在請求Body超出最大長度限制時,若不啟用該選項則將拒絕請求并返回HTTP 413 |
| 在鑒權請求中攜帶header | 指定將請求中的部分Header帶到鑒權服務 |
| 在鑒權請求中新增header | 請求鑒權服務時新增Header |
| 在鑒權通過時覆蓋Header | 鑒權通過時使用鑒權服務返回的Header覆蓋原始請求Header訪問上游 |
| 鑒權失敗時覆蓋Header | 鑒權通過時使用鑒權服務返回的Header覆蓋應答Header返回給下游 |
策略綁定
策略生效粒度
當前支持命名空間、服務、工作負載、網關的生效粒度配置,說明如下
| 生效粒度 | 說明 |
|---|---|
| 命名空間 | 策略下發到所選擇命名空間下所有數據面 |
| 服務 | 策略下發到所選服務關聯的工作負載數據面 |
| 工作負載 | 策略下發到指定工作負載的數據面 |
| 網關 | 策略下發到網關 |
請求匹配規則
支持基于請求特征匹配決定是否執行當前策略,支持的匹配項及說明如下
| 匹配項 | 說明 |
|---|---|
| HTTP域名(Host) | 匹配一組請求的域名 |
| HTTP路徑(Path) | 匹配一組請求路徑 |
| HTTP方法(Method) | 匹配一組請求的HTTP Method |
| 端口(Port) | 匹配一組請求的目標服務端口 |
說明域名和路徑匹配支持以下匹配模式
精確匹配:如abc匹配abc字符串
前綴匹配:abc*匹配abc、abcd、abce等
后綴匹配:*abc匹配abc、xabc、zabc等
存在匹配:*匹配所有非空值
請求匹配支持黑白名單模式
黑名單模式:選中請求必須執行認證策略
白名單模式:選中請求跳過認證策略,其他請求需要執行策略