配置EnvoyFilter以在Istio中转发客户端证书

时间:2020-08-04 05:28:25

标签: kubernetes kubernetes-ingress istio envoyproxy

这是我的配置(从github的XFCC常见示例中引用):

apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
  name: xfcc-forward
  namespace: istio-system
spec:
  configPatches:
  - applyTo: NETWORK_FILTER
    match:
      context: GATEWAY
      listener:
        filterChain:
          filter:
            name: "envoy.http_connection_manager"
    patch:
      operation: MERGE
      value:
        typed_config:
          "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager"
          forward_client_cert_details: ALWAYS_FORWARD_ONLY
          set_current_client_cert_details:
            subject: true
            cert: true
            chain: true

一对问题:

  1. 我的IngressGateway是在自定义名称空间“ X”中配置的,是否也应该在该名称空间中配置EnvoyFilter?还是默认?或Istio-System

  2. 我有一个场景,集群外的客户端调用我的API并在标头中传递证书(我正在网关上进行TLS终止,并配置了全局mtls和ISTIO_MUTUAL客户端),我需要将该证书传递给我在集群中的服务。不幸的是,使用上述配置,XFCC标头仅包含城堡提供的内部证书的证书详细信息,而不包含客户端的证书。我在这里缺少基本的东西吗?

提前谢谢!

0 个答案:

没有答案