envoyproxy/envoy

Duplicate custom_cert_validator config is not shared across all users

Open

#38,693 创建于 2025年3月10日

在 GitHub 查看
 (2 评论) (0 反应) (0 负责人)C++ (5,373 fork)batch import
area/certificatesarea/configurationenhancementhelp wanted

仓库指标

Star
 (27,997 star)
PR 合并指标
 (平均合并 8天) (30 天内合并 378 个 PR)

描述

custom_cert_validator creates duplicate objects for every cluster / listener using it

Description: A proxy processing 100+ clusters takes up to 10 seconds to start up because it has to reload the same custom_cert_validator config being used by all of them.

Repro steps: Configure multiple clusters / listeners with the same custom_validator_config. Each one will be initialized with a unique copy of the config, and each unique copy will be fully processed independently.

Config: This validation context being used by multiple clusters. You can see from the debug logs that it is being parsed N times.

          validation_context:
            custom_validator_config:
              name: envoy.tls.cert_validator.spiffe
              typed_config:
                "@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.SPIFFECertValidatorConfig
                trust_domains:
                - name: example.org
                  trust_bundle:
                    filename: "<bundle>"

贡献者指南