public static enum TargetHttpsProxy.TlsEarlyData extends Enum<TargetHttpsProxy.TlsEarlyData> implements com.google.protobuf.ProtocolMessageEnum
Specifies whether TLS 1.3 0-RTT Data ("Early Data") should be accepted for this service. Early Data allows a TLS resumption handshake to include the initial application payload (a HTTP request) alongside the handshake, reducing the effective round trips to "zero". This applies to TLS 1.3 connections over TCP (HTTP/2) as well as over UDP (QUIC/h3). This can improve application performance, especially on networks where interruptions may be common, such as on mobile. Requests with Early Data will have the "Early-Data" HTTP header set on the request, with a value of "1", to allow the backend to determine whether Early Data was included. Note: TLS Early Data may allow requests to be replayed, as the data is sent to the backend before the handshake has fully completed. Applications that allow idempotent HTTP methods to make non-idempotent changes, such as a GET request updating a database, should not accept Early Data on those requests, and reject requests with the "Early-Data: 1" HTTP header by returning a HTTP 425 (Too Early) status code, in order to remain RFC compliant. The default value is DISABLED.
Protobuf enum google.cloud.compute.v1.TargetHttpsProxy.TlsEarlyData| Enum Constant and Description |
|---|
DISABLED
TLS 1.3 Early Data is not advertised, and any (invalid) attempts to send Early Data will be rejected by closing the connection.
|
PERMISSIVE
This enables TLS 1.3 0-RTT, and only allows Early Data to be included on requests with safe HTTP methods (GET, HEAD, OPTIONS, TRACE).
|
STRICT
This enables TLS 1.3 0-RTT, and only allows Early Data to be included on requests with safe HTTP methods (GET, HEAD, OPTIONS, TRACE) without query parameters.
|
UNDEFINED_TLS_EARLY_DATA
A value indicating that the enum field is not set.
|
UNRECOGNIZED |
UNRESTRICTED
This enables TLS 1.3 Early Data for requests with any HTTP method including non-idempotent methods list POST.
|
| Modifier and Type | Field and Description |
|---|---|
static int |
DISABLED_VALUE
TLS 1.3 Early Data is not advertised, and any (invalid) attempts to send Early Data will be rejected by closing the connection.
|
static int |
PERMISSIVE_VALUE
This enables TLS 1.3 0-RTT, and only allows Early Data to be included on requests with safe HTTP methods (GET, HEAD, OPTIONS, TRACE).
|
static int |
STRICT_VALUE
This enables TLS 1.3 0-RTT, and only allows Early Data to be included on requests with safe HTTP methods (GET, HEAD, OPTIONS, TRACE) without query parameters.
|
static int |
UNDEFINED_TLS_EARLY_DATA_VALUE
A value indicating that the enum field is not set.
|
static int |
UNRESTRICTED_VALUE
This enables TLS 1.3 Early Data for requests with any HTTP method including non-idempotent methods list POST.
|
| Modifier and Type | Method and Description |
|---|---|
static TargetHttpsProxy.TlsEarlyData |
forNumber(int value) |
static com.google.protobuf.Descriptors.EnumDescriptor |
getDescriptor() |
com.google.protobuf.Descriptors.EnumDescriptor |
getDescriptorForType() |
int |
getNumber() |
com.google.protobuf.Descriptors.EnumValueDescriptor |
getValueDescriptor() |
static com.google.protobuf.Internal.EnumLiteMap<TargetHttpsProxy.TlsEarlyData> |
internalGetValueMap() |
static TargetHttpsProxy.TlsEarlyData |
valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc) |
static TargetHttpsProxy.TlsEarlyData |
valueOf(int value)
Deprecated.
Use
forNumber(int) instead. |
static TargetHttpsProxy.TlsEarlyData |
valueOf(String name)
Returns the enum constant of this type with the specified name.
|
static TargetHttpsProxy.TlsEarlyData[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final TargetHttpsProxy.TlsEarlyData UNDEFINED_TLS_EARLY_DATA
A value indicating that the enum field is not set.
UNDEFINED_TLS_EARLY_DATA = 0;public static final TargetHttpsProxy.TlsEarlyData DISABLED
TLS 1.3 Early Data is not advertised, and any (invalid) attempts to send Early Data will be rejected by closing the connection.
DISABLED = 516696700;public static final TargetHttpsProxy.TlsEarlyData PERMISSIVE
This enables TLS 1.3 0-RTT, and only allows Early Data to be included on requests with safe HTTP methods (GET, HEAD, OPTIONS, TRACE). This mode does not enforce any other limitations for requests with Early Data. The application owner should validate that Early Data is acceptable for a given request path.
PERMISSIVE = 504345247;public static final TargetHttpsProxy.TlsEarlyData STRICT
This enables TLS 1.3 0-RTT, and only allows Early Data to be included on requests with safe HTTP methods (GET, HEAD, OPTIONS, TRACE) without query parameters. Requests that send Early Data with non-idempotent HTTP methods or with query parameters will be rejected with a HTTP 425.
STRICT = 308826825;public static final TargetHttpsProxy.TlsEarlyData UNRESTRICTED
This enables TLS 1.3 Early Data for requests with any HTTP method including non-idempotent methods list POST. This mode does not enforce any other limitations. This may be valuable for gRPC use cases. However, we do not recommend this method unless you have evaluated your security stance and mitigated the risk of replay attacks using other mechanisms.
UNRESTRICTED = 457266100;public static final TargetHttpsProxy.TlsEarlyData UNRECOGNIZED
public static final int UNDEFINED_TLS_EARLY_DATA_VALUE
A value indicating that the enum field is not set.
UNDEFINED_TLS_EARLY_DATA = 0;public static final int DISABLED_VALUE
TLS 1.3 Early Data is not advertised, and any (invalid) attempts to send Early Data will be rejected by closing the connection.
DISABLED = 516696700;public static final int PERMISSIVE_VALUE
This enables TLS 1.3 0-RTT, and only allows Early Data to be included on requests with safe HTTP methods (GET, HEAD, OPTIONS, TRACE). This mode does not enforce any other limitations for requests with Early Data. The application owner should validate that Early Data is acceptable for a given request path.
PERMISSIVE = 504345247;public static final int STRICT_VALUE
This enables TLS 1.3 0-RTT, and only allows Early Data to be included on requests with safe HTTP methods (GET, HEAD, OPTIONS, TRACE) without query parameters. Requests that send Early Data with non-idempotent HTTP methods or with query parameters will be rejected with a HTTP 425.
STRICT = 308826825;public static final int UNRESTRICTED_VALUE
This enables TLS 1.3 Early Data for requests with any HTTP method including non-idempotent methods list POST. This mode does not enforce any other limitations. This may be valuable for gRPC use cases. However, we do not recommend this method unless you have evaluated your security stance and mitigated the risk of replay attacks using other mechanisms.
UNRESTRICTED = 457266100;public static TargetHttpsProxy.TlsEarlyData[] values()
for (TargetHttpsProxy.TlsEarlyData c : TargetHttpsProxy.TlsEarlyData.values()) System.out.println(c);
public static TargetHttpsProxy.TlsEarlyData valueOf(String name)
name - the name of the enum constant to be returned.IllegalArgumentException - if this enum type has no constant with the specified nameNullPointerException - if the argument is nullpublic final int getNumber()
getNumber in interface com.google.protobuf.Internal.EnumLitegetNumber in interface com.google.protobuf.ProtocolMessageEnum@Deprecated public static TargetHttpsProxy.TlsEarlyData valueOf(int value)
forNumber(int) instead.value - The numeric wire value of the corresponding enum entry.public static TargetHttpsProxy.TlsEarlyData forNumber(int value)
value - The numeric wire value of the corresponding enum entry.public static com.google.protobuf.Internal.EnumLiteMap<TargetHttpsProxy.TlsEarlyData> internalGetValueMap()
public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor()
getValueDescriptor in interface com.google.protobuf.ProtocolMessageEnumpublic final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType()
getDescriptorForType in interface com.google.protobuf.ProtocolMessageEnumpublic static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor()
public static TargetHttpsProxy.TlsEarlyData valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc)
Copyright © 2025 Google LLC. All rights reserved.