Class CertificateValidationContext
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite
-
- com.google.protobuf.AbstractMessage
-
- com.google.protobuf.GeneratedMessageV3
-
- io.envoyproxy.envoy.extensions.transport_sockets.tls.v3.CertificateValidationContext
-
- All Implemented Interfaces:
com.google.protobuf.Message
,com.google.protobuf.MessageLite
,com.google.protobuf.MessageLiteOrBuilder
,com.google.protobuf.MessageOrBuilder
,CertificateValidationContextOrBuilder
,Serializable
public final class CertificateValidationContext extends com.google.protobuf.GeneratedMessageV3 implements CertificateValidationContextOrBuilder
[#next-free-field: 17]
Protobuf typeenvoy.extensions.transport_sockets.tls.v3.CertificateValidationContext
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CertificateValidationContext.Builder
[#next-free-field: 17]static class
CertificateValidationContext.TrustChainVerification
Peer certificate verification mode.-
Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageV3
com.google.protobuf.GeneratedMessageV3.BuilderParent, com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage,BuilderType extends com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageType,BuilderType>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage>, com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage>, com.google.protobuf.GeneratedMessageV3.FieldAccessorTable, com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter
-
-
Field Summary
Fields Modifier and Type Field Description static int
ALLOW_EXPIRED_CERTIFICATE_FIELD_NUMBER
static int
CA_CERTIFICATE_PROVIDER_INSTANCE_FIELD_NUMBER
static int
CRL_FIELD_NUMBER
static int
CUSTOM_VALIDATOR_CONFIG_FIELD_NUMBER
static int
MATCH_SUBJECT_ALT_NAMES_FIELD_NUMBER
static int
MATCH_TYPED_SUBJECT_ALT_NAMES_FIELD_NUMBER
static int
MAX_VERIFY_DEPTH_FIELD_NUMBER
static int
ONLY_VERIFY_LEAF_CERT_CRL_FIELD_NUMBER
static int
REQUIRE_SIGNED_CERTIFICATE_TIMESTAMP_FIELD_NUMBER
static int
TRUST_CHAIN_VERIFICATION_FIELD_NUMBER
static int
TRUSTED_CA_FIELD_NUMBER
static int
VERIFY_CERTIFICATE_HASH_FIELD_NUMBER
static int
VERIFY_CERTIFICATE_SPKI_FIELD_NUMBER
static int
WATCHED_DIRECTORY_FIELD_NUMBER
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description boolean
equals(Object obj)
boolean
getAllowExpiredCertificate()
If specified, Envoy will not reject expired certificates.CertificateProviderPluginInstance
getCaCertificateProviderInstance()
Certificate provider instance for fetching TLS certificates.CertificateProviderPluginInstanceOrBuilder
getCaCertificateProviderInstanceOrBuilder()
Certificate provider instance for fetching TLS certificates.DataSource
getCrl()
An optional `certificate revocation list <https://en.wikipedia.org/wiki/Certificate_revocation_list>`_ (in PEM format).DataSourceOrBuilder
getCrlOrBuilder()
An optional `certificate revocation list <https://en.wikipedia.org/wiki/Certificate_revocation_list>`_ (in PEM format).TypedExtensionConfig
getCustomValidatorConfig()
The configuration of an extension specific certificate validator.TypedExtensionConfigOrBuilder
getCustomValidatorConfigOrBuilder()
The configuration of an extension specific certificate validator.static CertificateValidationContext
getDefaultInstance()
CertificateValidationContext
getDefaultInstanceForType()
static com.google.protobuf.Descriptors.Descriptor
getDescriptor()
StringMatcher
getMatchSubjectAltNames(int index)
Deprecated.int
getMatchSubjectAltNamesCount()
Deprecated.List<StringMatcher>
getMatchSubjectAltNamesList()
Deprecated.StringMatcherOrBuilder
getMatchSubjectAltNamesOrBuilder(int index)
Deprecated.List<? extends StringMatcherOrBuilder>
getMatchSubjectAltNamesOrBuilderList()
Deprecated.SubjectAltNameMatcher
getMatchTypedSubjectAltNames(int index)
An optional list of Subject Alternative name matchers.int
getMatchTypedSubjectAltNamesCount()
An optional list of Subject Alternative name matchers.List<SubjectAltNameMatcher>
getMatchTypedSubjectAltNamesList()
An optional list of Subject Alternative name matchers.SubjectAltNameMatcherOrBuilder
getMatchTypedSubjectAltNamesOrBuilder(int index)
An optional list of Subject Alternative name matchers.List<? extends SubjectAltNameMatcherOrBuilder>
getMatchTypedSubjectAltNamesOrBuilderList()
An optional list of Subject Alternative name matchers.com.google.protobuf.UInt32Value
getMaxVerifyDepth()
Defines maximum depth of a certificate chain accepted in verification, the default limit is 100, though this can be system-dependent.com.google.protobuf.UInt32ValueOrBuilder
getMaxVerifyDepthOrBuilder()
Defines maximum depth of a certificate chain accepted in verification, the default limit is 100, though this can be system-dependent.boolean
getOnlyVerifyLeafCertCrl()
If this option is set to true, only the certificate at the end of the certificate chain will be subject to validation by :ref:`CRL <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.crl>`.com.google.protobuf.Parser<CertificateValidationContext>
getParserForType()
com.google.protobuf.BoolValue
getRequireSignedCertificateTimestamp()
[#not-implemented-hide:] Must present signed certificate time-stamp.com.google.protobuf.BoolValueOrBuilder
getRequireSignedCertificateTimestampOrBuilder()
[#not-implemented-hide:] Must present signed certificate time-stamp.int
getSerializedSize()
CertificateValidationContext.TrustChainVerification
getTrustChainVerification()
Certificate trust chain verification mode.int
getTrustChainVerificationValue()
Certificate trust chain verification mode.DataSource
getTrustedCa()
TLS certificate data containing certificate authority certificates to use in verifying a presented peer certificate (e.g. server certificate for clusters or client certificate for listeners).DataSourceOrBuilder
getTrustedCaOrBuilder()
TLS certificate data containing certificate authority certificates to use in verifying a presented peer certificate (e.g. server certificate for clusters or client certificate for listeners).com.google.protobuf.UnknownFieldSet
getUnknownFields()
String
getVerifyCertificateHash(int index)
An optional list of hex-encoded SHA-256 hashes.com.google.protobuf.ByteString
getVerifyCertificateHashBytes(int index)
An optional list of hex-encoded SHA-256 hashes.int
getVerifyCertificateHashCount()
An optional list of hex-encoded SHA-256 hashes.com.google.protobuf.ProtocolStringList
getVerifyCertificateHashList()
An optional list of hex-encoded SHA-256 hashes.String
getVerifyCertificateSpki(int index)
An optional list of base64-encoded SHA-256 hashes.com.google.protobuf.ByteString
getVerifyCertificateSpkiBytes(int index)
An optional list of base64-encoded SHA-256 hashes.int
getVerifyCertificateSpkiCount()
An optional list of base64-encoded SHA-256 hashes.com.google.protobuf.ProtocolStringList
getVerifyCertificateSpkiList()
An optional list of base64-encoded SHA-256 hashes.WatchedDirectory
getWatchedDirectory()
If specified, updates of a file-based ``trusted_ca`` source will be triggered by this watch.WatchedDirectoryOrBuilder
getWatchedDirectoryOrBuilder()
If specified, updates of a file-based ``trusted_ca`` source will be triggered by this watch.boolean
hasCaCertificateProviderInstance()
Certificate provider instance for fetching TLS certificates.boolean
hasCrl()
An optional `certificate revocation list <https://en.wikipedia.org/wiki/Certificate_revocation_list>`_ (in PEM format).boolean
hasCustomValidatorConfig()
The configuration of an extension specific certificate validator.int
hashCode()
boolean
hasMaxVerifyDepth()
Defines maximum depth of a certificate chain accepted in verification, the default limit is 100, though this can be system-dependent.boolean
hasRequireSignedCertificateTimestamp()
[#not-implemented-hide:] Must present signed certificate time-stamp.boolean
hasTrustedCa()
TLS certificate data containing certificate authority certificates to use in verifying a presented peer certificate (e.g. server certificate for clusters or client certificate for listeners).boolean
hasWatchedDirectory()
If specified, updates of a file-based ``trusted_ca`` source will be triggered by this watch.protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()
boolean
isInitialized()
static CertificateValidationContext.Builder
newBuilder()
static CertificateValidationContext.Builder
newBuilder(CertificateValidationContext prototype)
CertificateValidationContext.Builder
newBuilderForType()
protected CertificateValidationContext.Builder
newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
protected Object
newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
static CertificateValidationContext
parseDelimitedFrom(InputStream input)
static CertificateValidationContext
parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static CertificateValidationContext
parseFrom(byte[] data)
static CertificateValidationContext
parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static CertificateValidationContext
parseFrom(com.google.protobuf.ByteString data)
static CertificateValidationContext
parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static CertificateValidationContext
parseFrom(com.google.protobuf.CodedInputStream input)
static CertificateValidationContext
parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static CertificateValidationContext
parseFrom(InputStream input)
static CertificateValidationContext
parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static CertificateValidationContext
parseFrom(ByteBuffer data)
static CertificateValidationContext
parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.protobuf.Parser<CertificateValidationContext>
parser()
CertificateValidationContext.Builder
toBuilder()
void
writeTo(com.google.protobuf.CodedOutputStream output)
-
Methods inherited from class com.google.protobuf.GeneratedMessageV3
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, hasField, hasOneof, internalGetMapField, isStringEmpty, makeExtensionsImmutable, mergeFromAndMakeImmutableInternal, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBooleanList, newBuilderForType, newDoubleList, newFloatList, newIntList, newLongList, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag
-
Methods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite
addAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
-
-
-
Field Detail
-
TRUSTED_CA_FIELD_NUMBER
public static final int TRUSTED_CA_FIELD_NUMBER
- See Also:
- Constant Field Values
-
CA_CERTIFICATE_PROVIDER_INSTANCE_FIELD_NUMBER
public static final int CA_CERTIFICATE_PROVIDER_INSTANCE_FIELD_NUMBER
- See Also:
- Constant Field Values
-
WATCHED_DIRECTORY_FIELD_NUMBER
public static final int WATCHED_DIRECTORY_FIELD_NUMBER
- See Also:
- Constant Field Values
-
VERIFY_CERTIFICATE_SPKI_FIELD_NUMBER
public static final int VERIFY_CERTIFICATE_SPKI_FIELD_NUMBER
- See Also:
- Constant Field Values
-
VERIFY_CERTIFICATE_HASH_FIELD_NUMBER
public static final int VERIFY_CERTIFICATE_HASH_FIELD_NUMBER
- See Also:
- Constant Field Values
-
MATCH_TYPED_SUBJECT_ALT_NAMES_FIELD_NUMBER
public static final int MATCH_TYPED_SUBJECT_ALT_NAMES_FIELD_NUMBER
- See Also:
- Constant Field Values
-
MATCH_SUBJECT_ALT_NAMES_FIELD_NUMBER
public static final int MATCH_SUBJECT_ALT_NAMES_FIELD_NUMBER
- See Also:
- Constant Field Values
-
REQUIRE_SIGNED_CERTIFICATE_TIMESTAMP_FIELD_NUMBER
public static final int REQUIRE_SIGNED_CERTIFICATE_TIMESTAMP_FIELD_NUMBER
- See Also:
- Constant Field Values
-
CRL_FIELD_NUMBER
public static final int CRL_FIELD_NUMBER
- See Also:
- Constant Field Values
-
ALLOW_EXPIRED_CERTIFICATE_FIELD_NUMBER
public static final int ALLOW_EXPIRED_CERTIFICATE_FIELD_NUMBER
- See Also:
- Constant Field Values
-
TRUST_CHAIN_VERIFICATION_FIELD_NUMBER
public static final int TRUST_CHAIN_VERIFICATION_FIELD_NUMBER
- See Also:
- Constant Field Values
-
CUSTOM_VALIDATOR_CONFIG_FIELD_NUMBER
public static final int CUSTOM_VALIDATOR_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
ONLY_VERIFY_LEAF_CERT_CRL_FIELD_NUMBER
public static final int ONLY_VERIFY_LEAF_CERT_CRL_FIELD_NUMBER
- See Also:
- Constant Field Values
-
MAX_VERIFY_DEPTH_FIELD_NUMBER
public static final int MAX_VERIFY_DEPTH_FIELD_NUMBER
- See Also:
- Constant Field Values
-
-
Method Detail
-
newInstance
protected Object newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
- Overrides:
newInstance
in classcom.google.protobuf.GeneratedMessageV3
-
getUnknownFields
public final com.google.protobuf.UnknownFieldSet getUnknownFields()
- Specified by:
getUnknownFields
in interfacecom.google.protobuf.MessageOrBuilder
- Overrides:
getUnknownFields
in classcom.google.protobuf.GeneratedMessageV3
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
- Specified by:
internalGetFieldAccessorTable
in classcom.google.protobuf.GeneratedMessageV3
-
hasTrustedCa
public boolean hasTrustedCa()
TLS certificate data containing certificate authority certificates to use in verifying a presented peer certificate (e.g. server certificate for clusters or client certificate for listeners). If not specified and a peer certificate is presented it will not be verified. By default, a client certificate is optional, unless one of the additional options (:ref:`require_client_certificate <envoy_v3_api_field_extensions.transport_sockets.tls.v3.DownstreamTlsContext.require_client_certificate>`, :ref:`verify_certificate_spki <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_spki>`, :ref:`verify_certificate_hash <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_hash>`, or :ref:`match_typed_subject_alt_names <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.match_typed_subject_alt_names>`) is also specified. It can optionally contain certificate revocation lists, in which case Envoy will verify that the presented peer certificate has not been revoked by one of the included CRLs. Note that if a CRL is provided for any certificate authority in a trust chain, a CRL must be provided for all certificate authorities in that chain. Failure to do so will result in verification failure for both revoked and unrevoked certificates from that chain. The behavior of requiring all certificates to contain CRLs can be altered by setting :ref:`only_verify_leaf_cert_crl <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.only_verify_leaf_cert_crl>` true. If set to true, only the final certificate in the chain undergoes CRL verification. See :ref:`the TLS overview <arch_overview_ssl_enabling_verification>` for a list of common system CA locations. If ``trusted_ca`` is a filesystem path, a watch will be added to the parent directory for any file moves to support rotation. This currently only applies to dynamic secrets, when the ``CertificateValidationContext`` is delivered via SDS. X509_V_FLAG_PARTIAL_CHAIN is set by default, so non-root/intermediate ca certificate in ``trusted_ca`` can be treated as trust anchor as well. It allows verification with building valid partial chain instead of a full chain. Only one of ``trusted_ca`` and ``ca_certificate_provider_instance`` may be specified. [#next-major-version: This field and watched_directory below should ideally be moved into a separate sub-message, since there's no point in specifying the latter field without this one.]
.envoy.config.core.v3.DataSource trusted_ca = 1 [(.udpa.annotations.field_migrate) = { ... }
- Specified by:
hasTrustedCa
in interfaceCertificateValidationContextOrBuilder
- Returns:
- Whether the trustedCa field is set.
-
getTrustedCa
public DataSource getTrustedCa()
TLS certificate data containing certificate authority certificates to use in verifying a presented peer certificate (e.g. server certificate for clusters or client certificate for listeners). If not specified and a peer certificate is presented it will not be verified. By default, a client certificate is optional, unless one of the additional options (:ref:`require_client_certificate <envoy_v3_api_field_extensions.transport_sockets.tls.v3.DownstreamTlsContext.require_client_certificate>`, :ref:`verify_certificate_spki <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_spki>`, :ref:`verify_certificate_hash <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_hash>`, or :ref:`match_typed_subject_alt_names <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.match_typed_subject_alt_names>`) is also specified. It can optionally contain certificate revocation lists, in which case Envoy will verify that the presented peer certificate has not been revoked by one of the included CRLs. Note that if a CRL is provided for any certificate authority in a trust chain, a CRL must be provided for all certificate authorities in that chain. Failure to do so will result in verification failure for both revoked and unrevoked certificates from that chain. The behavior of requiring all certificates to contain CRLs can be altered by setting :ref:`only_verify_leaf_cert_crl <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.only_verify_leaf_cert_crl>` true. If set to true, only the final certificate in the chain undergoes CRL verification. See :ref:`the TLS overview <arch_overview_ssl_enabling_verification>` for a list of common system CA locations. If ``trusted_ca`` is a filesystem path, a watch will be added to the parent directory for any file moves to support rotation. This currently only applies to dynamic secrets, when the ``CertificateValidationContext`` is delivered via SDS. X509_V_FLAG_PARTIAL_CHAIN is set by default, so non-root/intermediate ca certificate in ``trusted_ca`` can be treated as trust anchor as well. It allows verification with building valid partial chain instead of a full chain. Only one of ``trusted_ca`` and ``ca_certificate_provider_instance`` may be specified. [#next-major-version: This field and watched_directory below should ideally be moved into a separate sub-message, since there's no point in specifying the latter field without this one.]
.envoy.config.core.v3.DataSource trusted_ca = 1 [(.udpa.annotations.field_migrate) = { ... }
- Specified by:
getTrustedCa
in interfaceCertificateValidationContextOrBuilder
- Returns:
- The trustedCa.
-
getTrustedCaOrBuilder
public DataSourceOrBuilder getTrustedCaOrBuilder()
TLS certificate data containing certificate authority certificates to use in verifying a presented peer certificate (e.g. server certificate for clusters or client certificate for listeners). If not specified and a peer certificate is presented it will not be verified. By default, a client certificate is optional, unless one of the additional options (:ref:`require_client_certificate <envoy_v3_api_field_extensions.transport_sockets.tls.v3.DownstreamTlsContext.require_client_certificate>`, :ref:`verify_certificate_spki <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_spki>`, :ref:`verify_certificate_hash <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_hash>`, or :ref:`match_typed_subject_alt_names <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.match_typed_subject_alt_names>`) is also specified. It can optionally contain certificate revocation lists, in which case Envoy will verify that the presented peer certificate has not been revoked by one of the included CRLs. Note that if a CRL is provided for any certificate authority in a trust chain, a CRL must be provided for all certificate authorities in that chain. Failure to do so will result in verification failure for both revoked and unrevoked certificates from that chain. The behavior of requiring all certificates to contain CRLs can be altered by setting :ref:`only_verify_leaf_cert_crl <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.only_verify_leaf_cert_crl>` true. If set to true, only the final certificate in the chain undergoes CRL verification. See :ref:`the TLS overview <arch_overview_ssl_enabling_verification>` for a list of common system CA locations. If ``trusted_ca`` is a filesystem path, a watch will be added to the parent directory for any file moves to support rotation. This currently only applies to dynamic secrets, when the ``CertificateValidationContext`` is delivered via SDS. X509_V_FLAG_PARTIAL_CHAIN is set by default, so non-root/intermediate ca certificate in ``trusted_ca`` can be treated as trust anchor as well. It allows verification with building valid partial chain instead of a full chain. Only one of ``trusted_ca`` and ``ca_certificate_provider_instance`` may be specified. [#next-major-version: This field and watched_directory below should ideally be moved into a separate sub-message, since there's no point in specifying the latter field without this one.]
.envoy.config.core.v3.DataSource trusted_ca = 1 [(.udpa.annotations.field_migrate) = { ... }
- Specified by:
getTrustedCaOrBuilder
in interfaceCertificateValidationContextOrBuilder
-
hasCaCertificateProviderInstance
public boolean hasCaCertificateProviderInstance()
Certificate provider instance for fetching TLS certificates. Only one of ``trusted_ca`` and ``ca_certificate_provider_instance`` may be specified. [#not-implemented-hide:]
.envoy.extensions.transport_sockets.tls.v3.CertificateProviderPluginInstance ca_certificate_provider_instance = 13 [(.udpa.annotations.field_migrate) = { ... }
- Specified by:
hasCaCertificateProviderInstance
in interfaceCertificateValidationContextOrBuilder
- Returns:
- Whether the caCertificateProviderInstance field is set.
-
getCaCertificateProviderInstance
public CertificateProviderPluginInstance getCaCertificateProviderInstance()
Certificate provider instance for fetching TLS certificates. Only one of ``trusted_ca`` and ``ca_certificate_provider_instance`` may be specified. [#not-implemented-hide:]
.envoy.extensions.transport_sockets.tls.v3.CertificateProviderPluginInstance ca_certificate_provider_instance = 13 [(.udpa.annotations.field_migrate) = { ... }
- Specified by:
getCaCertificateProviderInstance
in interfaceCertificateValidationContextOrBuilder
- Returns:
- The caCertificateProviderInstance.
-
getCaCertificateProviderInstanceOrBuilder
public CertificateProviderPluginInstanceOrBuilder getCaCertificateProviderInstanceOrBuilder()
Certificate provider instance for fetching TLS certificates. Only one of ``trusted_ca`` and ``ca_certificate_provider_instance`` may be specified. [#not-implemented-hide:]
.envoy.extensions.transport_sockets.tls.v3.CertificateProviderPluginInstance ca_certificate_provider_instance = 13 [(.udpa.annotations.field_migrate) = { ... }
- Specified by:
getCaCertificateProviderInstanceOrBuilder
in interfaceCertificateValidationContextOrBuilder
-
hasWatchedDirectory
public boolean hasWatchedDirectory()
If specified, updates of a file-based ``trusted_ca`` source will be triggered by this watch. This allows explicit control over the path watched, by default the parent directory of the filesystem path in ``trusted_ca`` is watched if this field is not specified. This only applies when a ``CertificateValidationContext`` is delivered by SDS with references to filesystem paths. See the :ref:`SDS key rotation <sds_key_rotation>` documentation for further details.
.envoy.config.core.v3.WatchedDirectory watched_directory = 11;
- Specified by:
hasWatchedDirectory
in interfaceCertificateValidationContextOrBuilder
- Returns:
- Whether the watchedDirectory field is set.
-
getWatchedDirectory
public WatchedDirectory getWatchedDirectory()
If specified, updates of a file-based ``trusted_ca`` source will be triggered by this watch. This allows explicit control over the path watched, by default the parent directory of the filesystem path in ``trusted_ca`` is watched if this field is not specified. This only applies when a ``CertificateValidationContext`` is delivered by SDS with references to filesystem paths. See the :ref:`SDS key rotation <sds_key_rotation>` documentation for further details.
.envoy.config.core.v3.WatchedDirectory watched_directory = 11;
- Specified by:
getWatchedDirectory
in interfaceCertificateValidationContextOrBuilder
- Returns:
- The watchedDirectory.
-
getWatchedDirectoryOrBuilder
public WatchedDirectoryOrBuilder getWatchedDirectoryOrBuilder()
If specified, updates of a file-based ``trusted_ca`` source will be triggered by this watch. This allows explicit control over the path watched, by default the parent directory of the filesystem path in ``trusted_ca`` is watched if this field is not specified. This only applies when a ``CertificateValidationContext`` is delivered by SDS with references to filesystem paths. See the :ref:`SDS key rotation <sds_key_rotation>` documentation for further details.
.envoy.config.core.v3.WatchedDirectory watched_directory = 11;
- Specified by:
getWatchedDirectoryOrBuilder
in interfaceCertificateValidationContextOrBuilder
-
getVerifyCertificateSpkiList
public com.google.protobuf.ProtocolStringList getVerifyCertificateSpkiList()
An optional list of base64-encoded SHA-256 hashes. If specified, Envoy will verify that the SHA-256 of the DER-encoded Subject Public Key Information (SPKI) of the presented certificate matches one of the specified values. A base64-encoded SHA-256 of the Subject Public Key Information (SPKI) of the certificate can be generated with the following command: .. code-block:: bash $ openssl x509 -in path/to/client.crt -noout -pubkey | openssl pkey -pubin -outform DER | openssl dgst -sha256 -binary | openssl enc -base64 NvqYIYSbgK2vCJpQhObf77vv+bQWtc5ek5RIOwPiC9A= This is the format used in HTTP Public Key Pinning. When both: :ref:`verify_certificate_hash <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_hash>` and :ref:`verify_certificate_spki <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_spki>` are specified, a hash matching value from either of the lists will result in the certificate being accepted. .. attention:: This option is preferred over :ref:`verify_certificate_hash <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_hash>`, because SPKI is tied to a private key, so it doesn't change when the certificate is renewed using the same private key.
repeated string verify_certificate_spki = 3 [(.validate.rules) = { ... }
- Specified by:
getVerifyCertificateSpkiList
in interfaceCertificateValidationContextOrBuilder
- Returns:
- A list containing the verifyCertificateSpki.
-
getVerifyCertificateSpkiCount
public int getVerifyCertificateSpkiCount()
An optional list of base64-encoded SHA-256 hashes. If specified, Envoy will verify that the SHA-256 of the DER-encoded Subject Public Key Information (SPKI) of the presented certificate matches one of the specified values. A base64-encoded SHA-256 of the Subject Public Key Information (SPKI) of the certificate can be generated with the following command: .. code-block:: bash $ openssl x509 -in path/to/client.crt -noout -pubkey | openssl pkey -pubin -outform DER | openssl dgst -sha256 -binary | openssl enc -base64 NvqYIYSbgK2vCJpQhObf77vv+bQWtc5ek5RIOwPiC9A= This is the format used in HTTP Public Key Pinning. When both: :ref:`verify_certificate_hash <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_hash>` and :ref:`verify_certificate_spki <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_spki>` are specified, a hash matching value from either of the lists will result in the certificate being accepted. .. attention:: This option is preferred over :ref:`verify_certificate_hash <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_hash>`, because SPKI is tied to a private key, so it doesn't change when the certificate is renewed using the same private key.
repeated string verify_certificate_spki = 3 [(.validate.rules) = { ... }
- Specified by:
getVerifyCertificateSpkiCount
in interfaceCertificateValidationContextOrBuilder
- Returns:
- The count of verifyCertificateSpki.
-
getVerifyCertificateSpki
public String getVerifyCertificateSpki(int index)
An optional list of base64-encoded SHA-256 hashes. If specified, Envoy will verify that the SHA-256 of the DER-encoded Subject Public Key Information (SPKI) of the presented certificate matches one of the specified values. A base64-encoded SHA-256 of the Subject Public Key Information (SPKI) of the certificate can be generated with the following command: .. code-block:: bash $ openssl x509 -in path/to/client.crt -noout -pubkey | openssl pkey -pubin -outform DER | openssl dgst -sha256 -binary | openssl enc -base64 NvqYIYSbgK2vCJpQhObf77vv+bQWtc5ek5RIOwPiC9A= This is the format used in HTTP Public Key Pinning. When both: :ref:`verify_certificate_hash <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_hash>` and :ref:`verify_certificate_spki <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_spki>` are specified, a hash matching value from either of the lists will result in the certificate being accepted. .. attention:: This option is preferred over :ref:`verify_certificate_hash <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_hash>`, because SPKI is tied to a private key, so it doesn't change when the certificate is renewed using the same private key.
repeated string verify_certificate_spki = 3 [(.validate.rules) = { ... }
- Specified by:
getVerifyCertificateSpki
in interfaceCertificateValidationContextOrBuilder
- Parameters:
index
- The index of the element to return.- Returns:
- The verifyCertificateSpki at the given index.
-
getVerifyCertificateSpkiBytes
public com.google.protobuf.ByteString getVerifyCertificateSpkiBytes(int index)
An optional list of base64-encoded SHA-256 hashes. If specified, Envoy will verify that the SHA-256 of the DER-encoded Subject Public Key Information (SPKI) of the presented certificate matches one of the specified values. A base64-encoded SHA-256 of the Subject Public Key Information (SPKI) of the certificate can be generated with the following command: .. code-block:: bash $ openssl x509 -in path/to/client.crt -noout -pubkey | openssl pkey -pubin -outform DER | openssl dgst -sha256 -binary | openssl enc -base64 NvqYIYSbgK2vCJpQhObf77vv+bQWtc5ek5RIOwPiC9A= This is the format used in HTTP Public Key Pinning. When both: :ref:`verify_certificate_hash <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_hash>` and :ref:`verify_certificate_spki <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_spki>` are specified, a hash matching value from either of the lists will result in the certificate being accepted. .. attention:: This option is preferred over :ref:`verify_certificate_hash <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_hash>`, because SPKI is tied to a private key, so it doesn't change when the certificate is renewed using the same private key.
repeated string verify_certificate_spki = 3 [(.validate.rules) = { ... }
- Specified by:
getVerifyCertificateSpkiBytes
in interfaceCertificateValidationContextOrBuilder
- Parameters:
index
- The index of the value to return.- Returns:
- The bytes of the verifyCertificateSpki at the given index.
-
getVerifyCertificateHashList
public com.google.protobuf.ProtocolStringList getVerifyCertificateHashList()
An optional list of hex-encoded SHA-256 hashes. If specified, Envoy will verify that the SHA-256 of the DER-encoded presented certificate matches one of the specified values. A hex-encoded SHA-256 of the certificate can be generated with the following command: .. code-block:: bash $ openssl x509 -in path/to/client.crt -outform DER | openssl dgst -sha256 | cut -d" " -f2 df6ff72fe9116521268f6f2dd4966f51df479883fe7037b39f75916ac3049d1a A long hex-encoded and colon-separated SHA-256 (a.k.a. "fingerprint") of the certificate can be generated with the following command: .. code-block:: bash $ openssl x509 -in path/to/client.crt -noout -fingerprint -sha256 | cut -d"=" -f2 DF:6F:F7:2F:E9:11:65:21:26:8F:6F:2D:D4:96:6F:51:DF:47:98:83:FE:70:37:B3:9F:75:91:6A:C3:04:9D:1A Both of those formats are acceptable. When both: :ref:`verify_certificate_hash <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_hash>` and :ref:`verify_certificate_spki <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_spki>` are specified, a hash matching value from either of the lists will result in the certificate being accepted.
repeated string verify_certificate_hash = 2 [(.validate.rules) = { ... }
- Specified by:
getVerifyCertificateHashList
in interfaceCertificateValidationContextOrBuilder
- Returns:
- A list containing the verifyCertificateHash.
-
getVerifyCertificateHashCount
public int getVerifyCertificateHashCount()
An optional list of hex-encoded SHA-256 hashes. If specified, Envoy will verify that the SHA-256 of the DER-encoded presented certificate matches one of the specified values. A hex-encoded SHA-256 of the certificate can be generated with the following command: .. code-block:: bash $ openssl x509 -in path/to/client.crt -outform DER | openssl dgst -sha256 | cut -d" " -f2 df6ff72fe9116521268f6f2dd4966f51df479883fe7037b39f75916ac3049d1a A long hex-encoded and colon-separated SHA-256 (a.k.a. "fingerprint") of the certificate can be generated with the following command: .. code-block:: bash $ openssl x509 -in path/to/client.crt -noout -fingerprint -sha256 | cut -d"=" -f2 DF:6F:F7:2F:E9:11:65:21:26:8F:6F:2D:D4:96:6F:51:DF:47:98:83:FE:70:37:B3:9F:75:91:6A:C3:04:9D:1A Both of those formats are acceptable. When both: :ref:`verify_certificate_hash <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_hash>` and :ref:`verify_certificate_spki <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_spki>` are specified, a hash matching value from either of the lists will result in the certificate being accepted.
repeated string verify_certificate_hash = 2 [(.validate.rules) = { ... }
- Specified by:
getVerifyCertificateHashCount
in interfaceCertificateValidationContextOrBuilder
- Returns:
- The count of verifyCertificateHash.
-
getVerifyCertificateHash
public String getVerifyCertificateHash(int index)
An optional list of hex-encoded SHA-256 hashes. If specified, Envoy will verify that the SHA-256 of the DER-encoded presented certificate matches one of the specified values. A hex-encoded SHA-256 of the certificate can be generated with the following command: .. code-block:: bash $ openssl x509 -in path/to/client.crt -outform DER | openssl dgst -sha256 | cut -d" " -f2 df6ff72fe9116521268f6f2dd4966f51df479883fe7037b39f75916ac3049d1a A long hex-encoded and colon-separated SHA-256 (a.k.a. "fingerprint") of the certificate can be generated with the following command: .. code-block:: bash $ openssl x509 -in path/to/client.crt -noout -fingerprint -sha256 | cut -d"=" -f2 DF:6F:F7:2F:E9:11:65:21:26:8F:6F:2D:D4:96:6F:51:DF:47:98:83:FE:70:37:B3:9F:75:91:6A:C3:04:9D:1A Both of those formats are acceptable. When both: :ref:`verify_certificate_hash <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_hash>` and :ref:`verify_certificate_spki <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_spki>` are specified, a hash matching value from either of the lists will result in the certificate being accepted.
repeated string verify_certificate_hash = 2 [(.validate.rules) = { ... }
- Specified by:
getVerifyCertificateHash
in interfaceCertificateValidationContextOrBuilder
- Parameters:
index
- The index of the element to return.- Returns:
- The verifyCertificateHash at the given index.
-
getVerifyCertificateHashBytes
public com.google.protobuf.ByteString getVerifyCertificateHashBytes(int index)
An optional list of hex-encoded SHA-256 hashes. If specified, Envoy will verify that the SHA-256 of the DER-encoded presented certificate matches one of the specified values. A hex-encoded SHA-256 of the certificate can be generated with the following command: .. code-block:: bash $ openssl x509 -in path/to/client.crt -outform DER | openssl dgst -sha256 | cut -d" " -f2 df6ff72fe9116521268f6f2dd4966f51df479883fe7037b39f75916ac3049d1a A long hex-encoded and colon-separated SHA-256 (a.k.a. "fingerprint") of the certificate can be generated with the following command: .. code-block:: bash $ openssl x509 -in path/to/client.crt -noout -fingerprint -sha256 | cut -d"=" -f2 DF:6F:F7:2F:E9:11:65:21:26:8F:6F:2D:D4:96:6F:51:DF:47:98:83:FE:70:37:B3:9F:75:91:6A:C3:04:9D:1A Both of those formats are acceptable. When both: :ref:`verify_certificate_hash <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_hash>` and :ref:`verify_certificate_spki <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.verify_certificate_spki>` are specified, a hash matching value from either of the lists will result in the certificate being accepted.
repeated string verify_certificate_hash = 2 [(.validate.rules) = { ... }
- Specified by:
getVerifyCertificateHashBytes
in interfaceCertificateValidationContextOrBuilder
- Parameters:
index
- The index of the value to return.- Returns:
- The bytes of the verifyCertificateHash at the given index.
-
getMatchTypedSubjectAltNamesList
public List<SubjectAltNameMatcher> getMatchTypedSubjectAltNamesList()
An optional list of Subject Alternative name matchers. If specified, Envoy will verify that the Subject Alternative Name of the presented certificate matches one of the specified matchers. The matching uses "any" semantics, that is to say, the SAN is verified if at least one matcher is matched. When a certificate has wildcard DNS SAN entries, to match a specific client, it should be configured with exact match type in the :ref:`string matcher <envoy_v3_api_msg_type.matcher.v3.StringMatcher>`. For example if the certificate has "\*.example.com" as DNS SAN entry, to allow only "api.example.com", it should be configured as shown below. .. code-block:: yaml match_typed_subject_alt_names: - san_type: DNS matcher: exact: "api.example.com" .. attention:: Subject Alternative Names are easily spoofable and verifying only them is insecure, therefore this option must be used together with :ref:`trusted_ca <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.trusted_ca>`.
repeated .envoy.extensions.transport_sockets.tls.v3.SubjectAltNameMatcher match_typed_subject_alt_names = 15;
- Specified by:
getMatchTypedSubjectAltNamesList
in interfaceCertificateValidationContextOrBuilder
-
getMatchTypedSubjectAltNamesOrBuilderList
public List<? extends SubjectAltNameMatcherOrBuilder> getMatchTypedSubjectAltNamesOrBuilderList()
An optional list of Subject Alternative name matchers. If specified, Envoy will verify that the Subject Alternative Name of the presented certificate matches one of the specified matchers. The matching uses "any" semantics, that is to say, the SAN is verified if at least one matcher is matched. When a certificate has wildcard DNS SAN entries, to match a specific client, it should be configured with exact match type in the :ref:`string matcher <envoy_v3_api_msg_type.matcher.v3.StringMatcher>`. For example if the certificate has "\*.example.com" as DNS SAN entry, to allow only "api.example.com", it should be configured as shown below. .. code-block:: yaml match_typed_subject_alt_names: - san_type: DNS matcher: exact: "api.example.com" .. attention:: Subject Alternative Names are easily spoofable and verifying only them is insecure, therefore this option must be used together with :ref:`trusted_ca <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.trusted_ca>`.
repeated .envoy.extensions.transport_sockets.tls.v3.SubjectAltNameMatcher match_typed_subject_alt_names = 15;
- Specified by:
getMatchTypedSubjectAltNamesOrBuilderList
in interfaceCertificateValidationContextOrBuilder
-
getMatchTypedSubjectAltNamesCount
public int getMatchTypedSubjectAltNamesCount()
An optional list of Subject Alternative name matchers. If specified, Envoy will verify that the Subject Alternative Name of the presented certificate matches one of the specified matchers. The matching uses "any" semantics, that is to say, the SAN is verified if at least one matcher is matched. When a certificate has wildcard DNS SAN entries, to match a specific client, it should be configured with exact match type in the :ref:`string matcher <envoy_v3_api_msg_type.matcher.v3.StringMatcher>`. For example if the certificate has "\*.example.com" as DNS SAN entry, to allow only "api.example.com", it should be configured as shown below. .. code-block:: yaml match_typed_subject_alt_names: - san_type: DNS matcher: exact: "api.example.com" .. attention:: Subject Alternative Names are easily spoofable and verifying only them is insecure, therefore this option must be used together with :ref:`trusted_ca <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.trusted_ca>`.
repeated .envoy.extensions.transport_sockets.tls.v3.SubjectAltNameMatcher match_typed_subject_alt_names = 15;
- Specified by:
getMatchTypedSubjectAltNamesCount
in interfaceCertificateValidationContextOrBuilder
-
getMatchTypedSubjectAltNames
public SubjectAltNameMatcher getMatchTypedSubjectAltNames(int index)
An optional list of Subject Alternative name matchers. If specified, Envoy will verify that the Subject Alternative Name of the presented certificate matches one of the specified matchers. The matching uses "any" semantics, that is to say, the SAN is verified if at least one matcher is matched. When a certificate has wildcard DNS SAN entries, to match a specific client, it should be configured with exact match type in the :ref:`string matcher <envoy_v3_api_msg_type.matcher.v3.StringMatcher>`. For example if the certificate has "\*.example.com" as DNS SAN entry, to allow only "api.example.com", it should be configured as shown below. .. code-block:: yaml match_typed_subject_alt_names: - san_type: DNS matcher: exact: "api.example.com" .. attention:: Subject Alternative Names are easily spoofable and verifying only them is insecure, therefore this option must be used together with :ref:`trusted_ca <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.trusted_ca>`.
repeated .envoy.extensions.transport_sockets.tls.v3.SubjectAltNameMatcher match_typed_subject_alt_names = 15;
- Specified by:
getMatchTypedSubjectAltNames
in interfaceCertificateValidationContextOrBuilder
-
getMatchTypedSubjectAltNamesOrBuilder
public SubjectAltNameMatcherOrBuilder getMatchTypedSubjectAltNamesOrBuilder(int index)
An optional list of Subject Alternative name matchers. If specified, Envoy will verify that the Subject Alternative Name of the presented certificate matches one of the specified matchers. The matching uses "any" semantics, that is to say, the SAN is verified if at least one matcher is matched. When a certificate has wildcard DNS SAN entries, to match a specific client, it should be configured with exact match type in the :ref:`string matcher <envoy_v3_api_msg_type.matcher.v3.StringMatcher>`. For example if the certificate has "\*.example.com" as DNS SAN entry, to allow only "api.example.com", it should be configured as shown below. .. code-block:: yaml match_typed_subject_alt_names: - san_type: DNS matcher: exact: "api.example.com" .. attention:: Subject Alternative Names are easily spoofable and verifying only them is insecure, therefore this option must be used together with :ref:`trusted_ca <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.trusted_ca>`.
repeated .envoy.extensions.transport_sockets.tls.v3.SubjectAltNameMatcher match_typed_subject_alt_names = 15;
- Specified by:
getMatchTypedSubjectAltNamesOrBuilder
in interfaceCertificateValidationContextOrBuilder
-
getMatchSubjectAltNamesList
@Deprecated public List<StringMatcher> getMatchSubjectAltNamesList()
Deprecated.This field is deprecated in favor of :ref:`match_typed_subject_alt_names <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.match_typed_subject_alt_names>`. Note that if both this field and :ref:`match_typed_subject_alt_names <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.match_typed_subject_alt_names>` are specified, the former (deprecated field) is ignored.
repeated .envoy.type.matcher.v3.StringMatcher match_subject_alt_names = 9 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getMatchSubjectAltNamesList
in interfaceCertificateValidationContextOrBuilder
-
getMatchSubjectAltNamesOrBuilderList
@Deprecated public List<? extends StringMatcherOrBuilder> getMatchSubjectAltNamesOrBuilderList()
Deprecated.This field is deprecated in favor of :ref:`match_typed_subject_alt_names <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.match_typed_subject_alt_names>`. Note that if both this field and :ref:`match_typed_subject_alt_names <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.match_typed_subject_alt_names>` are specified, the former (deprecated field) is ignored.
repeated .envoy.type.matcher.v3.StringMatcher match_subject_alt_names = 9 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getMatchSubjectAltNamesOrBuilderList
in interfaceCertificateValidationContextOrBuilder
-
getMatchSubjectAltNamesCount
@Deprecated public int getMatchSubjectAltNamesCount()
Deprecated.This field is deprecated in favor of :ref:`match_typed_subject_alt_names <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.match_typed_subject_alt_names>`. Note that if both this field and :ref:`match_typed_subject_alt_names <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.match_typed_subject_alt_names>` are specified, the former (deprecated field) is ignored.
repeated .envoy.type.matcher.v3.StringMatcher match_subject_alt_names = 9 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getMatchSubjectAltNamesCount
in interfaceCertificateValidationContextOrBuilder
-
getMatchSubjectAltNames
@Deprecated public StringMatcher getMatchSubjectAltNames(int index)
Deprecated.This field is deprecated in favor of :ref:`match_typed_subject_alt_names <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.match_typed_subject_alt_names>`. Note that if both this field and :ref:`match_typed_subject_alt_names <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.match_typed_subject_alt_names>` are specified, the former (deprecated field) is ignored.
repeated .envoy.type.matcher.v3.StringMatcher match_subject_alt_names = 9 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getMatchSubjectAltNames
in interfaceCertificateValidationContextOrBuilder
-
getMatchSubjectAltNamesOrBuilder
@Deprecated public StringMatcherOrBuilder getMatchSubjectAltNamesOrBuilder(int index)
Deprecated.This field is deprecated in favor of :ref:`match_typed_subject_alt_names <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.match_typed_subject_alt_names>`. Note that if both this field and :ref:`match_typed_subject_alt_names <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.match_typed_subject_alt_names>` are specified, the former (deprecated field) is ignored.
repeated .envoy.type.matcher.v3.StringMatcher match_subject_alt_names = 9 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getMatchSubjectAltNamesOrBuilder
in interfaceCertificateValidationContextOrBuilder
-
hasRequireSignedCertificateTimestamp
public boolean hasRequireSignedCertificateTimestamp()
[#not-implemented-hide:] Must present signed certificate time-stamp.
.google.protobuf.BoolValue require_signed_certificate_timestamp = 6;
- Specified by:
hasRequireSignedCertificateTimestamp
in interfaceCertificateValidationContextOrBuilder
- Returns:
- Whether the requireSignedCertificateTimestamp field is set.
-
getRequireSignedCertificateTimestamp
public com.google.protobuf.BoolValue getRequireSignedCertificateTimestamp()
[#not-implemented-hide:] Must present signed certificate time-stamp.
.google.protobuf.BoolValue require_signed_certificate_timestamp = 6;
- Specified by:
getRequireSignedCertificateTimestamp
in interfaceCertificateValidationContextOrBuilder
- Returns:
- The requireSignedCertificateTimestamp.
-
getRequireSignedCertificateTimestampOrBuilder
public com.google.protobuf.BoolValueOrBuilder getRequireSignedCertificateTimestampOrBuilder()
[#not-implemented-hide:] Must present signed certificate time-stamp.
.google.protobuf.BoolValue require_signed_certificate_timestamp = 6;
- Specified by:
getRequireSignedCertificateTimestampOrBuilder
in interfaceCertificateValidationContextOrBuilder
-
hasCrl
public boolean hasCrl()
An optional `certificate revocation list <https://en.wikipedia.org/wiki/Certificate_revocation_list>`_ (in PEM format). If specified, Envoy will verify that the presented peer certificate has not been revoked by this CRL. If this DataSource contains multiple CRLs, all of them will be used. Note that if a CRL is provided for any certificate authority in a trust chain, a CRL must be provided for all certificate authorities in that chain. Failure to do so will result in verification failure for both revoked and unrevoked certificates from that chain. This default behavior can be altered by setting :ref:`only_verify_leaf_cert_crl <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.only_verify_leaf_cert_crl>` to true. If ``crl`` is a filesystem path, a watch will be added to the parent directory for any file moves to support rotation. This currently only applies to dynamic secrets, when the ``CertificateValidationContext`` is delivered via SDS.
.envoy.config.core.v3.DataSource crl = 7;
- Specified by:
hasCrl
in interfaceCertificateValidationContextOrBuilder
- Returns:
- Whether the crl field is set.
-
getCrl
public DataSource getCrl()
An optional `certificate revocation list <https://en.wikipedia.org/wiki/Certificate_revocation_list>`_ (in PEM format). If specified, Envoy will verify that the presented peer certificate has not been revoked by this CRL. If this DataSource contains multiple CRLs, all of them will be used. Note that if a CRL is provided for any certificate authority in a trust chain, a CRL must be provided for all certificate authorities in that chain. Failure to do so will result in verification failure for both revoked and unrevoked certificates from that chain. This default behavior can be altered by setting :ref:`only_verify_leaf_cert_crl <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.only_verify_leaf_cert_crl>` to true. If ``crl`` is a filesystem path, a watch will be added to the parent directory for any file moves to support rotation. This currently only applies to dynamic secrets, when the ``CertificateValidationContext`` is delivered via SDS.
.envoy.config.core.v3.DataSource crl = 7;
- Specified by:
getCrl
in interfaceCertificateValidationContextOrBuilder
- Returns:
- The crl.
-
getCrlOrBuilder
public DataSourceOrBuilder getCrlOrBuilder()
An optional `certificate revocation list <https://en.wikipedia.org/wiki/Certificate_revocation_list>`_ (in PEM format). If specified, Envoy will verify that the presented peer certificate has not been revoked by this CRL. If this DataSource contains multiple CRLs, all of them will be used. Note that if a CRL is provided for any certificate authority in a trust chain, a CRL must be provided for all certificate authorities in that chain. Failure to do so will result in verification failure for both revoked and unrevoked certificates from that chain. This default behavior can be altered by setting :ref:`only_verify_leaf_cert_crl <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.only_verify_leaf_cert_crl>` to true. If ``crl`` is a filesystem path, a watch will be added to the parent directory for any file moves to support rotation. This currently only applies to dynamic secrets, when the ``CertificateValidationContext`` is delivered via SDS.
.envoy.config.core.v3.DataSource crl = 7;
- Specified by:
getCrlOrBuilder
in interfaceCertificateValidationContextOrBuilder
-
getAllowExpiredCertificate
public boolean getAllowExpiredCertificate()
If specified, Envoy will not reject expired certificates.
bool allow_expired_certificate = 8;
- Specified by:
getAllowExpiredCertificate
in interfaceCertificateValidationContextOrBuilder
- Returns:
- The allowExpiredCertificate.
-
getTrustChainVerificationValue
public int getTrustChainVerificationValue()
Certificate trust chain verification mode.
.envoy.extensions.transport_sockets.tls.v3.CertificateValidationContext.TrustChainVerification trust_chain_verification = 10 [(.validate.rules) = { ... }
- Specified by:
getTrustChainVerificationValue
in interfaceCertificateValidationContextOrBuilder
- Returns:
- The enum numeric value on the wire for trustChainVerification.
-
getTrustChainVerification
public CertificateValidationContext.TrustChainVerification getTrustChainVerification()
Certificate trust chain verification mode.
.envoy.extensions.transport_sockets.tls.v3.CertificateValidationContext.TrustChainVerification trust_chain_verification = 10 [(.validate.rules) = { ... }
- Specified by:
getTrustChainVerification
in interfaceCertificateValidationContextOrBuilder
- Returns:
- The trustChainVerification.
-
hasCustomValidatorConfig
public boolean hasCustomValidatorConfig()
The configuration of an extension specific certificate validator. If specified, all validation is done by the specified validator, and the behavior of all other validation settings is defined by the specified validator (and may be entirely ignored, unused, and unvalidated). Refer to the documentation for the specified validator. If you do not want a custom validation algorithm, do not set this field. [#extension-category: envoy.tls.cert_validator]
.envoy.config.core.v3.TypedExtensionConfig custom_validator_config = 12;
- Specified by:
hasCustomValidatorConfig
in interfaceCertificateValidationContextOrBuilder
- Returns:
- Whether the customValidatorConfig field is set.
-
getCustomValidatorConfig
public TypedExtensionConfig getCustomValidatorConfig()
The configuration of an extension specific certificate validator. If specified, all validation is done by the specified validator, and the behavior of all other validation settings is defined by the specified validator (and may be entirely ignored, unused, and unvalidated). Refer to the documentation for the specified validator. If you do not want a custom validation algorithm, do not set this field. [#extension-category: envoy.tls.cert_validator]
.envoy.config.core.v3.TypedExtensionConfig custom_validator_config = 12;
- Specified by:
getCustomValidatorConfig
in interfaceCertificateValidationContextOrBuilder
- Returns:
- The customValidatorConfig.
-
getCustomValidatorConfigOrBuilder
public TypedExtensionConfigOrBuilder getCustomValidatorConfigOrBuilder()
The configuration of an extension specific certificate validator. If specified, all validation is done by the specified validator, and the behavior of all other validation settings is defined by the specified validator (and may be entirely ignored, unused, and unvalidated). Refer to the documentation for the specified validator. If you do not want a custom validation algorithm, do not set this field. [#extension-category: envoy.tls.cert_validator]
.envoy.config.core.v3.TypedExtensionConfig custom_validator_config = 12;
- Specified by:
getCustomValidatorConfigOrBuilder
in interfaceCertificateValidationContextOrBuilder
-
getOnlyVerifyLeafCertCrl
public boolean getOnlyVerifyLeafCertCrl()
If this option is set to true, only the certificate at the end of the certificate chain will be subject to validation by :ref:`CRL <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.crl>`.
bool only_verify_leaf_cert_crl = 14;
- Specified by:
getOnlyVerifyLeafCertCrl
in interfaceCertificateValidationContextOrBuilder
- Returns:
- The onlyVerifyLeafCertCrl.
-
hasMaxVerifyDepth
public boolean hasMaxVerifyDepth()
Defines maximum depth of a certificate chain accepted in verification, the default limit is 100, though this can be system-dependent. This number does not include the leaf but includes the trust anchor, so a depth of 1 allows the leaf and one CA certificate. If a trusted issuer appears in the chain, but in a depth larger than configured, the certificate validation will fail. This matches the semantics of ``SSL_CTX_set_verify_depth`` in OpenSSL 1.0.x and older versions of BoringSSL. It differs from ``SSL_CTX_set_verify_depth`` in OpenSSL 1.1.x and newer versions of BoringSSL in that the trust anchor is included. Trusted issues are specified by setting :ref:`trusted_ca <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.trusted_ca>`
.google.protobuf.UInt32Value max_verify_depth = 16 [(.validate.rules) = { ... }
- Specified by:
hasMaxVerifyDepth
in interfaceCertificateValidationContextOrBuilder
- Returns:
- Whether the maxVerifyDepth field is set.
-
getMaxVerifyDepth
public com.google.protobuf.UInt32Value getMaxVerifyDepth()
Defines maximum depth of a certificate chain accepted in verification, the default limit is 100, though this can be system-dependent. This number does not include the leaf but includes the trust anchor, so a depth of 1 allows the leaf and one CA certificate. If a trusted issuer appears in the chain, but in a depth larger than configured, the certificate validation will fail. This matches the semantics of ``SSL_CTX_set_verify_depth`` in OpenSSL 1.0.x and older versions of BoringSSL. It differs from ``SSL_CTX_set_verify_depth`` in OpenSSL 1.1.x and newer versions of BoringSSL in that the trust anchor is included. Trusted issues are specified by setting :ref:`trusted_ca <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.trusted_ca>`
.google.protobuf.UInt32Value max_verify_depth = 16 [(.validate.rules) = { ... }
- Specified by:
getMaxVerifyDepth
in interfaceCertificateValidationContextOrBuilder
- Returns:
- The maxVerifyDepth.
-
getMaxVerifyDepthOrBuilder
public com.google.protobuf.UInt32ValueOrBuilder getMaxVerifyDepthOrBuilder()
Defines maximum depth of a certificate chain accepted in verification, the default limit is 100, though this can be system-dependent. This number does not include the leaf but includes the trust anchor, so a depth of 1 allows the leaf and one CA certificate. If a trusted issuer appears in the chain, but in a depth larger than configured, the certificate validation will fail. This matches the semantics of ``SSL_CTX_set_verify_depth`` in OpenSSL 1.0.x and older versions of BoringSSL. It differs from ``SSL_CTX_set_verify_depth`` in OpenSSL 1.1.x and newer versions of BoringSSL in that the trust anchor is included. Trusted issues are specified by setting :ref:`trusted_ca <envoy_v3_api_field_extensions.transport_sockets.tls.v3.CertificateValidationContext.trusted_ca>`
.google.protobuf.UInt32Value max_verify_depth = 16 [(.validate.rules) = { ... }
- Specified by:
getMaxVerifyDepthOrBuilder
in interfaceCertificateValidationContextOrBuilder
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitialized
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Overrides:
isInitialized
in classcom.google.protobuf.GeneratedMessageV3
-
writeTo
public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException
- Specified by:
writeTo
in interfacecom.google.protobuf.MessageLite
- Overrides:
writeTo
in classcom.google.protobuf.GeneratedMessageV3
- Throws:
IOException
-
getSerializedSize
public int getSerializedSize()
- Specified by:
getSerializedSize
in interfacecom.google.protobuf.MessageLite
- Overrides:
getSerializedSize
in classcom.google.protobuf.GeneratedMessageV3
-
equals
public boolean equals(Object obj)
- Specified by:
equals
in interfacecom.google.protobuf.Message
- Overrides:
equals
in classcom.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()
- Specified by:
hashCode
in interfacecom.google.protobuf.Message
- Overrides:
hashCode
in classcom.google.protobuf.AbstractMessage
-
parseFrom
public static CertificateValidationContext parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CertificateValidationContext parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CertificateValidationContext parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CertificateValidationContext parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CertificateValidationContext parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CertificateValidationContext parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static CertificateValidationContext parseFrom(InputStream input) throws IOException
- Throws:
IOException
-
parseFrom
public static CertificateValidationContext parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
parseDelimitedFrom
public static CertificateValidationContext parseDelimitedFrom(InputStream input) throws IOException
- Throws:
IOException
-
parseDelimitedFrom
public static CertificateValidationContext parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
parseFrom
public static CertificateValidationContext parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
- Throws:
IOException
-
parseFrom
public static CertificateValidationContext parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
newBuilderForType
public CertificateValidationContext.Builder newBuilderForType()
- Specified by:
newBuilderForType
in interfacecom.google.protobuf.Message
- Specified by:
newBuilderForType
in interfacecom.google.protobuf.MessageLite
-
newBuilder
public static CertificateValidationContext.Builder newBuilder()
-
newBuilder
public static CertificateValidationContext.Builder newBuilder(CertificateValidationContext prototype)
-
toBuilder
public CertificateValidationContext.Builder toBuilder()
- Specified by:
toBuilder
in interfacecom.google.protobuf.Message
- Specified by:
toBuilder
in interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected CertificateValidationContext.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
- Specified by:
newBuilderForType
in classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstance
public static CertificateValidationContext getDefaultInstance()
-
parser
public static com.google.protobuf.Parser<CertificateValidationContext> parser()
-
getParserForType
public com.google.protobuf.Parser<CertificateValidationContext> getParserForType()
- Specified by:
getParserForType
in interfacecom.google.protobuf.Message
- Specified by:
getParserForType
in interfacecom.google.protobuf.MessageLite
- Overrides:
getParserForType
in classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstanceForType
public CertificateValidationContext getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageOrBuilder
-
-