istio.io/content/zh/docs/reference/config/security/conditions/index.md

4.2 KiB
Raw Blame History

title description weight aliases owner test
授权策略 授权策略中支持的条件。 30
/zh/docs/reference/config/security/conditions/
istio/wg-security-maintainers n/a

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

{{< warning >}} 不支持的键和值将被忽略。 {{< /warning >}}

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

支持条件

名称 描述 支持的协议 示例
request.headers HTTP 请求头,需要用 [] 括起来 HTTP only key: request.headers[User-Agent]
values: ["Mozilla/*"]
source.ip IP 地址,支持单个 IPCIDR HTTP and TCP key: source.ip
values: ["10.1.2.3"]
remote.ip X-Forwarded-For 请求头或代理协议确定的原始客户端 IP 地址,支持单个 IP 或 CIDR HTTP and TCP key: remote.ip
values: ["10.1.2.3", "10.2.0.0/16"]
source.namespace 源负载实例命名空间,需启用双向 TLS HTTP and TCP key: source.namespace
values: ["default"]
source.principal 源负载的标识,需启用双向 TLS HTTP and TCP key: source.principal
values: ["cluster.local/ns/default/sa/productpage"]
request.auth.principal 已认证过 principal 的请求。 HTTP only key: request.auth.principal
values: ["accounts.my-svc.com/104958560606"]
request.auth.audiences 此身份验证信息的目标主体 HTTP only key: request.auth.audiences
values: ["my-svc.com"]
request.auth.presenter 证书的颁发者 HTTP only key: request.auth.presenter
values: ["123456789012.my-svc.com"]
request.auth.claims Claims 来源于 JWT。需要用 [] 括起来 HTTP only key: request.auth.claims[iss]
values: ["*@foo.com"]
destination.ip 目标 IP 地址,支持单个 IPCIDR HTTP and TCP key: destination.ip
values: ["10.1.2.3", "10.2.0.0/16"]
destination.port 目标 IP 地址上的端口,必须在 [065535] 范围内 HTTP and TCP key: destination.port
values: ["80", "443"]
connection.sni 服务器名称指示,需启用双向 TLS HTTP and TCP key: connection.sni
values: ["www.example.com"]
experimental.envoy.filters.* 用于过滤器的实验性元数据匹配,包装的值 [] 作为列表匹配 HTTP and TCP key: experimental.envoy.filters.network.mysql_proxy[db.table]
values: ["[update]"]

{{< warning >}} 无法保证 experimental.* 密钥向后的兼容性,可以随时将它们删除,但是须要谨慎操作。 {{< /warning >}}