diff --git a/clients/client-elastic-load-balancing-v2/src/commands/DescribeTargetHealthCommand.ts b/clients/client-elastic-load-balancing-v2/src/commands/DescribeTargetHealthCommand.ts index fe0dac1a9b92..0168ad149f3e 100644 --- a/clients/client-elastic-load-balancing-v2/src/commands/DescribeTargetHealthCommand.ts +++ b/clients/client-elastic-load-balancing-v2/src/commands/DescribeTargetHealthCommand.ts @@ -72,6 +72,11 @@ export interface DescribeTargetHealthCommandOutput extends DescribeTargetHealthO * // Result: "anomalous" || "normal", * // MitigationInEffect: "yes" || "no", * // }, + * // AdministrativeOverride: { // AdministrativeOverride + * // State: "unknown" || "no_override" || "zonal_shift_active" || "zonal_shift_delegated_to_dns", + * // Reason: "AdministrativeOverride.Unknown" || "AdministrativeOverride.NoOverride" || "AdministrativeOverride.ZonalShiftActive" || "AdministrativeOverride.ZonalShiftDelegatedToDns", + * // Description: "STRING_VALUE", + * // }, * // }, * // ], * // }; diff --git a/clients/client-elastic-load-balancing-v2/src/models/models_0.ts b/clients/client-elastic-load-balancing-v2/src/models/models_0.ts index e815ac1564e9..eb6e6b15cda8 100644 --- a/clients/client-elastic-load-balancing-v2/src/models/models_0.ts +++ b/clients/client-elastic-load-balancing-v2/src/models/models_0.ts @@ -922,6 +922,64 @@ export class TooManyTrustStoreRevocationEntriesException extends __BaseException } } +/** + * @public + * @enum + */ +export const TargetAdministrativeOverrideReasonEnum = { + INTERNAL_ERROR: "AdministrativeOverride.Unknown", + NO_OVERRIDE_ENGAGED: "AdministrativeOverride.NoOverride", + ZONAL_SHIFT_DELEGATED_TO_DNS: "AdministrativeOverride.ZonalShiftDelegatedToDns", + ZONAL_SHIFT_ENGAGED: "AdministrativeOverride.ZonalShiftActive", +} as const; + +/** + * @public + */ +export type TargetAdministrativeOverrideReasonEnum = + (typeof TargetAdministrativeOverrideReasonEnum)[keyof typeof TargetAdministrativeOverrideReasonEnum]; + +/** + * @public + * @enum + */ +export const TargetAdministrativeOverrideStateEnum = { + NO_OVERRIDE: "no_override", + UNKNOWN: "unknown", + ZONAL_SHIFT_ACTIVE: "zonal_shift_active", + ZONAL_SHIFT_DELEGATED_TO_DNS: "zonal_shift_delegated_to_dns", +} as const; + +/** + * @public + */ +export type TargetAdministrativeOverrideStateEnum = + (typeof TargetAdministrativeOverrideStateEnum)[keyof typeof TargetAdministrativeOverrideStateEnum]; + +/** + *
Information about the override status applied to a target.
+ * @public + */ +export interface AdministrativeOverride { + /** + *The state of the override.
+ * @public + */ + State?: TargetAdministrativeOverrideStateEnum; + + /** + *The reason code for the state.
+ * @public + */ + Reason?: TargetAdministrativeOverrideReasonEnum; + + /** + *A description of the override state that provides additional details.
+ * @public + */ + Description?: string; +} + /** *The specified allocation ID does not exist.
* @public @@ -3884,6 +3942,12 @@ export interface LoadBalancerAttribute { *partial_availability_zone_affinity
with 85 percent zonal affinity,
* and any_availability_zone
with 0 percent zonal affinity.
*
+ *
+ * zonal_shift.config.enabled
- Indicates whether zonal shift is
+ * enabled. The possible values are true
and false
. The
+ * default is false
.
The administrative override information for the target.
+ * @public + */ + AdministrativeOverride?: AdministrativeOverride; } /** diff --git a/clients/client-elastic-load-balancing-v2/src/protocols/Aws_query.ts b/clients/client-elastic-load-balancing-v2/src/protocols/Aws_query.ts index ca7f4319b4c9..b96517bd5527 100644 --- a/clients/client-elastic-load-balancing-v2/src/protocols/Aws_query.ts +++ b/clients/client-elastic-load-balancing-v2/src/protocols/Aws_query.ts @@ -144,6 +144,7 @@ import { AddTagsOutput, AddTrustStoreRevocationsInput, AddTrustStoreRevocationsOutput, + AdministrativeOverride, AllocationIdNotFoundException, ALPNPolicyNotSupportedException, AnomalyDetection, @@ -5563,6 +5564,23 @@ const de_AddTrustStoreRevocationsOutput = (output: any, context: __SerdeContext) return contents; }; +/** + * deserializeAws_queryAdministrativeOverride + */ +const de_AdministrativeOverride = (output: any, context: __SerdeContext): AdministrativeOverride => { + const contents: any = {}; + if (output[_St] != null) { + contents[_St] = __expectString(output[_St]); + } + if (output[_R] != null) { + contents[_R] = __expectString(output[_R]); + } + if (output[_D] != null) { + contents[_D] = __expectString(output[_D]); + } + return contents; +}; + /** * deserializeAws_queryAllocationIdNotFoundException */ @@ -5601,8 +5619,8 @@ const de_ALPNPolicyNotSupportedException = (output: any, context: __SerdeContext */ const de_AnomalyDetection = (output: any, context: __SerdeContext): AnomalyDetection => { const contents: any = {}; - if (output[_R] != null) { - contents[_R] = __expectString(output[_R]); + if (output[_Re] != null) { + contents[_Re] = __expectString(output[_Re]); } if (output[_MIE] != null) { contents[_MIE] = __expectString(output[_MIE]); @@ -6843,8 +6861,8 @@ const de_LoadBalancerState = (output: any, context: __SerdeContext): LoadBalance if (output[_Cod] != null) { contents[_Cod] = __expectString(output[_Cod]); } - if (output[_Re] != null) { - contents[_Re] = __expectString(output[_Re]); + if (output[_R] != null) { + contents[_R] = __expectString(output[_R]); } return contents; }; @@ -7649,8 +7667,8 @@ const de_TargetHealth = (output: any, context: __SerdeContext): TargetHealth => if (output[_St] != null) { contents[_St] = __expectString(output[_St]); } - if (output[_Re] != null) { - contents[_Re] = __expectString(output[_Re]); + if (output[_R] != null) { + contents[_R] = __expectString(output[_R]); } if (output[_D] != null) { contents[_D] = __expectString(output[_D]); @@ -7675,6 +7693,9 @@ const de_TargetHealthDescription = (output: any, context: __SerdeContext): Targe if (output[_AD] != null) { contents[_AD] = de_AnomalyDetection(output[_AD], context); } + if (output[_AO] != null) { + contents[_AO] = de_AdministrativeOverride(output[_AO], context); + } return contents; }; @@ -8023,6 +8044,7 @@ const _AD = "AnomalyDetection"; const _AE = "AuthorizationEndpoint"; const _AI = "AllocationId"; const _ALC = "AddListenerCertificates"; +const _AO = "AdministrativeOverride"; const _AOC = "AuthenticateOidcConfig"; const _AP = "AlpnPolicy"; const _AREP = "AuthenticationRequestExtraParams"; @@ -8153,7 +8175,7 @@ const _Pol = "Policy"; const _Pr = "Priority"; const _Q = "Query"; const _QSC = "QueryStringConfig"; -const _R = "Result"; +const _R = "Reason"; const _RA = "ResourceArns"; const _RAe = "ResourceArn"; const _RAu = "RuleArn"; @@ -8168,7 +8190,7 @@ const _RT = "RegisterTargets"; const _RTSR = "RemoveTrustStoreRevocations"; const _RTe = "RemoveTags"; const _RTev = "RevocationType"; -const _Re = "Reason"; +const _Re = "Result"; const _Ru = "Rules"; const _S = "Scope"; const _SB = "S3Bucket"; diff --git a/codegen/sdk-codegen/aws-models/elastic-load-balancing-v2.json b/codegen/sdk-codegen/aws-models/elastic-load-balancing-v2.json index 600f6d2f21fe..a2f7b6bdc125 100644 --- a/codegen/sdk-codegen/aws-models/elastic-load-balancing-v2.json +++ b/codegen/sdk-codegen/aws-models/elastic-load-balancing-v2.json @@ -364,6 +364,32 @@ "smithy.api#output": {} } }, + "com.amazonaws.elasticloadbalancingv2#AdministrativeOverride": { + "type": "structure", + "members": { + "State": { + "target": "com.amazonaws.elasticloadbalancingv2#TargetAdministrativeOverrideStateEnum", + "traits": { + "smithy.api#documentation": "The state of the override.
" + } + }, + "Reason": { + "target": "com.amazonaws.elasticloadbalancingv2#TargetAdministrativeOverrideReasonEnum", + "traits": { + "smithy.api#documentation": "The reason code for the state.
" + } + }, + "Description": { + "target": "com.amazonaws.elasticloadbalancingv2#Description", + "traits": { + "smithy.api#documentation": "A description of the override state that provides additional details.
" + } + } + }, + "traits": { + "smithy.api#documentation": "Information about the override status applied to a target.
" + } + }, "com.amazonaws.elasticloadbalancingv2#AllocationId": { "type": "string" }, @@ -5856,7 +5882,7 @@ "Key": { "target": "com.amazonaws.elasticloadbalancingv2#LoadBalancerAttributeKey", "traits": { - "smithy.api#documentation": "The name of the attribute.
\nThe following attributes are supported by all load balancers:
\n\n deletion_protection.enabled
- Indicates whether deletion protection is\n enabled. The value is true
or false
. The default is\n false
.
\n load_balancing.cross_zone.enabled
- Indicates whether cross-zone load\n balancing is enabled. The possible values are true
and false
.\n The default for Network Load Balancers and Gateway Load Balancers is false
. \n The default for Application Load Balancers is true
, and cannot be changed.
The following attributes are supported by both Application Load Balancers and Network Load\n Balancers:
\n\n access_logs.s3.enabled
- Indicates whether access logs are enabled. The\n value is true
or false
. The default is\n false
.
\n access_logs.s3.bucket
- The name of the S3 bucket for the access logs.\n This attribute is required if access logs are enabled. The bucket must exist in the same\n region as the load balancer and have a bucket policy that grants Elastic Load Balancing\n permissions to write to the bucket.
\n access_logs.s3.prefix
- The prefix for the location in the S3 bucket for the\n access logs.
\n ipv6.deny_all_igw_traffic
- Blocks internet gateway (IGW) access to the\n load balancer. It is set to false
for internet-facing load balancers and\n true
for internal load balancers, preventing unintended access to your\n internal load balancer through an internet gateway.
The following attributes are supported by only Application Load Balancers:
\n\n idle_timeout.timeout_seconds
- The idle timeout value, in seconds. The\n valid range is 1-4000 seconds. The default is 60 seconds.
\n client_keep_alive.seconds
- The client keep alive value, in seconds. The \n valid range is 60-604800 seconds. The default is 3600 seconds.
\n connection_logs.s3.enabled
- Indicates whether connection logs are enabled. The\n value is true
or false
. The default is false
.
\n connection_logs.s3.bucket
- The name of the S3 bucket for the connection logs.\n This attribute is required if connection logs are enabled. The bucket must exist in the same\n region as the load balancer and have a bucket policy that grants Elastic Load Balancing\n permissions to write to the bucket.
\n connection_logs.s3.prefix
- The prefix for the location in the S3 bucket for the\n connection logs.
\n routing.http.desync_mitigation_mode
- Determines how the load balancer\n handles requests that might pose a security risk to your application. The possible values\n are monitor
, defensive
, and strictest
. The default\n is defensive
.
\n routing.http.drop_invalid_header_fields.enabled
- Indicates whether HTTP\n headers with invalid header fields are removed by the load balancer (true
) or\n routed to targets (false
). The default is false
.
\n routing.http.preserve_host_header.enabled
- Indicates whether the\n Application Load Balancer should preserve the Host
header in the HTTP request\n and send it to the target without any change. The possible values are true
\n and false
. The default is false
.
\n routing.http.x_amzn_tls_version_and_cipher_suite.enabled
- Indicates\n whether the two headers (x-amzn-tls-version
and\n x-amzn-tls-cipher-suite
), which contain information about the negotiated\n TLS version and cipher suite, are added to the client request before sending it to the\n target. The x-amzn-tls-version
header has information about the TLS protocol\n version negotiated with the client, and the x-amzn-tls-cipher-suite
header\n has information about the cipher suite negotiated with the client. Both headers are in\n OpenSSL format. The possible values for the attribute are true
and\n false
. The default is false
.
\n routing.http.xff_client_port.enabled
- Indicates whether the\n X-Forwarded-For
header should preserve the source port that the client used\n to connect to the load balancer. The possible values are true
and\n false
. The default is false
.
\n routing.http.xff_header_processing.mode
- Enables you to modify,\n preserve, or remove the X-Forwarded-For
header in the HTTP request before the\n Application Load Balancer sends the request to the target. The possible values are\n append
, preserve
, and remove
. The default is\n append
.
If the value is append
, the Application Load Balancer adds the client\n IP address (of the last hop) to the X-Forwarded-For
header in the HTTP\n request before it sends it to targets.
If the value is preserve
the Application Load Balancer preserves the\n X-Forwarded-For
header in the HTTP request, and sends it to targets\n without any change.
If the value is remove
, the Application Load Balancer removes the\n X-Forwarded-For
header in the HTTP request before it sends it to\n targets.
\n routing.http2.enabled
- Indicates whether HTTP/2 is enabled. The possible\n values are true
and false
. The default is true
.\n Elastic Load Balancing requires that message header names contain only alphanumeric\n characters and hyphens.
\n waf.fail_open.enabled
- Indicates whether to allow a WAF-enabled load\n balancer to route requests to targets if it is unable to forward the request to Amazon Web Services WAF. The possible values are true
and false
. The\n default is false
.
The following attributes are supported by only Network Load Balancers:
\n\n dns_record.client_routing_policy
- Indicates how traffic is \n distributed among the load balancer Availability Zones. The possible values are \n availability_zone_affinity
with 100 percent zonal affinity, \n partial_availability_zone_affinity
with 85 percent zonal affinity, \n and any_availability_zone
with 0 percent zonal affinity.
The name of the attribute.
\nThe following attributes are supported by all load balancers:
\n\n deletion_protection.enabled
- Indicates whether deletion protection is\n enabled. The value is true
or false
. The default is\n false
.
\n load_balancing.cross_zone.enabled
- Indicates whether cross-zone load\n balancing is enabled. The possible values are true
and false
.\n The default for Network Load Balancers and Gateway Load Balancers is false
. \n The default for Application Load Balancers is true
, and cannot be changed.
The following attributes are supported by both Application Load Balancers and Network Load\n Balancers:
\n\n access_logs.s3.enabled
- Indicates whether access logs are enabled. The\n value is true
or false
. The default is\n false
.
\n access_logs.s3.bucket
- The name of the S3 bucket for the access logs.\n This attribute is required if access logs are enabled. The bucket must exist in the same\n region as the load balancer and have a bucket policy that grants Elastic Load Balancing\n permissions to write to the bucket.
\n access_logs.s3.prefix
- The prefix for the location in the S3 bucket for the\n access logs.
\n ipv6.deny_all_igw_traffic
- Blocks internet gateway (IGW) access to the\n load balancer. It is set to false
for internet-facing load balancers and\n true
for internal load balancers, preventing unintended access to your\n internal load balancer through an internet gateway.
The following attributes are supported by only Application Load Balancers:
\n\n idle_timeout.timeout_seconds
- The idle timeout value, in seconds. The\n valid range is 1-4000 seconds. The default is 60 seconds.
\n client_keep_alive.seconds
- The client keep alive value, in seconds. The \n valid range is 60-604800 seconds. The default is 3600 seconds.
\n connection_logs.s3.enabled
- Indicates whether connection logs are enabled. The\n value is true
or false
. The default is false
.
\n connection_logs.s3.bucket
- The name of the S3 bucket for the connection logs.\n This attribute is required if connection logs are enabled. The bucket must exist in the same\n region as the load balancer and have a bucket policy that grants Elastic Load Balancing\n permissions to write to the bucket.
\n connection_logs.s3.prefix
- The prefix for the location in the S3 bucket for the\n connection logs.
\n routing.http.desync_mitigation_mode
- Determines how the load balancer\n handles requests that might pose a security risk to your application. The possible values\n are monitor
, defensive
, and strictest
. The default\n is defensive
.
\n routing.http.drop_invalid_header_fields.enabled
- Indicates whether HTTP\n headers with invalid header fields are removed by the load balancer (true
) or\n routed to targets (false
). The default is false
.
\n routing.http.preserve_host_header.enabled
- Indicates whether the\n Application Load Balancer should preserve the Host
header in the HTTP request\n and send it to the target without any change. The possible values are true
\n and false
. The default is false
.
\n routing.http.x_amzn_tls_version_and_cipher_suite.enabled
- Indicates\n whether the two headers (x-amzn-tls-version
and\n x-amzn-tls-cipher-suite
), which contain information about the negotiated\n TLS version and cipher suite, are added to the client request before sending it to the\n target. The x-amzn-tls-version
header has information about the TLS protocol\n version negotiated with the client, and the x-amzn-tls-cipher-suite
header\n has information about the cipher suite negotiated with the client. Both headers are in\n OpenSSL format. The possible values for the attribute are true
and\n false
. The default is false
.
\n routing.http.xff_client_port.enabled
- Indicates whether the\n X-Forwarded-For
header should preserve the source port that the client used\n to connect to the load balancer. The possible values are true
and\n false
. The default is false
.
\n routing.http.xff_header_processing.mode
- Enables you to modify,\n preserve, or remove the X-Forwarded-For
header in the HTTP request before the\n Application Load Balancer sends the request to the target. The possible values are\n append
, preserve
, and remove
. The default is\n append
.
If the value is append
, the Application Load Balancer adds the client\n IP address (of the last hop) to the X-Forwarded-For
header in the HTTP\n request before it sends it to targets.
If the value is preserve
the Application Load Balancer preserves the\n X-Forwarded-For
header in the HTTP request, and sends it to targets\n without any change.
If the value is remove
, the Application Load Balancer removes the\n X-Forwarded-For
header in the HTTP request before it sends it to\n targets.
\n routing.http2.enabled
- Indicates whether HTTP/2 is enabled. The possible\n values are true
and false
. The default is true
.\n Elastic Load Balancing requires that message header names contain only alphanumeric\n characters and hyphens.
\n waf.fail_open.enabled
- Indicates whether to allow a WAF-enabled load\n balancer to route requests to targets if it is unable to forward the request to Amazon Web Services WAF. The possible values are true
and false
. The\n default is false
.
The following attributes are supported by only Network Load Balancers:
\n\n dns_record.client_routing_policy
- Indicates how traffic is \n distributed among the load balancer Availability Zones. The possible values are \n availability_zone_affinity
with 100 percent zonal affinity, \n partial_availability_zone_affinity
with 85 percent zonal affinity, \n and any_availability_zone
with 0 percent zonal affinity.
\n zonal_shift.config.enabled
- Indicates whether zonal shift is \n enabled. The possible values are true
and false
. The \n default is false
.
The anomaly detection result for the target.
\nIf no anomalies were detected, the result is normal
.
If anomalies were detected, the result is anomalous
.
The administrative override information for the target.
" + } } }, "traits": {