网络外部授权(proto)

此扩展的限定名称为 envoy.filters.network.ext_authz

注意

此扩展旨在对不受信任的下游流量具有鲁棒性。它假定上游是可信的。

提示

此扩展扩展并可用于以下扩展类别

此扩展必须使用以下类型 URL 之一配置

网络层外部授权服务配置 配置概述.

extensions.filters.network.ext_authz.v3.ExtAuthz

[extensions.filters.network.ext_authz.v3.ExtAuthz proto]

外部授权过滤器通过 CheckRequest 定义的 gRPC 授权 API 向外部服务发出调用。检查失败将导致此过滤器关闭 TCP 连接。

{
  "stat_prefix": ...,
  "grpc_service": {...},
  "failure_mode_allow": ...,
  "include_peer_certificate": ...,
  "transport_api_version": ...,
  "filter_enabled_metadata": {...},
  "bootstrap_metadata_labels_key": ...,
  "include_tls_session": ...
}
stat_prefix

(string, REQUIRED) 用于发出统计信息的词缀。

grpc_service

(config.core.v3.GrpcService) 外部授权 gRPC 服务配置。此过滤器将默认超时设置为 200 毫秒。

failure_mode_allow

(bool) 过滤器在外部授权服务没有响应的情况下的行为。当它设置为 true 时,Envoy 也会在授权服务和代理之间的通信失败的情况下允许流量。默认为 false。

include_peer_certificate

(bool) 指定是否将对等证书发送到外部服务。

当此字段为 true 时,Envoy 将在 certificate 中包含对等 X.509 证书(如果可用)。

transport_api_version

(config.core.v3.ApiVersion) ext_authz 传输协议的 API 版本。这描述了 ext_authz gRPC 端点和在线程上使用的 Check{Request,Response} 版本。

filter_enabled_metadata

(type.matcher.v3.MetadataMatcher) 指定过滤器是否使用元数据匹配器启用。如果未指定此字段,则过滤器将为所有请求启用。

bootstrap_metadata_labels_key

(string) 将传递给 labels 的可选标签 destination 中。标签将使用指定的键从 metadata 中读取。

include_tls_session

(bool) 指定是否将 TLS 会话级详细信息(如 SNI)发送到外部服务。

当此字段为 true 时,Envoy 将在 tls_session 中包含用于 TLSClientHello 的 SNI 名称(如果可用)。