授權策略條件

本頁描述您可以在授權策略規則when 欄位中使用的支援的鍵和值格式,作為條件。

如需更多資訊,請參閱授權概念頁面

支援的條件

名稱描述支援的協定範例
request.headersHTTP 請求標頭。標頭名稱以 [] 包圍,不帶任何引號僅限 HTTP鍵:request.headers[User-Agent]
值:["Mozilla/*"]
source.ip來源工作負載實例 IP 位址,支援單一 IP 或 CIDRHTTP 和 TCP鍵:source.ip
值:["10.1.2.3", "10.2.0.0/16"]
remote.ip由 X-Forwarded-For 標頭或 Proxy Protocol 決定的原始用戶端 IP 位址,支援單一 IP 或 CIDRHTTP 和 TCP鍵:remote.ip
值:["10.1.2.3", "10.2.0.0/16"]
source.namespace來源工作負載實例命名空間,需要啟用相互 TLSHTTP 和 TCP鍵:source.namespace
值:["default"]
source.principal來源工作負載的身份,需要啟用相互 TLSHTTP 和 TCPkey: source.principal
values: ["cluster.local/ns/default/sa/productpage"]
request.auth.principal已驗證 JWT 權杖的主體(principal),由 JWT 聲明 (claims) 以 <iss>/<sub> 格式構成,需要套用請求驗證策略。僅限 HTTPkey: request.auth.principal
values: ["issuer.example.com/subject-admin"]
request.auth.audiences已驗證 JWT 權杖的目標受眾,由 JWT 聲明 <aud> 構成,需要套用請求驗證策略。僅限 HTTPkey: request.auth.audiences
values: ["example.com"]
request.auth.presenter已驗證 JWT 權杖的授權呈現者 (presenter),由 JWT 聲明 <azp> 構成,需要套用請求驗證策略。僅限 HTTPkey: request.auth.presenter
values: ["123456789012.example.com"]
request.auth.claims已驗證 JWT 權杖的原始聲明 (raw claims)。聲明名稱用 [] 包裹,不加任何引號,也可以使用巢狀聲明,需要套用請求驗證策略。注意僅支援字串類型或字串列表類型的聲明。僅限 HTTPkey: request.auth.claims[iss]
values: ["*@foo.com"]

key: request.auth.claims[nested1][nested2]
values: ["some-value"]
destination.ip目標工作負載實例的 IP 位址,支援單個 IP 或 CIDR。HTTP 和 TCPkey: destination.ip
值:["10.1.2.3", "10.2.0.0/16"]
destination.port目標工作負載實例的埠號,必須在 [0, 65535] 範圍內。請注意,這不是服務埠。HTTP 和 TCPkey: destination.port
values: ["80", "443"]
connection.sni伺服器名稱指示 (Server Name Indication, SNI),需要啟用 TLS。HTTP 和 TCPkey: connection.sni
values: ["www.example.com"]
experimental.envoy.filters.*用於過濾器的實驗性中繼資料匹配,用 [] 包裹的值會被匹配為列表。HTTP 和 TCPkey: experimental.envoy.filters.network.mysql_proxy[db.table]
values: ["[update]"]
此資訊是否對您有幫助?
您有任何改進建議嗎?

感謝您的回饋!