package envoy.extensions.transport_sockets.tls.v3

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

message CertificateProviderPluginInstance

common.proto:315

Indicates a certificate to be obtained from a named CertificateProvider plugin instance. The plugin instances are defined in the client's bootstrap file. The plugin allows certificates to be fetched/refreshed over the network asynchronously with respect to the TLS handshake. [#not-implemented-hide:]

Used in: CertificateValidationContext, CommonTlsContext

message CertificateValidationContext

common.proto:373

[#next-free-field: 18]

Used in: CommonTlsContext, CommonTlsContext.CombinedCertificateValidationContext, Secret

message CertificateValidationContext.SystemRootCerts

common.proto:388

Used in: CertificateValidationContext

(message has no fields)

enum CertificateValidationContext.TrustChainVerification

common.proto:378

Peer certificate verification mode.

Used in: CertificateValidationContext

message CommonTlsContext

tls.proto:188

TLS context shared by both client and server TLS contexts. [#next-free-field: 17]

Used in: DownstreamTlsContext, UpstreamTlsContext

message CommonTlsContext.CertificateProvider

tls.proto:199

Config for the Certificate Provider to fetch certificates. Certificates are fetched/refreshed asynchronously over the network relative to the TLS handshake. DEPRECATED: This message is not currently used, but if we ever do need it, we will want to move it out of CommonTlsContext and into common.proto, similar to the existing CertificateProviderPluginInstance message. [#not-implemented-hide:]

Used in: CommonTlsContext, CombinedCertificateValidationContext

message CommonTlsContext.CertificateProviderInstance

tls.proto:224

Similar to CertificateProvider above, but allows the provider instances to be configured on the client side instead of being sent from the control plane. DEPRECATED: This message was moved outside of CommonTlsContext and now lives in common.proto. [#not-implemented-hide:]

Used in: CommonTlsContext, CombinedCertificateValidationContext

message CommonTlsContext.CombinedCertificateValidationContext

tls.proto:242

Used in: CommonTlsContext

message DownstreamTlsContext

tls.proto:88

[#next-free-field: 12]

Used in: quic.v3.QuicDownstreamTransport, starttls.v3.StartTlsConfig

enum DownstreamTlsContext.OcspStaplePolicy

tls.proto:92

Used in: DownstreamTlsContext

message GenericSecret

secret.proto:22

Used in: Secret

message PrivateKeyProvider

common.proto:187

BoringSSL private key method configuration. The private key methods are used for external (potentially asynchronous) signing and decryption operations. Some use cases for private key methods would be TPM support and TLS acceleration.

Used in: TlsCertificate

message SPIFFECertValidatorConfig

tls_spiffe_validator_config.proto:48

Configuration specific to the `SPIFFE <https://github.com/spiffe/spiffe>`_ certificate validator. Example: .. validated-code-block:: yaml :type-name: envoy.extensions.transport_sockets.tls.v3.CertificateValidationContext 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: foo.com trust_bundle: filename: "foo.pem" - name: envoy.com trust_bundle: filename: "envoy.pem" In this example, a presented peer certificate whose SAN matches ``spiffe://foo.com/**`` is validated against the "foo.pem" x.509 certificate. All the trust bundles are isolated from each other, so no trust domain can mint a SVID belonging to another trust domain. That means, in this example, a SVID signed by ``envoy.com``'s CA with ``spiffe://foo.com/**`` SAN would be rejected since Envoy selects the trust bundle according to the presented SAN before validate the certificate. Note that SPIFFE validator inherits and uses the following options from :ref:`CertificateValidationContext <envoy_v3_api_msg_extensions.transport_sockets.tls.v3.CertificateValidationContext>`. - :ref:`allow_expired_certificate <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.allow_expired_certificate>` to allow expired certificates. - :ref:`match_typed_subject_alt_names <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.match_typed_subject_alt_names>` to match **URI** SAN of certificates. Unlike the default validator, SPIFFE validator only matches **URI** SAN (which equals to SVID in SPIFFE terminology) and ignore other SAN types.

message SPIFFECertValidatorConfig.TrustDomain

tls_spiffe_validator_config.proto:49

Used in: SPIFFECertValidatorConfig

message SdsSecretConfig

secret.proto:34

Used in: filters.http.oauth2.v3.OAuth2Credentials, http.injected_credentials.generic.v3.Generic, http.injected_credentials.oauth2.v3.OAuth2.ClientCredentials, quic.connection_id_generator.quic_lb.v3.Config, CommonTlsContext, CommonTlsContext.CombinedCertificateValidationContext, DownstreamTlsContext

message Secret

secret.proto:46

[#next-free-field: 6]

Used in: config.bootstrap.v3.Bootstrap.StaticResources

message SubjectAltNameMatcher

common.proto:331

Matcher for subject alternative names, to match both type and value of the SAN.

Used in: rbac.principals.mtls_authenticated.v3.Config, CertificateValidationContext

enum SubjectAltNameMatcher.SanType

common.proto:334

Indicates the choice of GeneralName as defined in section 4.2.1.5 of RFC 5280 to match against.

Used in: SubjectAltNameMatcher

message TlsCertificate

common.proto:211

[#next-free-field: 9]

Used in: CommonTlsContext, Secret

message TlsKeyLog

tls.proto:175

TLS key log configuration. The key log file format is "format used by NSS for its SSLKEYLOGFILE debugging output" (text taken from openssl man page)

Used in: CommonTlsContext

message TlsParameters

common.proto:28

[#next-free-field: 7]

Used in: CommonTlsContext

enum TlsParameters.CompliancePolicy

common.proto:48

Used in: TlsParameters

enum TlsParameters.TlsProtocol

common.proto:31

Used in: TlsParameters

message TlsSessionTicketKeys

common.proto:279

Used in: DownstreamTlsContext, Secret

message UpstreamTlsContext

tls.proto:29

[#next-free-field: 8]

Used in: quic.v3.QuicUpstreamTransport, starttls.v3.UpstreamStartTlsConfig