授权策略条件

此页面描述了您可以在 授权策略规则when 字段中用作条件的支持的键和值格式。

有关更多信息,请参阅 授权概念页面

支持的条件

名称描述支持的协议示例
request.headersHTTP 请求标头。标头名称用 [] 括起来,不带任何引号仅限 HTTPkey: request.headers[User-Agent]
values: ["Mozilla/*"]
source.ip源工作负载实例 IP 地址,支持单个 IP 或 CIDRHTTP 和 TCPkey: source.ip
values: ["10.1.2.3", "10.2.0.0/16"]
remote.ip由 X-Forwarded-For 标头或代理协议确定的原始客户端 IP 地址,支持单个 IP 或 CIDRHTTP 和 TCPkey: remote.ip
values: ["10.1.2.3", "10.2.0.0/16"]
source.namespace源工作负载实例命名空间,需要启用双向 TLSHTTP 和 TCPkey: source.namespace
values: ["default"]
source.principal源工作负载的身份,需要启用双向 TLSHTTP 和 TCPkey: source.principal
values: ["cluster.local/ns/default/sa/productpage"]
request.auth.principal已认证 JWT 令牌的主体,以 <iss>/<sub> 格式从 JWT 声明构建,需要应用请求身份验证策略仅限 HTTPkey: request.auth.principal
values: ["issuer.example.com/subject-admin"]
request.auth.audiences已认证 JWT 令牌的目标受众,从 JWT 声明 <aud> 构建,需要应用请求身份验证策略仅限 HTTPkey: request.auth.audiences
值: ["example.com"]
request.auth.presenter经过身份验证的 JWT 令牌的授权展示者,由 JWT 声明 <azp> 构建,需要应用请求身份验证策略仅限 HTTP键: request.auth.presenter
值: ["123456789012.example.com"]
request.auth.claims经过身份验证的 JWT 令牌的原始声明。声明名称用 [] 括起来,不带任何引号,也可以使用嵌套声明,需要应用请求身份验证策略。注意仅支持字符串类型或字符串列表类型的声明仅限 HTTP键: request.auth.claims[iss]
值: ["*@foo.com"]

键: request.auth.claims[nested1][nested2]
值: ["some-value"]
destination.ip目标工作负载实例 IP 地址,支持单个 IP 或 CIDRHTTP 和 TCP键: destination.ip
values: ["10.1.2.3", "10.2.0.0/16"]
destination.port目标工作负载实例端口,必须在 [0, 65535] 范围内。注意,这不是服务端口HTTP 和 TCP键: destination.port
值: ["80", "443"]
connection.sni服务器名称指示,需要启用 TLSHTTP 和 TCP键: connection.sni
值: ["www.example.com"]
experimental.envoy.filters.*过滤器实验性元数据匹配,用 [] 括起来的值作为列表匹配HTTP 和 TCP键: experimental.envoy.filters.network.mysql_proxy[db.table]
值: ["[update]"]
此信息是否有用?
您是否有任何改进建议?

感谢您的反馈!