aws-cdk-lib 2.177.0__py3-none-any.whl → 2.178.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of aws-cdk-lib might be problematic. Click here for more details.

Files changed (111) hide show
  1. aws_cdk/__init__.py +95 -61
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.177.0.jsii.tgz → aws-cdk-lib@2.178.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_amplifyuibuilder/__init__.py +8 -8
  5. aws_cdk/aws_apigateway/__init__.py +97 -97
  6. aws_cdk/aws_apigatewayv2/__init__.py +35 -10
  7. aws_cdk/aws_appconfig/__init__.py +10 -10
  8. aws_cdk/aws_appflow/__init__.py +20 -20
  9. aws_cdk/aws_applicationsignals/__init__.py +8 -8
  10. aws_cdk/aws_appmesh/__init__.py +8 -8
  11. aws_cdk/aws_appsync/__init__.py +10383 -7035
  12. aws_cdk/aws_apptest/__init__.py +4 -4
  13. aws_cdk/aws_aps/__init__.py +135 -0
  14. aws_cdk/aws_athena/__init__.py +10 -10
  15. aws_cdk/aws_backup/__init__.py +14 -14
  16. aws_cdk/aws_batch/__init__.py +185 -22
  17. aws_cdk/aws_bcmdataexports/__init__.py +4 -4
  18. aws_cdk/aws_bedrock/__init__.py +266 -177
  19. aws_cdk/aws_certificatemanager/__init__.py +15 -14
  20. aws_cdk/aws_chatbot/__init__.py +4 -4
  21. aws_cdk/aws_cloudformation/__init__.py +22 -18
  22. aws_cdk/aws_cloudfront/__init__.py +674 -7
  23. aws_cdk/aws_cloudfront_origins/__init__.py +40 -0
  24. aws_cdk/aws_cloudtrail/__init__.py +4 -4
  25. aws_cdk/aws_cloudwatch/__init__.py +53 -53
  26. aws_cdk/aws_codedeploy/__init__.py +2 -2
  27. aws_cdk/aws_codepipeline/__init__.py +24 -6
  28. aws_cdk/aws_codepipeline_actions/__init__.py +2 -2
  29. aws_cdk/aws_cognito/__init__.py +42 -20
  30. aws_cdk/aws_connect/__init__.py +4 -4
  31. aws_cdk/aws_customerprofiles/__init__.py +3 -1
  32. aws_cdk/aws_databrew/__init__.py +16 -16
  33. aws_cdk/aws_datasync/__init__.py +14 -11
  34. aws_cdk/aws_datazone/__init__.py +5 -5
  35. aws_cdk/aws_dms/__init__.py +4 -4
  36. aws_cdk/aws_dynamodb/__init__.py +267 -25
  37. aws_cdk/aws_ec2/__init__.py +1137 -181
  38. aws_cdk/aws_ecs/__init__.py +740 -116
  39. aws_cdk/aws_ecs_patterns/__init__.py +49 -0
  40. aws_cdk/aws_efs/__init__.py +3 -3
  41. aws_cdk/aws_eks/__init__.py +31 -32
  42. aws_cdk/aws_elasticache/__init__.py +10 -10
  43. aws_cdk/aws_elasticloadbalancingv2/__init__.py +47 -18
  44. aws_cdk/aws_elasticsearch/__init__.py +10 -10
  45. aws_cdk/aws_emr/__init__.py +16 -16
  46. aws_cdk/aws_emrserverless/__init__.py +12 -9
  47. aws_cdk/aws_entityresolution/__init__.py +31 -17
  48. aws_cdk/aws_events/__init__.py +12 -12
  49. aws_cdk/aws_fis/__init__.py +16 -16
  50. aws_cdk/aws_fms/__init__.py +7 -3
  51. aws_cdk/aws_glue/__init__.py +1326 -7
  52. aws_cdk/aws_greengrassv2/__init__.py +8 -8
  53. aws_cdk/aws_guardduty/__init__.py +521 -0
  54. aws_cdk/aws_healthlake/__init__.py +10 -2
  55. aws_cdk/aws_imagebuilder/__init__.py +26 -26
  56. aws_cdk/aws_iot/__init__.py +40 -40
  57. aws_cdk/aws_iotanalytics/__init__.py +4 -4
  58. aws_cdk/aws_iotfleetwise/__init__.py +424 -10
  59. aws_cdk/aws_iotsitewise/__init__.py +84 -13
  60. aws_cdk/aws_iottwinmaker/__init__.py +18 -18
  61. aws_cdk/aws_iotwireless/__init__.py +4 -4
  62. aws_cdk/aws_kafkaconnect/__init__.py +10 -10
  63. aws_cdk/aws_kendra/__init__.py +0 -10
  64. aws_cdk/aws_kinesisanalytics/__init__.py +4 -4
  65. aws_cdk/aws_kinesisanalyticsv2/__init__.py +4 -4
  66. aws_cdk/aws_kinesisfirehose/__init__.py +4544 -183
  67. aws_cdk/aws_kms/__init__.py +11 -10
  68. aws_cdk/aws_lambda/__init__.py +34 -4
  69. aws_cdk/aws_lambda_nodejs/__init__.py +24 -5
  70. aws_cdk/aws_launchwizard/__init__.py +10 -10
  71. aws_cdk/aws_logs/__init__.py +19 -15
  72. aws_cdk/aws_mediaconnect/__init__.py +509 -12
  73. aws_cdk/aws_medialive/__init__.py +16 -16
  74. aws_cdk/aws_mediatailor/__init__.py +10 -10
  75. aws_cdk/aws_networkfirewall/__init__.py +12 -12
  76. aws_cdk/aws_notifications/__init__.py +602 -65
  77. aws_cdk/aws_omics/__init__.py +4 -4
  78. aws_cdk/aws_opensearchservice/__init__.py +10 -10
  79. aws_cdk/aws_opsworks/__init__.py +58 -58
  80. aws_cdk/aws_personalize/__init__.py +8 -8
  81. aws_cdk/aws_pipes/__init__.py +20 -20
  82. aws_cdk/aws_qbusiness/__init__.py +119 -0
  83. aws_cdk/aws_quicksight/__init__.py +247 -92
  84. aws_cdk/aws_rds/__init__.py +21 -15
  85. aws_cdk/aws_redshift/__init__.py +10 -10
  86. aws_cdk/aws_resiliencehub/__init__.py +0 -41
  87. aws_cdk/aws_route53/__init__.py +6 -0
  88. aws_cdk/aws_rum/__init__.py +4 -4
  89. aws_cdk/aws_s3/__init__.py +12 -2
  90. aws_cdk/aws_sagemaker/__init__.py +84 -60
  91. aws_cdk/aws_sam/__init__.py +48 -48
  92. aws_cdk/aws_secretsmanager/__init__.py +30 -14
  93. aws_cdk/aws_securityhub/__init__.py +12 -12
  94. aws_cdk/aws_sns/__init__.py +101 -15
  95. aws_cdk/aws_ssmquicksetup/__init__.py +10 -10
  96. aws_cdk/aws_stepfunctions/__init__.py +13207 -4740
  97. aws_cdk/aws_stepfunctions_tasks/__init__.py +77615 -22817
  98. aws_cdk/aws_synthetics/__init__.py +4 -4
  99. aws_cdk/aws_timestream/__init__.py +41 -0
  100. aws_cdk/aws_transfer/__init__.py +9 -10
  101. aws_cdk/aws_wafv2/__init__.py +24 -22
  102. aws_cdk/aws_wisdom/__init__.py +8 -8
  103. aws_cdk/aws_workspacesweb/__init__.py +60 -60
  104. aws_cdk/aws_xray/__init__.py +8 -8
  105. aws_cdk/cx_api/__init__.py +18 -0
  106. {aws_cdk_lib-2.177.0.dist-info → aws_cdk_lib-2.178.0.dist-info}/METADATA +1 -1
  107. {aws_cdk_lib-2.177.0.dist-info → aws_cdk_lib-2.178.0.dist-info}/RECORD +111 -111
  108. {aws_cdk_lib-2.177.0.dist-info → aws_cdk_lib-2.178.0.dist-info}/LICENSE +0 -0
  109. {aws_cdk_lib-2.177.0.dist-info → aws_cdk_lib-2.178.0.dist-info}/NOTICE +0 -0
  110. {aws_cdk_lib-2.177.0.dist-info → aws_cdk_lib-2.178.0.dist-info}/WHEEL +0 -0
  111. {aws_cdk_lib-2.177.0.dist-info → aws_cdk_lib-2.178.0.dist-info}/top_level.txt +0 -0
@@ -5623,7 +5623,7 @@ class BlockDeviceVolume(
5623
5623
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "virtualName"))
5624
5624
 
5625
5625
 
5626
- @jsii.implements(_IInspectable_c2943556)
5626
+ @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
5627
5627
  class CfnCapacityReservation(
5628
5628
  _CfnResource_9df397a6,
5629
5629
  metaclass=jsii.JSIIMeta,
@@ -5644,12 +5644,13 @@ class CfnCapacityReservation(
5644
5644
  from aws_cdk import aws_ec2 as ec2
5645
5645
 
5646
5646
  cfn_capacity_reservation = ec2.CfnCapacityReservation(self, "MyCfnCapacityReservation",
5647
- availability_zone="availabilityZone",
5648
5647
  instance_count=123,
5649
5648
  instance_platform="instancePlatform",
5650
5649
  instance_type="instanceType",
5651
5650
 
5652
5651
  # the properties below are optional
5652
+ availability_zone="availabilityZone",
5653
+ availability_zone_id="availabilityZoneId",
5653
5654
  ebs_optimized=False,
5654
5655
  end_date="endDate",
5655
5656
  end_date_type="endDateType",
@@ -5674,10 +5675,11 @@ class CfnCapacityReservation(
5674
5675
  scope: _constructs_77d1e7e8.Construct,
5675
5676
  id: builtins.str,
5676
5677
  *,
5677
- availability_zone: builtins.str,
5678
5678
  instance_count: jsii.Number,
5679
5679
  instance_platform: builtins.str,
5680
5680
  instance_type: builtins.str,
5681
+ availability_zone: typing.Optional[builtins.str] = None,
5682
+ availability_zone_id: typing.Optional[builtins.str] = None,
5681
5683
  ebs_optimized: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
5682
5684
  end_date: typing.Optional[builtins.str] = None,
5683
5685
  end_date_type: typing.Optional[builtins.str] = None,
@@ -5685,17 +5687,18 @@ class CfnCapacityReservation(
5685
5687
  instance_match_criteria: typing.Optional[builtins.str] = None,
5686
5688
  out_post_arn: typing.Optional[builtins.str] = None,
5687
5689
  placement_group_arn: typing.Optional[builtins.str] = None,
5688
- tag_specifications: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCapacityReservation.TagSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
5690
+ tag_specifications: typing.Optional[typing.Sequence[typing.Union["CfnCapacityReservation.TagSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
5689
5691
  tenancy: typing.Optional[builtins.str] = None,
5690
5692
  unused_reservation_billing_owner_id: typing.Optional[builtins.str] = None,
5691
5693
  ) -> None:
5692
5694
  '''
5693
5695
  :param scope: Scope in which this resource is defined.
5694
5696
  :param id: Construct identifier for this resource (unique in its scope).
5695
- :param availability_zone: The Availability Zone in which to create the Capacity Reservation.
5696
- :param instance_count: The number of instances for which to reserve capacity. .. epigraph:: You can request future-dated Capacity Reservations for an instance count with a minimum of 100 VPUs. For example, if you request a future-dated Capacity Reservation for ``m5.xlarge`` instances, you must request at least 25 instances ( *25 * m5.xlarge = 100 vCPUs* ). Valid range: 1 - 1000
5697
+ :param instance_count: The number of instances for which to reserve capacity. .. epigraph:: You can request future-dated Capacity Reservations for an instance count with a minimum of 100 vCPUs. For example, if you request a future-dated Capacity Reservation for ``m5.xlarge`` instances, you must request at least 25 instances ( *25 * m5.xlarge = 100 vCPUs* ). Valid range: 1 - 1000
5697
5698
  :param instance_platform: The type of operating system for which to reserve capacity.
5698
5699
  :param instance_type: The instance type for which to reserve capacity. .. epigraph:: You can request future-dated Capacity Reservations for instance types in the C, M, R, I, and T instance families only. For more information, see `Instance types <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html>`_ in the *Amazon EC2 User Guide* .
5700
+ :param availability_zone: The Availability Zone in which to create the Capacity Reservation.
5701
+ :param availability_zone_id: The Availability Zone ID of the Capacity Reservation.
5699
5702
  :param ebs_optimized: Indicates whether the Capacity Reservation supports EBS-optimized instances. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS- optimized instance.
5700
5703
  :param end_date: The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity is released and you can no longer launch instances into it. The Capacity Reservation's state changes to ``expired`` when it reaches its end date and time. You must provide an ``EndDate`` value if ``EndDateType`` is ``limited`` . Omit ``EndDate`` if ``EndDateType`` is ``unlimited`` . If the ``EndDateType`` is ``limited`` , the Capacity Reservation is cancelled within an hour from the specified time. For example, if you specify 5/31/2019, 13:30:55, the Capacity Reservation is guaranteed to end between 13:30:55 and 14:30:55 on 5/31/2019. If you are requesting a future-dated Capacity Reservation, you can't specify an end date and time that is within the commitment duration.
5701
5704
  :param end_date_type: Indicates the way in which the Capacity Reservation ends. A Capacity Reservation can have one of the following end types: - ``unlimited`` - The Capacity Reservation remains active until you explicitly cancel it. Do not provide an ``EndDate`` if the ``EndDateType`` is ``unlimited`` . - ``limited`` - The Capacity Reservation expires automatically at a specified date and time. You must provide an ``EndDate`` value if the ``EndDateType`` value is ``limited`` .
@@ -5712,10 +5715,11 @@ class CfnCapacityReservation(
5712
5715
  check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
5713
5716
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
5714
5717
  props = CfnCapacityReservationProps(
5715
- availability_zone=availability_zone,
5716
5718
  instance_count=instance_count,
5717
5719
  instance_platform=instance_platform,
5718
5720
  instance_type=instance_type,
5721
+ availability_zone=availability_zone,
5722
+ availability_zone_id=availability_zone_id,
5719
5723
  ebs_optimized=ebs_optimized,
5720
5724
  end_date=end_date,
5721
5725
  end_date_type=end_date_type,
@@ -5824,24 +5828,17 @@ class CfnCapacityReservation(
5824
5828
  '''
5825
5829
  return typing.cast(jsii.Number, jsii.get(self, "attrTotalInstanceCount"))
5826
5830
 
5831
+ @builtins.property
5832
+ @jsii.member(jsii_name="cdkTagManager")
5833
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
5834
+ '''Tag Manager which manages the tags for this resource.'''
5835
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
5836
+
5827
5837
  @builtins.property
5828
5838
  @jsii.member(jsii_name="cfnProperties")
5829
5839
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
5830
5840
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
5831
5841
 
5832
- @builtins.property
5833
- @jsii.member(jsii_name="availabilityZone")
5834
- def availability_zone(self) -> builtins.str:
5835
- '''The Availability Zone in which to create the Capacity Reservation.'''
5836
- return typing.cast(builtins.str, jsii.get(self, "availabilityZone"))
5837
-
5838
- @availability_zone.setter
5839
- def availability_zone(self, value: builtins.str) -> None:
5840
- if __debug__:
5841
- type_hints = typing.get_type_hints(_typecheckingstub__c78e4680a157e3466009de77e8aa625d8cf7fee8e6f0094ed98d312434e17d0f)
5842
- check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5843
- jsii.set(self, "availabilityZone", value) # pyright: ignore[reportArgumentType]
5844
-
5845
5842
  @builtins.property
5846
5843
  @jsii.member(jsii_name="instanceCount")
5847
5844
  def instance_count(self) -> jsii.Number:
@@ -5881,6 +5878,32 @@ class CfnCapacityReservation(
5881
5878
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5882
5879
  jsii.set(self, "instanceType", value) # pyright: ignore[reportArgumentType]
5883
5880
 
5881
+ @builtins.property
5882
+ @jsii.member(jsii_name="availabilityZone")
5883
+ def availability_zone(self) -> typing.Optional[builtins.str]:
5884
+ '''The Availability Zone in which to create the Capacity Reservation.'''
5885
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "availabilityZone"))
5886
+
5887
+ @availability_zone.setter
5888
+ def availability_zone(self, value: typing.Optional[builtins.str]) -> None:
5889
+ if __debug__:
5890
+ type_hints = typing.get_type_hints(_typecheckingstub__c78e4680a157e3466009de77e8aa625d8cf7fee8e6f0094ed98d312434e17d0f)
5891
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5892
+ jsii.set(self, "availabilityZone", value) # pyright: ignore[reportArgumentType]
5893
+
5894
+ @builtins.property
5895
+ @jsii.member(jsii_name="availabilityZoneId")
5896
+ def availability_zone_id(self) -> typing.Optional[builtins.str]:
5897
+ '''The Availability Zone ID of the Capacity Reservation.'''
5898
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "availabilityZoneId"))
5899
+
5900
+ @availability_zone_id.setter
5901
+ def availability_zone_id(self, value: typing.Optional[builtins.str]) -> None:
5902
+ if __debug__:
5903
+ type_hints = typing.get_type_hints(_typecheckingstub__3491534eeb43f169595d5744c952b4e6e91b59d668a8f0213de96d7e46d772f0)
5904
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5905
+ jsii.set(self, "availabilityZoneId", value) # pyright: ignore[reportArgumentType]
5906
+
5884
5907
  @builtins.property
5885
5908
  @jsii.member(jsii_name="ebsOptimized")
5886
5909
  def ebs_optimized(
@@ -5993,14 +6016,14 @@ class CfnCapacityReservation(
5993
6016
  @jsii.member(jsii_name="tagSpecifications")
5994
6017
  def tag_specifications(
5995
6018
  self,
5996
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnCapacityReservation.TagSpecificationProperty"]]]]:
6019
+ ) -> typing.Optional[typing.List["CfnCapacityReservation.TagSpecificationProperty"]]:
5997
6020
  '''The tags to apply to the Capacity Reservation during launch.'''
5998
- return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnCapacityReservation.TagSpecificationProperty"]]]], jsii.get(self, "tagSpecifications"))
6021
+ return typing.cast(typing.Optional[typing.List["CfnCapacityReservation.TagSpecificationProperty"]], jsii.get(self, "tagSpecifications"))
5999
6022
 
6000
6023
  @tag_specifications.setter
6001
6024
  def tag_specifications(
6002
6025
  self,
6003
- value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnCapacityReservation.TagSpecificationProperty"]]]],
6026
+ value: typing.Optional[typing.List["CfnCapacityReservation.TagSpecificationProperty"]],
6004
6027
  ) -> None:
6005
6028
  if __debug__:
6006
6029
  type_hints = typing.get_type_hints(_typecheckingstub__d2d4ed674b30189cbf7b11b79e68ea556b2b7c9921a4d61f7610b58d25fed8ca)
@@ -6878,10 +6901,11 @@ class CfnCapacityReservationFleetProps:
6878
6901
  jsii_type="aws-cdk-lib.aws_ec2.CfnCapacityReservationProps",
6879
6902
  jsii_struct_bases=[],
6880
6903
  name_mapping={
6881
- "availability_zone": "availabilityZone",
6882
6904
  "instance_count": "instanceCount",
6883
6905
  "instance_platform": "instancePlatform",
6884
6906
  "instance_type": "instanceType",
6907
+ "availability_zone": "availabilityZone",
6908
+ "availability_zone_id": "availabilityZoneId",
6885
6909
  "ebs_optimized": "ebsOptimized",
6886
6910
  "end_date": "endDate",
6887
6911
  "end_date_type": "endDateType",
@@ -6898,10 +6922,11 @@ class CfnCapacityReservationProps:
6898
6922
  def __init__(
6899
6923
  self,
6900
6924
  *,
6901
- availability_zone: builtins.str,
6902
6925
  instance_count: jsii.Number,
6903
6926
  instance_platform: builtins.str,
6904
6927
  instance_type: builtins.str,
6928
+ availability_zone: typing.Optional[builtins.str] = None,
6929
+ availability_zone_id: typing.Optional[builtins.str] = None,
6905
6930
  ebs_optimized: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
6906
6931
  end_date: typing.Optional[builtins.str] = None,
6907
6932
  end_date_type: typing.Optional[builtins.str] = None,
@@ -6909,16 +6934,17 @@ class CfnCapacityReservationProps:
6909
6934
  instance_match_criteria: typing.Optional[builtins.str] = None,
6910
6935
  out_post_arn: typing.Optional[builtins.str] = None,
6911
6936
  placement_group_arn: typing.Optional[builtins.str] = None,
6912
- tag_specifications: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCapacityReservation.TagSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
6937
+ tag_specifications: typing.Optional[typing.Sequence[typing.Union[CfnCapacityReservation.TagSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
6913
6938
  tenancy: typing.Optional[builtins.str] = None,
6914
6939
  unused_reservation_billing_owner_id: typing.Optional[builtins.str] = None,
6915
6940
  ) -> None:
6916
6941
  '''Properties for defining a ``CfnCapacityReservation``.
6917
6942
 
6918
- :param availability_zone: The Availability Zone in which to create the Capacity Reservation.
6919
- :param instance_count: The number of instances for which to reserve capacity. .. epigraph:: You can request future-dated Capacity Reservations for an instance count with a minimum of 100 VPUs. For example, if you request a future-dated Capacity Reservation for ``m5.xlarge`` instances, you must request at least 25 instances ( *25 * m5.xlarge = 100 vCPUs* ). Valid range: 1 - 1000
6943
+ :param instance_count: The number of instances for which to reserve capacity. .. epigraph:: You can request future-dated Capacity Reservations for an instance count with a minimum of 100 vCPUs. For example, if you request a future-dated Capacity Reservation for ``m5.xlarge`` instances, you must request at least 25 instances ( *25 * m5.xlarge = 100 vCPUs* ). Valid range: 1 - 1000
6920
6944
  :param instance_platform: The type of operating system for which to reserve capacity.
6921
6945
  :param instance_type: The instance type for which to reserve capacity. .. epigraph:: You can request future-dated Capacity Reservations for instance types in the C, M, R, I, and T instance families only. For more information, see `Instance types <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html>`_ in the *Amazon EC2 User Guide* .
6946
+ :param availability_zone: The Availability Zone in which to create the Capacity Reservation.
6947
+ :param availability_zone_id: The Availability Zone ID of the Capacity Reservation.
6922
6948
  :param ebs_optimized: Indicates whether the Capacity Reservation supports EBS-optimized instances. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS- optimized instance.
6923
6949
  :param end_date: The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity is released and you can no longer launch instances into it. The Capacity Reservation's state changes to ``expired`` when it reaches its end date and time. You must provide an ``EndDate`` value if ``EndDateType`` is ``limited`` . Omit ``EndDate`` if ``EndDateType`` is ``unlimited`` . If the ``EndDateType`` is ``limited`` , the Capacity Reservation is cancelled within an hour from the specified time. For example, if you specify 5/31/2019, 13:30:55, the Capacity Reservation is guaranteed to end between 13:30:55 and 14:30:55 on 5/31/2019. If you are requesting a future-dated Capacity Reservation, you can't specify an end date and time that is within the commitment duration.
6924
6950
  :param end_date_type: Indicates the way in which the Capacity Reservation ends. A Capacity Reservation can have one of the following end types: - ``unlimited`` - The Capacity Reservation remains active until you explicitly cancel it. Do not provide an ``EndDate`` if the ``EndDateType`` is ``unlimited`` . - ``limited`` - The Capacity Reservation expires automatically at a specified date and time. You must provide an ``EndDate`` value if the ``EndDateType`` value is ``limited`` .
@@ -6940,12 +6966,13 @@ class CfnCapacityReservationProps:
6940
6966
  from aws_cdk import aws_ec2 as ec2
6941
6967
 
6942
6968
  cfn_capacity_reservation_props = ec2.CfnCapacityReservationProps(
6943
- availability_zone="availabilityZone",
6944
6969
  instance_count=123,
6945
6970
  instance_platform="instancePlatform",
6946
6971
  instance_type="instanceType",
6947
6972
 
6948
6973
  # the properties below are optional
6974
+ availability_zone="availabilityZone",
6975
+ availability_zone_id="availabilityZoneId",
6949
6976
  ebs_optimized=False,
6950
6977
  end_date="endDate",
6951
6978
  end_date_type="endDateType",
@@ -6966,10 +6993,11 @@ class CfnCapacityReservationProps:
6966
6993
  '''
6967
6994
  if __debug__:
6968
6995
  type_hints = typing.get_type_hints(_typecheckingstub__8a65d4e8bb2e678a9a6387fd809c3b5428c783211224ece5155ec92d1eda301d)
6969
- check_type(argname="argument availability_zone", value=availability_zone, expected_type=type_hints["availability_zone"])
6970
6996
  check_type(argname="argument instance_count", value=instance_count, expected_type=type_hints["instance_count"])
6971
6997
  check_type(argname="argument instance_platform", value=instance_platform, expected_type=type_hints["instance_platform"])
6972
6998
  check_type(argname="argument instance_type", value=instance_type, expected_type=type_hints["instance_type"])
6999
+ check_type(argname="argument availability_zone", value=availability_zone, expected_type=type_hints["availability_zone"])
7000
+ check_type(argname="argument availability_zone_id", value=availability_zone_id, expected_type=type_hints["availability_zone_id"])
6973
7001
  check_type(argname="argument ebs_optimized", value=ebs_optimized, expected_type=type_hints["ebs_optimized"])
6974
7002
  check_type(argname="argument end_date", value=end_date, expected_type=type_hints["end_date"])
6975
7003
  check_type(argname="argument end_date_type", value=end_date_type, expected_type=type_hints["end_date_type"])
@@ -6981,11 +7009,14 @@ class CfnCapacityReservationProps:
6981
7009
  check_type(argname="argument tenancy", value=tenancy, expected_type=type_hints["tenancy"])
6982
7010
  check_type(argname="argument unused_reservation_billing_owner_id", value=unused_reservation_billing_owner_id, expected_type=type_hints["unused_reservation_billing_owner_id"])
6983
7011
  self._values: typing.Dict[builtins.str, typing.Any] = {
6984
- "availability_zone": availability_zone,
6985
7012
  "instance_count": instance_count,
6986
7013
  "instance_platform": instance_platform,
6987
7014
  "instance_type": instance_type,
6988
7015
  }
7016
+ if availability_zone is not None:
7017
+ self._values["availability_zone"] = availability_zone
7018
+ if availability_zone_id is not None:
7019
+ self._values["availability_zone_id"] = availability_zone_id
6989
7020
  if ebs_optimized is not None:
6990
7021
  self._values["ebs_optimized"] = ebs_optimized
6991
7022
  if end_date is not None:
@@ -7007,23 +7038,13 @@ class CfnCapacityReservationProps:
7007
7038
  if unused_reservation_billing_owner_id is not None:
7008
7039
  self._values["unused_reservation_billing_owner_id"] = unused_reservation_billing_owner_id
7009
7040
 
7010
- @builtins.property
7011
- def availability_zone(self) -> builtins.str:
7012
- '''The Availability Zone in which to create the Capacity Reservation.
7013
-
7014
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-availabilityzone
7015
- '''
7016
- result = self._values.get("availability_zone")
7017
- assert result is not None, "Required property 'availability_zone' is missing"
7018
- return typing.cast(builtins.str, result)
7019
-
7020
7041
  @builtins.property
7021
7042
  def instance_count(self) -> jsii.Number:
7022
7043
  '''The number of instances for which to reserve capacity.
7023
7044
 
7024
7045
  .. epigraph::
7025
7046
 
7026
- You can request future-dated Capacity Reservations for an instance count with a minimum of 100 VPUs. For example, if you request a future-dated Capacity Reservation for ``m5.xlarge`` instances, you must request at least 25 instances ( *25 * m5.xlarge = 100 vCPUs* ).
7047
+ You can request future-dated Capacity Reservations for an instance count with a minimum of 100 vCPUs. For example, if you request a future-dated Capacity Reservation for ``m5.xlarge`` instances, you must request at least 25 instances ( *25 * m5.xlarge = 100 vCPUs* ).
7027
7048
 
7028
7049
  Valid range: 1 - 1000
7029
7050
 
@@ -7059,6 +7080,24 @@ class CfnCapacityReservationProps:
7059
7080
  assert result is not None, "Required property 'instance_type' is missing"
7060
7081
  return typing.cast(builtins.str, result)
7061
7082
 
7083
+ @builtins.property
7084
+ def availability_zone(self) -> typing.Optional[builtins.str]:
7085
+ '''The Availability Zone in which to create the Capacity Reservation.
7086
+
7087
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-availabilityzone
7088
+ '''
7089
+ result = self._values.get("availability_zone")
7090
+ return typing.cast(typing.Optional[builtins.str], result)
7091
+
7092
+ @builtins.property
7093
+ def availability_zone_id(self) -> typing.Optional[builtins.str]:
7094
+ '''The Availability Zone ID of the Capacity Reservation.
7095
+
7096
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-availabilityzoneid
7097
+ '''
7098
+ result = self._values.get("availability_zone_id")
7099
+ return typing.cast(typing.Optional[builtins.str], result)
7100
+
7062
7101
  @builtins.property
7063
7102
  def ebs_optimized(
7064
7103
  self,
@@ -7161,13 +7200,13 @@ class CfnCapacityReservationProps:
7161
7200
  @builtins.property
7162
7201
  def tag_specifications(
7163
7202
  self,
7164
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnCapacityReservation.TagSpecificationProperty]]]]:
7203
+ ) -> typing.Optional[typing.List[CfnCapacityReservation.TagSpecificationProperty]]:
7165
7204
  '''The tags to apply to the Capacity Reservation during launch.
7166
7205
 
7167
7206
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-tagspecifications
7168
7207
  '''
7169
7208
  result = self._values.get("tag_specifications")
7170
- return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnCapacityReservation.TagSpecificationProperty]]]], result)
7209
+ return typing.cast(typing.Optional[typing.List[CfnCapacityReservation.TagSpecificationProperty]], result)
7171
7210
 
7172
7211
  @builtins.property
7173
7212
  def tenancy(self) -> typing.Optional[builtins.str]:
@@ -7803,6 +7842,7 @@ class CfnClientVpnEndpoint(
7803
7842
  banner_text="bannerText"
7804
7843
  ),
7805
7844
  description="description",
7845
+ disconnect_on_session_timeout=False,
7806
7846
  dns_servers=["dnsServers"],
7807
7847
  security_group_ids=["securityGroupIds"],
7808
7848
  self_service_portal="selfServicePortal",
@@ -7833,6 +7873,7 @@ class CfnClientVpnEndpoint(
7833
7873
  client_connect_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnClientVpnEndpoint.ClientConnectOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7834
7874
  client_login_banner_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnClientVpnEndpoint.ClientLoginBannerOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7835
7875
  description: typing.Optional[builtins.str] = None,
7876
+ disconnect_on_session_timeout: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
7836
7877
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
7837
7878
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
7838
7879
  self_service_portal: typing.Optional[builtins.str] = None,
@@ -7853,6 +7894,7 @@ class CfnClientVpnEndpoint(
7853
7894
  :param client_connect_options: The options for managing connection authorization for new client connections.
7854
7895
  :param client_login_banner_options: Options for enabling a customizable text banner that will be displayed on AWS provided clients when a VPN session is established.
7855
7896
  :param description: A brief description of the Client VPN endpoint.
7897
+ :param disconnect_on_session_timeout: Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeoutHours`` is reached. If ``true`` , users are prompted to reconnect client VPN. If ``false`` , client VPN attempts to reconnect automatically. The default value is ``false`` .
7856
7898
  :param dns_servers: Information about the DNS servers to be used for DNS resolution. A Client VPN endpoint can have up to two DNS servers. If no DNS server is specified, the DNS address configured on the device is used for the DNS server.
7857
7899
  :param security_group_ids: The IDs of one or more security groups to apply to the target network. You must also specify the ID of the VPC that contains the security groups.
7858
7900
  :param self_service_portal: Specify whether to enable the self-service portal for the Client VPN endpoint. Default Value: ``enabled``
@@ -7875,6 +7917,7 @@ class CfnClientVpnEndpoint(
7875
7917
  client_connect_options=client_connect_options,
7876
7918
  client_login_banner_options=client_login_banner_options,
7877
7919
  description=description,
7920
+ disconnect_on_session_timeout=disconnect_on_session_timeout,
7878
7921
  dns_servers=dns_servers,
7879
7922
  security_group_ids=security_group_ids,
7880
7923
  self_service_portal=self_service_portal,
@@ -8042,6 +8085,24 @@ class CfnClientVpnEndpoint(
8042
8085
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
8043
8086
  jsii.set(self, "description", value) # pyright: ignore[reportArgumentType]
8044
8087
 
8088
+ @builtins.property
8089
+ @jsii.member(jsii_name="disconnectOnSessionTimeout")
8090
+ def disconnect_on_session_timeout(
8091
+ self,
8092
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
8093
+ '''Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeoutHours`` is reached.'''
8094
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "disconnectOnSessionTimeout"))
8095
+
8096
+ @disconnect_on_session_timeout.setter
8097
+ def disconnect_on_session_timeout(
8098
+ self,
8099
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
8100
+ ) -> None:
8101
+ if __debug__:
8102
+ type_hints = typing.get_type_hints(_typecheckingstub__7a04e648e3ab2786626daca4bea9d7e5d9f8fd502183ea90643aafd9a31a5f2c)
8103
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
8104
+ jsii.set(self, "disconnectOnSessionTimeout", value) # pyright: ignore[reportArgumentType]
8105
+
8045
8106
  @builtins.property
8046
8107
  @jsii.member(jsii_name="dnsServers")
8047
8108
  def dns_servers(self) -> typing.Optional[typing.List[builtins.str]]:
@@ -8826,6 +8887,7 @@ class CfnClientVpnEndpoint(
8826
8887
  "client_connect_options": "clientConnectOptions",
8827
8888
  "client_login_banner_options": "clientLoginBannerOptions",
8828
8889
  "description": "description",
8890
+ "disconnect_on_session_timeout": "disconnectOnSessionTimeout",
8829
8891
  "dns_servers": "dnsServers",
8830
8892
  "security_group_ids": "securityGroupIds",
8831
8893
  "self_service_portal": "selfServicePortal",
@@ -8848,6 +8910,7 @@ class CfnClientVpnEndpointProps:
8848
8910
  client_connect_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientConnectOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8849
8911
  client_login_banner_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientLoginBannerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8850
8912
  description: typing.Optional[builtins.str] = None,
8913
+ disconnect_on_session_timeout: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
8851
8914
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
8852
8915
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
8853
8916
  self_service_portal: typing.Optional[builtins.str] = None,
@@ -8867,6 +8930,7 @@ class CfnClientVpnEndpointProps:
8867
8930
  :param client_connect_options: The options for managing connection authorization for new client connections.
8868
8931
  :param client_login_banner_options: Options for enabling a customizable text banner that will be displayed on AWS provided clients when a VPN session is established.
8869
8932
  :param description: A brief description of the Client VPN endpoint.
8933
+ :param disconnect_on_session_timeout: Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeoutHours`` is reached. If ``true`` , users are prompted to reconnect client VPN. If ``false`` , client VPN attempts to reconnect automatically. The default value is ``false`` .
8870
8934
  :param dns_servers: Information about the DNS servers to be used for DNS resolution. A Client VPN endpoint can have up to two DNS servers. If no DNS server is specified, the DNS address configured on the device is used for the DNS server.
8871
8935
  :param security_group_ids: The IDs of one or more security groups to apply to the target network. You must also specify the ID of the VPC that contains the security groups.
8872
8936
  :param self_service_portal: Specify whether to enable the self-service portal for the Client VPN endpoint. Default Value: ``enabled``
@@ -8928,6 +8992,7 @@ class CfnClientVpnEndpointProps:
8928
8992
  banner_text="bannerText"
8929
8993
  ),
8930
8994
  description="description",
8995
+ disconnect_on_session_timeout=False,
8931
8996
  dns_servers=["dnsServers"],
8932
8997
  security_group_ids=["securityGroupIds"],
8933
8998
  self_service_portal="selfServicePortal",
@@ -8954,6 +9019,7 @@ class CfnClientVpnEndpointProps:
8954
9019
  check_type(argname="argument client_connect_options", value=client_connect_options, expected_type=type_hints["client_connect_options"])
8955
9020
  check_type(argname="argument client_login_banner_options", value=client_login_banner_options, expected_type=type_hints["client_login_banner_options"])
8956
9021
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
9022
+ check_type(argname="argument disconnect_on_session_timeout", value=disconnect_on_session_timeout, expected_type=type_hints["disconnect_on_session_timeout"])
8957
9023
  check_type(argname="argument dns_servers", value=dns_servers, expected_type=type_hints["dns_servers"])
8958
9024
  check_type(argname="argument security_group_ids", value=security_group_ids, expected_type=type_hints["security_group_ids"])
8959
9025
  check_type(argname="argument self_service_portal", value=self_service_portal, expected_type=type_hints["self_service_portal"])
@@ -8975,6 +9041,8 @@ class CfnClientVpnEndpointProps:
8975
9041
  self._values["client_login_banner_options"] = client_login_banner_options
8976
9042
  if description is not None:
8977
9043
  self._values["description"] = description
9044
+ if disconnect_on_session_timeout is not None:
9045
+ self._values["disconnect_on_session_timeout"] = disconnect_on_session_timeout
8978
9046
  if dns_servers is not None:
8979
9047
  self._values["dns_servers"] = dns_servers
8980
9048
  if security_group_ids is not None:
@@ -9080,6 +9148,19 @@ class CfnClientVpnEndpointProps:
9080
9148
  result = self._values.get("description")
9081
9149
  return typing.cast(typing.Optional[builtins.str], result)
9082
9150
 
9151
+ @builtins.property
9152
+ def disconnect_on_session_timeout(
9153
+ self,
9154
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
9155
+ '''Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeoutHours`` is reached.
9156
+
9157
+ If ``true`` , users are prompted to reconnect client VPN. If ``false`` , client VPN attempts to reconnect automatically. The default value is ``false`` .
9158
+
9159
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-disconnectonsessiontimeout
9160
+ '''
9161
+ result = self._values.get("disconnect_on_session_timeout")
9162
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
9163
+
9083
9164
  @builtins.property
9084
9165
  def dns_servers(self) -> typing.Optional[typing.List[builtins.str]]:
9085
9166
  '''Information about the DNS servers to be used for DNS resolution.
@@ -19974,7 +20055,7 @@ class CfnInstance(
19974
20055
  :param block_device_mappings: The block device mapping entries that defines the block devices to attach to the instance at launch. By default, the block devices specified in the block device mapping for the AMI are used. You can override the AMI block device mapping using the instance block device mapping. For the root volume, you can override only the volume size, volume type, volume encryption settings, and the ``DeleteOnTermination`` setting. .. epigraph:: After the instance is running, you can modify only the ``DeleteOnTermination`` parameter for the attached volumes without interrupting the instance. Modifying any other parameter results in instance `replacement <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement>`_ .
19975
20056
  :param cpu_options: The CPU options for the instance. For more information, see `Optimize CPU options <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html>`_ in the *Amazon Elastic Compute Cloud User Guide* .
19976
20057
  :param credit_specification: The credit option for CPU usage of the burstable performance instance. Valid values are ``standard`` and ``unlimited`` . To change this attribute after launch, use `ModifyInstanceCreditSpecification <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceCreditSpecification.html>`_ . For more information, see `Burstable performance instances <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html>`_ in the *Amazon EC2 User Guide* . Default: ``standard`` (T2 instances) or ``unlimited`` (T3/T3a/T4g instances) For T3 instances with ``host`` tenancy, only ``standard`` is supported.
19977
- :param disable_api_termination: If you set this parameter to ``true`` , you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute after launch, use `ModifyInstanceAttribute <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html>`_ . Alternatively, if you set ``InstanceInitiatedShutdownBehavior`` to ``terminate`` , you can terminate the instance by running the shutdown command from the instance. Default: ``false``
20058
+ :param disable_api_termination: Indicates whether termination protection is enabled for the instance. The default is ``false`` , which means that you can terminate the instance using the Amazon EC2 console, command line tools, or API. You can enable termination protection when you launch an instance, while the instance is running, or while the instance is stopped.
19978
20059
  :param ebs_optimized: Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance. Default: ``false``
19979
20060
  :param elastic_gpu_specifications: An elastic GPU to associate with the instance. .. epigraph:: Amazon Elastic Graphics reached end of life on January 8, 2024.
19980
20061
  :param elastic_inference_accelerators: An elastic inference accelerator to associate with the instance. .. epigraph:: Amazon Elastic Inference is no longer available.
@@ -20276,7 +20357,7 @@ class CfnInstance(
20276
20357
  def disable_api_termination(
20277
20358
  self,
20278
20359
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
20279
- '''If you set this parameter to ``true`` , you can't terminate the instance using the Amazon EC2 console, CLI, or API;'''
20360
+ '''Indicates whether termination protection is enabled for the instance.'''
20280
20361
  return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "disableApiTermination"))
20281
20362
 
20282
20363
  @disable_api_termination.setter
@@ -23048,7 +23129,7 @@ class CfnInstanceProps:
23048
23129
  :param block_device_mappings: The block device mapping entries that defines the block devices to attach to the instance at launch. By default, the block devices specified in the block device mapping for the AMI are used. You can override the AMI block device mapping using the instance block device mapping. For the root volume, you can override only the volume size, volume type, volume encryption settings, and the ``DeleteOnTermination`` setting. .. epigraph:: After the instance is running, you can modify only the ``DeleteOnTermination`` parameter for the attached volumes without interrupting the instance. Modifying any other parameter results in instance `replacement <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement>`_ .
23049
23130
  :param cpu_options: The CPU options for the instance. For more information, see `Optimize CPU options <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html>`_ in the *Amazon Elastic Compute Cloud User Guide* .
23050
23131
  :param credit_specification: The credit option for CPU usage of the burstable performance instance. Valid values are ``standard`` and ``unlimited`` . To change this attribute after launch, use `ModifyInstanceCreditSpecification <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceCreditSpecification.html>`_ . For more information, see `Burstable performance instances <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html>`_ in the *Amazon EC2 User Guide* . Default: ``standard`` (T2 instances) or ``unlimited`` (T3/T3a/T4g instances) For T3 instances with ``host`` tenancy, only ``standard`` is supported.
23051
- :param disable_api_termination: If you set this parameter to ``true`` , you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute after launch, use `ModifyInstanceAttribute <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html>`_ . Alternatively, if you set ``InstanceInitiatedShutdownBehavior`` to ``terminate`` , you can terminate the instance by running the shutdown command from the instance. Default: ``false``
23132
+ :param disable_api_termination: Indicates whether termination protection is enabled for the instance. The default is ``false`` , which means that you can terminate the instance using the Amazon EC2 console, command line tools, or API. You can enable termination protection when you launch an instance, while the instance is running, or while the instance is stopped.
23052
23133
  :param ebs_optimized: Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance. Default: ``false``
23053
23134
  :param elastic_gpu_specifications: An elastic GPU to associate with the instance. .. epigraph:: Amazon Elastic Graphics reached end of life on January 8, 2024.
23054
23135
  :param elastic_inference_accelerators: An elastic inference accelerator to associate with the instance. .. epigraph:: Amazon Elastic Inference is no longer available.
@@ -23424,11 +23505,9 @@ class CfnInstanceProps:
23424
23505
  def disable_api_termination(
23425
23506
  self,
23426
23507
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
23427
- '''If you set this parameter to ``true`` , you can't terminate the instance using the Amazon EC2 console, CLI, or API;
23428
-
23429
- otherwise, you can. To change this attribute after launch, use `ModifyInstanceAttribute <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html>`_ . Alternatively, if you set ``InstanceInitiatedShutdownBehavior`` to ``terminate`` , you can terminate the instance by running the shutdown command from the instance.
23508
+ '''Indicates whether termination protection is enabled for the instance.
23430
23509
 
23431
- Default: ``false``
23510
+ The default is ``false`` , which means that you can terminate the instance using the Amazon EC2 console, command line tools, or API. You can enable termination protection when you launch an instance, while the instance is running, or while the instance is stopped.
23432
23511
 
23433
23512
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instance.html#cfn-ec2-instance-disableapitermination
23434
23513
  '''
@@ -27102,7 +27181,7 @@ class CfnLaunchTemplate(
27102
27181
  :param cpu_options: The CPU options for the instance. For more information, see `Optimize CPU options <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html>`_ in the *Amazon EC2 User Guide* .
27103
27182
  :param credit_specification: The credit option for CPU usage of the instance. Valid only for T instances.
27104
27183
  :param disable_api_stop: Indicates whether to enable the instance for stop protection. For more information, see `Enable stop protection for your instance <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-stop-protection.html>`_ in the *Amazon EC2 User Guide* .
27105
- :param disable_api_termination: If you set this parameter to ``true`` , you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute after launch, use `ModifyInstanceAttribute <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html>`_ . Alternatively, if you set ``InstanceInitiatedShutdownBehavior`` to ``terminate`` , you can terminate the instance by running the shutdown command from the instance.
27184
+ :param disable_api_termination: Indicates whether termination protection is enabled for the instance. The default is ``false`` , which means that you can terminate the instance using the Amazon EC2 console, command line tools, or API. You can enable termination protection when you launch an instance, while the instance is running, or while the instance is stopped.
27106
27185
  :param ebs_optimized: Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.
27107
27186
  :param elastic_gpu_specifications: Deprecated. .. epigraph:: Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, G4dn, or G5 instances.
27108
27187
  :param elastic_inference_accelerators: .. epigraph:: Amazon Elastic Inference is no longer available. An elastic inference accelerator to associate with the instance. Elastic inference accelerators are a resource you can attach to your Amazon EC2 instances to accelerate your Deep Learning (DL) inference workloads. You cannot specify accelerators from different generations in the same request. .. epigraph:: Starting April 15, 2023, AWS will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.
@@ -27515,9 +27594,9 @@ class CfnLaunchTemplate(
27515
27594
  def disable_api_termination(
27516
27595
  self,
27517
27596
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
27518
- '''If you set this parameter to ``true`` , you can't terminate the instance using the Amazon EC2 console, CLI, or API;
27597
+ '''Indicates whether termination protection is enabled for the instance.
27519
27598
 
27520
- otherwise, you can. To change this attribute after launch, use `ModifyInstanceAttribute <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html>`_ . Alternatively, if you set ``InstanceInitiatedShutdownBehavior`` to ``terminate`` , you can terminate the instance by running the shutdown command from the instance.
27599
+ The default is ``false`` , which means that you can terminate the instance using the Amazon EC2 console, command line tools, or API. You can enable termination protection when you launch an instance, while the instance is running, or while the instance is stopped.
27521
27600
 
27522
27601
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-disableapitermination
27523
27602
  '''
@@ -63058,28 +63137,54 @@ class CfnVerifiedAccessEndpoint(
63058
63137
  from aws_cdk import aws_ec2 as ec2
63059
63138
 
63060
63139
  cfn_verified_access_endpoint = ec2.CfnVerifiedAccessEndpoint(self, "MyCfnVerifiedAccessEndpoint",
63061
- application_domain="applicationDomain",
63062
63140
  attachment_type="attachmentType",
63063
- domain_certificate_arn="domainCertificateArn",
63064
- endpoint_domain_prefix="endpointDomainPrefix",
63065
63141
  endpoint_type="endpointType",
63066
63142
  verified_access_group_id="verifiedAccessGroupId",
63067
63143
 
63068
63144
  # the properties below are optional
63145
+ application_domain="applicationDomain",
63146
+ cidr_options=ec2.CfnVerifiedAccessEndpoint.CidrOptionsProperty(
63147
+ cidr="cidr",
63148
+ port_ranges=[ec2.CfnVerifiedAccessEndpoint.PortRangeProperty(
63149
+ from_port=123,
63150
+ to_port=123
63151
+ )],
63152
+ protocol="protocol",
63153
+ subnet_ids=["subnetIds"]
63154
+ ),
63069
63155
  description="description",
63156
+ domain_certificate_arn="domainCertificateArn",
63157
+ endpoint_domain_prefix="endpointDomainPrefix",
63070
63158
  load_balancer_options=ec2.CfnVerifiedAccessEndpoint.LoadBalancerOptionsProperty(
63071
63159
  load_balancer_arn="loadBalancerArn",
63072
63160
  port=123,
63161
+ port_ranges=[ec2.CfnVerifiedAccessEndpoint.PortRangeProperty(
63162
+ from_port=123,
63163
+ to_port=123
63164
+ )],
63073
63165
  protocol="protocol",
63074
63166
  subnet_ids=["subnetIds"]
63075
63167
  ),
63076
63168
  network_interface_options=ec2.CfnVerifiedAccessEndpoint.NetworkInterfaceOptionsProperty(
63077
63169
  network_interface_id="networkInterfaceId",
63078
63170
  port=123,
63171
+ port_ranges=[ec2.CfnVerifiedAccessEndpoint.PortRangeProperty(
63172
+ from_port=123,
63173
+ to_port=123
63174
+ )],
63079
63175
  protocol="protocol"
63080
63176
  ),
63081
63177
  policy_document="policyDocument",
63082
63178
  policy_enabled=False,
63179
+ rds_options=ec2.CfnVerifiedAccessEndpoint.RdsOptionsProperty(
63180
+ port=123,
63181
+ protocol="protocol",
63182
+ rds_db_cluster_arn="rdsDbClusterArn",
63183
+ rds_db_instance_arn="rdsDbInstanceArn",
63184
+ rds_db_proxy_arn="rdsDbProxyArn",
63185
+ rds_endpoint="rdsEndpoint",
63186
+ subnet_ids=["subnetIds"]
63187
+ ),
63083
63188
  security_group_ids=["securityGroupIds"],
63084
63189
  sse_specification=ec2.CfnVerifiedAccessEndpoint.SseSpecificationProperty(
63085
63190
  customer_managed_key_enabled=False,
@@ -63097,17 +63202,19 @@ class CfnVerifiedAccessEndpoint(
63097
63202
  scope: _constructs_77d1e7e8.Construct,
63098
63203
  id: builtins.str,
63099
63204
  *,
63100
- application_domain: builtins.str,
63101
63205
  attachment_type: builtins.str,
63102
- domain_certificate_arn: builtins.str,
63103
- endpoint_domain_prefix: builtins.str,
63104
63206
  endpoint_type: builtins.str,
63105
63207
  verified_access_group_id: builtins.str,
63208
+ application_domain: typing.Optional[builtins.str] = None,
63209
+ cidr_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessEndpoint.CidrOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
63106
63210
  description: typing.Optional[builtins.str] = None,
63211
+ domain_certificate_arn: typing.Optional[builtins.str] = None,
63212
+ endpoint_domain_prefix: typing.Optional[builtins.str] = None,
63107
63213
  load_balancer_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessEndpoint.LoadBalancerOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
63108
63214
  network_interface_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessEndpoint.NetworkInterfaceOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
63109
63215
  policy_document: typing.Optional[builtins.str] = None,
63110
63216
  policy_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
63217
+ rds_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessEndpoint.RdsOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
63111
63218
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
63112
63219
  sse_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessEndpoint.SseSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
63113
63220
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -63115,17 +63222,19 @@ class CfnVerifiedAccessEndpoint(
63115
63222
  '''
63116
63223
  :param scope: Scope in which this resource is defined.
63117
63224
  :param id: Construct identifier for this resource (unique in its scope).
63118
- :param application_domain: The DNS name for users to reach your application.
63119
63225
  :param attachment_type: The type of attachment used to provide connectivity between the AWS Verified Access endpoint and the application.
63120
- :param domain_certificate_arn: The ARN of a public TLS/SSL certificate imported into or created with ACM.
63121
- :param endpoint_domain_prefix: A custom identifier that is prepended to the DNS name that is generated for the endpoint.
63122
63226
  :param endpoint_type: The type of AWS Verified Access endpoint. Incoming application requests will be sent to an IP address, load balancer or a network interface depending on the endpoint type specified.
63123
63227
  :param verified_access_group_id: The ID of the AWS Verified Access group.
63228
+ :param application_domain: The DNS name for users to reach your application.
63229
+ :param cidr_options: The options for a CIDR endpoint.
63124
63230
  :param description: A description for the AWS Verified Access endpoint.
63231
+ :param domain_certificate_arn: The ARN of a public TLS/SSL certificate imported into or created with ACM.
63232
+ :param endpoint_domain_prefix: A custom identifier that is prepended to the DNS name that is generated for the endpoint.
63125
63233
  :param load_balancer_options: The load balancer details if creating the AWS Verified Access endpoint as ``load-balancer`` type.
63126
63234
  :param network_interface_options: The options for network-interface type endpoint.
63127
63235
  :param policy_document: The Verified Access policy document.
63128
63236
  :param policy_enabled: The status of the Verified Access policy.
63237
+ :param rds_options: The options for an RDS endpoint.
63129
63238
  :param security_group_ids: The IDs of the security groups for the endpoint.
63130
63239
  :param sse_specification: The options for additional server side encryption.
63131
63240
  :param tags: The tags.
@@ -63135,17 +63244,19 @@ class CfnVerifiedAccessEndpoint(
63135
63244
  check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
63136
63245
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
63137
63246
  props = CfnVerifiedAccessEndpointProps(
63138
- application_domain=application_domain,
63139
63247
  attachment_type=attachment_type,
63140
- domain_certificate_arn=domain_certificate_arn,
63141
- endpoint_domain_prefix=endpoint_domain_prefix,
63142
63248
  endpoint_type=endpoint_type,
63143
63249
  verified_access_group_id=verified_access_group_id,
63250
+ application_domain=application_domain,
63251
+ cidr_options=cidr_options,
63144
63252
  description=description,
63253
+ domain_certificate_arn=domain_certificate_arn,
63254
+ endpoint_domain_prefix=endpoint_domain_prefix,
63145
63255
  load_balancer_options=load_balancer_options,
63146
63256
  network_interface_options=network_interface_options,
63147
63257
  policy_document=policy_document,
63148
63258
  policy_enabled=policy_enabled,
63259
+ rds_options=rds_options,
63149
63260
  security_group_ids=security_group_ids,
63150
63261
  sse_specification=sse_specification,
63151
63262
  tags=tags,
@@ -63257,19 +63368,6 @@ class CfnVerifiedAccessEndpoint(
63257
63368
  '''Tag Manager which manages the tags for this resource.'''
63258
63369
  return typing.cast(_TagManager_0a598cb3, jsii.get(self, "tags"))
63259
63370
 
63260
- @builtins.property
63261
- @jsii.member(jsii_name="applicationDomain")
63262
- def application_domain(self) -> builtins.str:
63263
- '''The DNS name for users to reach your application.'''
63264
- return typing.cast(builtins.str, jsii.get(self, "applicationDomain"))
63265
-
63266
- @application_domain.setter
63267
- def application_domain(self, value: builtins.str) -> None:
63268
- if __debug__:
63269
- type_hints = typing.get_type_hints(_typecheckingstub__b28061f28b3f28be486d48f7dc7fd621f3103258eb9e7885ff475e46e5fd902b)
63270
- check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63271
- jsii.set(self, "applicationDomain", value) # pyright: ignore[reportArgumentType]
63272
-
63273
63371
  @builtins.property
63274
63372
  @jsii.member(jsii_name="attachmentType")
63275
63373
  def attachment_type(self) -> builtins.str:
@@ -63283,32 +63381,6 @@ class CfnVerifiedAccessEndpoint(
63283
63381
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63284
63382
  jsii.set(self, "attachmentType", value) # pyright: ignore[reportArgumentType]
63285
63383
 
63286
- @builtins.property
63287
- @jsii.member(jsii_name="domainCertificateArn")
63288
- def domain_certificate_arn(self) -> builtins.str:
63289
- '''The ARN of a public TLS/SSL certificate imported into or created with ACM.'''
63290
- return typing.cast(builtins.str, jsii.get(self, "domainCertificateArn"))
63291
-
63292
- @domain_certificate_arn.setter
63293
- def domain_certificate_arn(self, value: builtins.str) -> None:
63294
- if __debug__:
63295
- type_hints = typing.get_type_hints(_typecheckingstub__efc1ee2a591d8925ff2f8ca9eaba761d65c8b57e365164d2a86e578e910f175f)
63296
- check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63297
- jsii.set(self, "domainCertificateArn", value) # pyright: ignore[reportArgumentType]
63298
-
63299
- @builtins.property
63300
- @jsii.member(jsii_name="endpointDomainPrefix")
63301
- def endpoint_domain_prefix(self) -> builtins.str:
63302
- '''A custom identifier that is prepended to the DNS name that is generated for the endpoint.'''
63303
- return typing.cast(builtins.str, jsii.get(self, "endpointDomainPrefix"))
63304
-
63305
- @endpoint_domain_prefix.setter
63306
- def endpoint_domain_prefix(self, value: builtins.str) -> None:
63307
- if __debug__:
63308
- type_hints = typing.get_type_hints(_typecheckingstub__ff9d0e5773a8d9ea22993cc66220368ac095ea17382c558d7190b96a647f458f)
63309
- check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63310
- jsii.set(self, "endpointDomainPrefix", value) # pyright: ignore[reportArgumentType]
63311
-
63312
63384
  @builtins.property
63313
63385
  @jsii.member(jsii_name="endpointType")
63314
63386
  def endpoint_type(self) -> builtins.str:
@@ -63335,6 +63407,37 @@ class CfnVerifiedAccessEndpoint(
63335
63407
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63336
63408
  jsii.set(self, "verifiedAccessGroupId", value) # pyright: ignore[reportArgumentType]
63337
63409
 
63410
+ @builtins.property
63411
+ @jsii.member(jsii_name="applicationDomain")
63412
+ def application_domain(self) -> typing.Optional[builtins.str]:
63413
+ '''The DNS name for users to reach your application.'''
63414
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "applicationDomain"))
63415
+
63416
+ @application_domain.setter
63417
+ def application_domain(self, value: typing.Optional[builtins.str]) -> None:
63418
+ if __debug__:
63419
+ type_hints = typing.get_type_hints(_typecheckingstub__b28061f28b3f28be486d48f7dc7fd621f3103258eb9e7885ff475e46e5fd902b)
63420
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63421
+ jsii.set(self, "applicationDomain", value) # pyright: ignore[reportArgumentType]
63422
+
63423
+ @builtins.property
63424
+ @jsii.member(jsii_name="cidrOptions")
63425
+ def cidr_options(
63426
+ self,
63427
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnVerifiedAccessEndpoint.CidrOptionsProperty"]]:
63428
+ '''The options for a CIDR endpoint.'''
63429
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnVerifiedAccessEndpoint.CidrOptionsProperty"]], jsii.get(self, "cidrOptions"))
63430
+
63431
+ @cidr_options.setter
63432
+ def cidr_options(
63433
+ self,
63434
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnVerifiedAccessEndpoint.CidrOptionsProperty"]],
63435
+ ) -> None:
63436
+ if __debug__:
63437
+ type_hints = typing.get_type_hints(_typecheckingstub__2962dac3960398d69fb7ac9839727efce1ad5405f068e725a9f41e9e8c48552a)
63438
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63439
+ jsii.set(self, "cidrOptions", value) # pyright: ignore[reportArgumentType]
63440
+
63338
63441
  @builtins.property
63339
63442
  @jsii.member(jsii_name="description")
63340
63443
  def description(self) -> typing.Optional[builtins.str]:
@@ -63348,6 +63451,32 @@ class CfnVerifiedAccessEndpoint(
63348
63451
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63349
63452
  jsii.set(self, "description", value) # pyright: ignore[reportArgumentType]
63350
63453
 
63454
+ @builtins.property
63455
+ @jsii.member(jsii_name="domainCertificateArn")
63456
+ def domain_certificate_arn(self) -> typing.Optional[builtins.str]:
63457
+ '''The ARN of a public TLS/SSL certificate imported into or created with ACM.'''
63458
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "domainCertificateArn"))
63459
+
63460
+ @domain_certificate_arn.setter
63461
+ def domain_certificate_arn(self, value: typing.Optional[builtins.str]) -> None:
63462
+ if __debug__:
63463
+ type_hints = typing.get_type_hints(_typecheckingstub__efc1ee2a591d8925ff2f8ca9eaba761d65c8b57e365164d2a86e578e910f175f)
63464
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63465
+ jsii.set(self, "domainCertificateArn", value) # pyright: ignore[reportArgumentType]
63466
+
63467
+ @builtins.property
63468
+ @jsii.member(jsii_name="endpointDomainPrefix")
63469
+ def endpoint_domain_prefix(self) -> typing.Optional[builtins.str]:
63470
+ '''A custom identifier that is prepended to the DNS name that is generated for the endpoint.'''
63471
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "endpointDomainPrefix"))
63472
+
63473
+ @endpoint_domain_prefix.setter
63474
+ def endpoint_domain_prefix(self, value: typing.Optional[builtins.str]) -> None:
63475
+ if __debug__:
63476
+ type_hints = typing.get_type_hints(_typecheckingstub__ff9d0e5773a8d9ea22993cc66220368ac095ea17382c558d7190b96a647f458f)
63477
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63478
+ jsii.set(self, "endpointDomainPrefix", value) # pyright: ignore[reportArgumentType]
63479
+
63351
63480
  @builtins.property
63352
63481
  @jsii.member(jsii_name="loadBalancerOptions")
63353
63482
  def load_balancer_options(
@@ -63415,6 +63544,24 @@ class CfnVerifiedAccessEndpoint(
63415
63544
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63416
63545
  jsii.set(self, "policyEnabled", value) # pyright: ignore[reportArgumentType]
63417
63546
 
63547
+ @builtins.property
63548
+ @jsii.member(jsii_name="rdsOptions")
63549
+ def rds_options(
63550
+ self,
63551
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnVerifiedAccessEndpoint.RdsOptionsProperty"]]:
63552
+ '''The options for an RDS endpoint.'''
63553
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnVerifiedAccessEndpoint.RdsOptionsProperty"]], jsii.get(self, "rdsOptions"))
63554
+
63555
+ @rds_options.setter
63556
+ def rds_options(
63557
+ self,
63558
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnVerifiedAccessEndpoint.RdsOptionsProperty"]],
63559
+ ) -> None:
63560
+ if __debug__:
63561
+ type_hints = typing.get_type_hints(_typecheckingstub__a912f808eff9a847eb56334d2df19bc7f437ffc6f1b217c0836ef2f6397dfd6c)
63562
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63563
+ jsii.set(self, "rdsOptions", value) # pyright: ignore[reportArgumentType]
63564
+
63418
63565
  @builtins.property
63419
63566
  @jsii.member(jsii_name="securityGroupIds")
63420
63567
  def security_group_ids(self) -> typing.Optional[typing.List[builtins.str]]:
@@ -63462,12 +63609,123 @@ class CfnVerifiedAccessEndpoint(
63462
63609
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63463
63610
  jsii.set(self, "tagsRaw", value) # pyright: ignore[reportArgumentType]
63464
63611
 
63612
+ @jsii.data_type(
63613
+ jsii_type="aws-cdk-lib.aws_ec2.CfnVerifiedAccessEndpoint.CidrOptionsProperty",
63614
+ jsii_struct_bases=[],
63615
+ name_mapping={
63616
+ "cidr": "cidr",
63617
+ "port_ranges": "portRanges",
63618
+ "protocol": "protocol",
63619
+ "subnet_ids": "subnetIds",
63620
+ },
63621
+ )
63622
+ class CidrOptionsProperty:
63623
+ def __init__(
63624
+ self,
63625
+ *,
63626
+ cidr: typing.Optional[builtins.str] = None,
63627
+ port_ranges: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessEndpoint.PortRangeProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
63628
+ protocol: typing.Optional[builtins.str] = None,
63629
+ subnet_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
63630
+ ) -> None:
63631
+ '''The options for cidr type endpoint.
63632
+
63633
+ :param cidr: The IP address range, in CIDR notation.
63634
+ :param port_ranges: The list of port range.
63635
+ :param protocol: The IP protocol.
63636
+ :param subnet_ids: The IDs of the subnets.
63637
+
63638
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-cidroptions.html
63639
+ :exampleMetadata: fixture=_generated
63640
+
63641
+ Example::
63642
+
63643
+ # The code below shows an example of how to instantiate this type.
63644
+ # The values are placeholders you should change.
63645
+ from aws_cdk import aws_ec2 as ec2
63646
+
63647
+ cidr_options_property = ec2.CfnVerifiedAccessEndpoint.CidrOptionsProperty(
63648
+ cidr="cidr",
63649
+ port_ranges=[ec2.CfnVerifiedAccessEndpoint.PortRangeProperty(
63650
+ from_port=123,
63651
+ to_port=123
63652
+ )],
63653
+ protocol="protocol",
63654
+ subnet_ids=["subnetIds"]
63655
+ )
63656
+ '''
63657
+ if __debug__:
63658
+ type_hints = typing.get_type_hints(_typecheckingstub__23c52461363ac544508e25c4abd78eefe3541bba29d66ed3b2861949b0f67c1c)
63659
+ check_type(argname="argument cidr", value=cidr, expected_type=type_hints["cidr"])
63660
+ check_type(argname="argument port_ranges", value=port_ranges, expected_type=type_hints["port_ranges"])
63661
+ check_type(argname="argument protocol", value=protocol, expected_type=type_hints["protocol"])
63662
+ check_type(argname="argument subnet_ids", value=subnet_ids, expected_type=type_hints["subnet_ids"])
63663
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
63664
+ if cidr is not None:
63665
+ self._values["cidr"] = cidr
63666
+ if port_ranges is not None:
63667
+ self._values["port_ranges"] = port_ranges
63668
+ if protocol is not None:
63669
+ self._values["protocol"] = protocol
63670
+ if subnet_ids is not None:
63671
+ self._values["subnet_ids"] = subnet_ids
63672
+
63673
+ @builtins.property
63674
+ def cidr(self) -> typing.Optional[builtins.str]:
63675
+ '''The IP address range, in CIDR notation.
63676
+
63677
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-cidroptions.html#cfn-ec2-verifiedaccessendpoint-cidroptions-cidr
63678
+ '''
63679
+ result = self._values.get("cidr")
63680
+ return typing.cast(typing.Optional[builtins.str], result)
63681
+
63682
+ @builtins.property
63683
+ def port_ranges(
63684
+ self,
63685
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnVerifiedAccessEndpoint.PortRangeProperty"]]]]:
63686
+ '''The list of port range.
63687
+
63688
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-cidroptions.html#cfn-ec2-verifiedaccessendpoint-cidroptions-portranges
63689
+ '''
63690
+ result = self._values.get("port_ranges")
63691
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnVerifiedAccessEndpoint.PortRangeProperty"]]]], result)
63692
+
63693
+ @builtins.property
63694
+ def protocol(self) -> typing.Optional[builtins.str]:
63695
+ '''The IP protocol.
63696
+
63697
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-cidroptions.html#cfn-ec2-verifiedaccessendpoint-cidroptions-protocol
63698
+ '''
63699
+ result = self._values.get("protocol")
63700
+ return typing.cast(typing.Optional[builtins.str], result)
63701
+
63702
+ @builtins.property
63703
+ def subnet_ids(self) -> typing.Optional[typing.List[builtins.str]]:
63704
+ '''The IDs of the subnets.
63705
+
63706
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-cidroptions.html#cfn-ec2-verifiedaccessendpoint-cidroptions-subnetids
63707
+ '''
63708
+ result = self._values.get("subnet_ids")
63709
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
63710
+
63711
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
63712
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
63713
+
63714
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
63715
+ return not (rhs == self)
63716
+
63717
+ def __repr__(self) -> str:
63718
+ return "CidrOptionsProperty(%s)" % ", ".join(
63719
+ k + "=" + repr(v) for k, v in self._values.items()
63720
+ )
63721
+
63465
63722
  @jsii.data_type(
63466
63723
  jsii_type="aws-cdk-lib.aws_ec2.CfnVerifiedAccessEndpoint.LoadBalancerOptionsProperty",
63467
63724
  jsii_struct_bases=[],
63468
63725
  name_mapping={
63469
63726
  "load_balancer_arn": "loadBalancerArn",
63470
63727
  "port": "port",
63728
+ "port_ranges": "portRanges",
63471
63729
  "protocol": "protocol",
63472
63730
  "subnet_ids": "subnetIds",
63473
63731
  },
@@ -63478,6 +63736,7 @@ class CfnVerifiedAccessEndpoint(
63478
63736
  *,
63479
63737
  load_balancer_arn: typing.Optional[builtins.str] = None,
63480
63738
  port: typing.Optional[jsii.Number] = None,
63739
+ port_ranges: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessEndpoint.PortRangeProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
63481
63740
  protocol: typing.Optional[builtins.str] = None,
63482
63741
  subnet_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
63483
63742
  ) -> None:
@@ -63485,6 +63744,7 @@ class CfnVerifiedAccessEndpoint(
63485
63744
 
63486
63745
  :param load_balancer_arn: The ARN of the load balancer.
63487
63746
  :param port: The IP port number.
63747
+ :param port_ranges: The list of port range.
63488
63748
  :param protocol: The IP protocol.
63489
63749
  :param subnet_ids: The IDs of the subnets.
63490
63750
 
@@ -63500,6 +63760,10 @@ class CfnVerifiedAccessEndpoint(
63500
63760
  load_balancer_options_property = ec2.CfnVerifiedAccessEndpoint.LoadBalancerOptionsProperty(
63501
63761
  load_balancer_arn="loadBalancerArn",
63502
63762
  port=123,
63763
+ port_ranges=[ec2.CfnVerifiedAccessEndpoint.PortRangeProperty(
63764
+ from_port=123,
63765
+ to_port=123
63766
+ )],
63503
63767
  protocol="protocol",
63504
63768
  subnet_ids=["subnetIds"]
63505
63769
  )
@@ -63508,6 +63772,7 @@ class CfnVerifiedAccessEndpoint(
63508
63772
  type_hints = typing.get_type_hints(_typecheckingstub__748e5ad8bcd3de0f9d4460d24ba08621e5769f4aa625427a31af6f4cfad10c64)
63509
63773
  check_type(argname="argument load_balancer_arn", value=load_balancer_arn, expected_type=type_hints["load_balancer_arn"])
63510
63774
  check_type(argname="argument port", value=port, expected_type=type_hints["port"])
63775
+ check_type(argname="argument port_ranges", value=port_ranges, expected_type=type_hints["port_ranges"])
63511
63776
  check_type(argname="argument protocol", value=protocol, expected_type=type_hints["protocol"])
63512
63777
  check_type(argname="argument subnet_ids", value=subnet_ids, expected_type=type_hints["subnet_ids"])
63513
63778
  self._values: typing.Dict[builtins.str, typing.Any] = {}
@@ -63515,6 +63780,8 @@ class CfnVerifiedAccessEndpoint(
63515
63780
  self._values["load_balancer_arn"] = load_balancer_arn
63516
63781
  if port is not None:
63517
63782
  self._values["port"] = port
63783
+ if port_ranges is not None:
63784
+ self._values["port_ranges"] = port_ranges
63518
63785
  if protocol is not None:
63519
63786
  self._values["protocol"] = protocol
63520
63787
  if subnet_ids is not None:
@@ -63538,6 +63805,17 @@ class CfnVerifiedAccessEndpoint(
63538
63805
  result = self._values.get("port")
63539
63806
  return typing.cast(typing.Optional[jsii.Number], result)
63540
63807
 
63808
+ @builtins.property
63809
+ def port_ranges(
63810
+ self,
63811
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnVerifiedAccessEndpoint.PortRangeProperty"]]]]:
63812
+ '''The list of port range.
63813
+
63814
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-loadbalanceroptions.html#cfn-ec2-verifiedaccessendpoint-loadbalanceroptions-portranges
63815
+ '''
63816
+ result = self._values.get("port_ranges")
63817
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnVerifiedAccessEndpoint.PortRangeProperty"]]]], result)
63818
+
63541
63819
  @builtins.property
63542
63820
  def protocol(self) -> typing.Optional[builtins.str]:
63543
63821
  '''The IP protocol.
@@ -63573,6 +63851,7 @@ class CfnVerifiedAccessEndpoint(
63573
63851
  name_mapping={
63574
63852
  "network_interface_id": "networkInterfaceId",
63575
63853
  "port": "port",
63854
+ "port_ranges": "portRanges",
63576
63855
  "protocol": "protocol",
63577
63856
  },
63578
63857
  )
@@ -63582,12 +63861,14 @@ class CfnVerifiedAccessEndpoint(
63582
63861
  *,
63583
63862
  network_interface_id: typing.Optional[builtins.str] = None,
63584
63863
  port: typing.Optional[jsii.Number] = None,
63864
+ port_ranges: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessEndpoint.PortRangeProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
63585
63865
  protocol: typing.Optional[builtins.str] = None,
63586
63866
  ) -> None:
63587
63867
  '''Describes the network interface options when creating an AWS Verified Access endpoint using the ``network-interface`` type.
63588
63868
 
63589
63869
  :param network_interface_id: The ID of the network interface.
63590
63870
  :param port: The IP port number.
63871
+ :param port_ranges: The list of port ranges.
63591
63872
  :param protocol: The IP protocol.
63592
63873
 
63593
63874
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-networkinterfaceoptions.html
@@ -63602,6 +63883,10 @@ class CfnVerifiedAccessEndpoint(
63602
63883
  network_interface_options_property = ec2.CfnVerifiedAccessEndpoint.NetworkInterfaceOptionsProperty(
63603
63884
  network_interface_id="networkInterfaceId",
63604
63885
  port=123,
63886
+ port_ranges=[ec2.CfnVerifiedAccessEndpoint.PortRangeProperty(
63887
+ from_port=123,
63888
+ to_port=123
63889
+ )],
63605
63890
  protocol="protocol"
63606
63891
  )
63607
63892
  '''
@@ -63609,12 +63894,15 @@ class CfnVerifiedAccessEndpoint(
63609
63894
  type_hints = typing.get_type_hints(_typecheckingstub__87a3b1db27ee0d26aa10f209574558cadfa966a187d72396dc2453f49f105d43)
63610
63895
  check_type(argname="argument network_interface_id", value=network_interface_id, expected_type=type_hints["network_interface_id"])
63611
63896
  check_type(argname="argument port", value=port, expected_type=type_hints["port"])
63897
+ check_type(argname="argument port_ranges", value=port_ranges, expected_type=type_hints["port_ranges"])
63612
63898
  check_type(argname="argument protocol", value=protocol, expected_type=type_hints["protocol"])
63613
63899
  self._values: typing.Dict[builtins.str, typing.Any] = {}
63614
63900
  if network_interface_id is not None:
63615
63901
  self._values["network_interface_id"] = network_interface_id
63616
63902
  if port is not None:
63617
63903
  self._values["port"] = port
63904
+ if port_ranges is not None:
63905
+ self._values["port_ranges"] = port_ranges
63618
63906
  if protocol is not None:
63619
63907
  self._values["protocol"] = protocol
63620
63908
 
@@ -63636,6 +63924,17 @@ class CfnVerifiedAccessEndpoint(
63636
63924
  result = self._values.get("port")
63637
63925
  return typing.cast(typing.Optional[jsii.Number], result)
63638
63926
 
63927
+ @builtins.property
63928
+ def port_ranges(
63929
+ self,
63930
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnVerifiedAccessEndpoint.PortRangeProperty"]]]]:
63931
+ '''The list of port ranges.
63932
+
63933
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-networkinterfaceoptions.html#cfn-ec2-verifiedaccessendpoint-networkinterfaceoptions-portranges
63934
+ '''
63935
+ result = self._values.get("port_ranges")
63936
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnVerifiedAccessEndpoint.PortRangeProperty"]]]], result)
63937
+
63639
63938
  @builtins.property
63640
63939
  def protocol(self) -> typing.Optional[builtins.str]:
63641
63940
  '''The IP protocol.
@@ -63656,6 +63955,229 @@ class CfnVerifiedAccessEndpoint(
63656
63955
  k + "=" + repr(v) for k, v in self._values.items()
63657
63956
  )
63658
63957
 
63958
+ @jsii.data_type(
63959
+ jsii_type="aws-cdk-lib.aws_ec2.CfnVerifiedAccessEndpoint.PortRangeProperty",
63960
+ jsii_struct_bases=[],
63961
+ name_mapping={"from_port": "fromPort", "to_port": "toPort"},
63962
+ )
63963
+ class PortRangeProperty:
63964
+ def __init__(
63965
+ self,
63966
+ *,
63967
+ from_port: typing.Optional[jsii.Number] = None,
63968
+ to_port: typing.Optional[jsii.Number] = None,
63969
+ ) -> None:
63970
+ '''Describes a range of ports.
63971
+
63972
+ :param from_port: The first port in the range.
63973
+ :param to_port: The last port in the range.
63974
+
63975
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-portrange.html
63976
+ :exampleMetadata: fixture=_generated
63977
+
63978
+ Example::
63979
+
63980
+ # The code below shows an example of how to instantiate this type.
63981
+ # The values are placeholders you should change.
63982
+ from aws_cdk import aws_ec2 as ec2
63983
+
63984
+ port_range_property = ec2.CfnVerifiedAccessEndpoint.PortRangeProperty(
63985
+ from_port=123,
63986
+ to_port=123
63987
+ )
63988
+ '''
63989
+ if __debug__:
63990
+ type_hints = typing.get_type_hints(_typecheckingstub__d7afca99a963532ddc95e640bb20b45750c4dabaa33fd2123aa2480165409544)
63991
+ check_type(argname="argument from_port", value=from_port, expected_type=type_hints["from_port"])
63992
+ check_type(argname="argument to_port", value=to_port, expected_type=type_hints["to_port"])
63993
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
63994
+ if from_port is not None:
63995
+ self._values["from_port"] = from_port
63996
+ if to_port is not None:
63997
+ self._values["to_port"] = to_port
63998
+
63999
+ @builtins.property
64000
+ def from_port(self) -> typing.Optional[jsii.Number]:
64001
+ '''The first port in the range.
64002
+
64003
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-portrange.html#cfn-ec2-verifiedaccessendpoint-portrange-fromport
64004
+ '''
64005
+ result = self._values.get("from_port")
64006
+ return typing.cast(typing.Optional[jsii.Number], result)
64007
+
64008
+ @builtins.property
64009
+ def to_port(self) -> typing.Optional[jsii.Number]:
64010
+ '''The last port in the range.
64011
+
64012
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-portrange.html#cfn-ec2-verifiedaccessendpoint-portrange-toport
64013
+ '''
64014
+ result = self._values.get("to_port")
64015
+ return typing.cast(typing.Optional[jsii.Number], result)
64016
+
64017
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
64018
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
64019
+
64020
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
64021
+ return not (rhs == self)
64022
+
64023
+ def __repr__(self) -> str:
64024
+ return "PortRangeProperty(%s)" % ", ".join(
64025
+ k + "=" + repr(v) for k, v in self._values.items()
64026
+ )
64027
+
64028
+ @jsii.data_type(
64029
+ jsii_type="aws-cdk-lib.aws_ec2.CfnVerifiedAccessEndpoint.RdsOptionsProperty",
64030
+ jsii_struct_bases=[],
64031
+ name_mapping={
64032
+ "port": "port",
64033
+ "protocol": "protocol",
64034
+ "rds_db_cluster_arn": "rdsDbClusterArn",
64035
+ "rds_db_instance_arn": "rdsDbInstanceArn",
64036
+ "rds_db_proxy_arn": "rdsDbProxyArn",
64037
+ "rds_endpoint": "rdsEndpoint",
64038
+ "subnet_ids": "subnetIds",
64039
+ },
64040
+ )
64041
+ class RdsOptionsProperty:
64042
+ def __init__(
64043
+ self,
64044
+ *,
64045
+ port: typing.Optional[jsii.Number] = None,
64046
+ protocol: typing.Optional[builtins.str] = None,
64047
+ rds_db_cluster_arn: typing.Optional[builtins.str] = None,
64048
+ rds_db_instance_arn: typing.Optional[builtins.str] = None,
64049
+ rds_db_proxy_arn: typing.Optional[builtins.str] = None,
64050
+ rds_endpoint: typing.Optional[builtins.str] = None,
64051
+ subnet_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
64052
+ ) -> None:
64053
+ '''The options for rds type endpoint.
64054
+
64055
+ :param port: The IP port number.
64056
+ :param protocol: The IP protocol.
64057
+ :param rds_db_cluster_arn: The ARN of the RDS DB cluster.
64058
+ :param rds_db_instance_arn: The ARN of the RDS DB instance.
64059
+ :param rds_db_proxy_arn: The ARN of the RDS DB proxy.
64060
+ :param rds_endpoint: The RDS endpoint.
64061
+ :param subnet_ids: The IDs of the subnets.
64062
+
64063
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-rdsoptions.html
64064
+ :exampleMetadata: fixture=_generated
64065
+
64066
+ Example::
64067
+
64068
+ # The code below shows an example of how to instantiate this type.
64069
+ # The values are placeholders you should change.
64070
+ from aws_cdk import aws_ec2 as ec2
64071
+
64072
+ rds_options_property = ec2.CfnVerifiedAccessEndpoint.RdsOptionsProperty(
64073
+ port=123,
64074
+ protocol="protocol",
64075
+ rds_db_cluster_arn="rdsDbClusterArn",
64076
+ rds_db_instance_arn="rdsDbInstanceArn",
64077
+ rds_db_proxy_arn="rdsDbProxyArn",
64078
+ rds_endpoint="rdsEndpoint",
64079
+ subnet_ids=["subnetIds"]
64080
+ )
64081
+ '''
64082
+ if __debug__:
64083
+ type_hints = typing.get_type_hints(_typecheckingstub__217add2f23506262e3f92eedf9ff65affe5c95dd71451ad448b5a12db367d5f1)
64084
+ check_type(argname="argument port", value=port, expected_type=type_hints["port"])
64085
+ check_type(argname="argument protocol", value=protocol, expected_type=type_hints["protocol"])
64086
+ check_type(argname="argument rds_db_cluster_arn", value=rds_db_cluster_arn, expected_type=type_hints["rds_db_cluster_arn"])
64087
+ check_type(argname="argument rds_db_instance_arn", value=rds_db_instance_arn, expected_type=type_hints["rds_db_instance_arn"])
64088
+ check_type(argname="argument rds_db_proxy_arn", value=rds_db_proxy_arn, expected_type=type_hints["rds_db_proxy_arn"])
64089
+ check_type(argname="argument rds_endpoint", value=rds_endpoint, expected_type=type_hints["rds_endpoint"])
64090
+ check_type(argname="argument subnet_ids", value=subnet_ids, expected_type=type_hints["subnet_ids"])
64091
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
64092
+ if port is not None:
64093
+ self._values["port"] = port
64094
+ if protocol is not None:
64095
+ self._values["protocol"] = protocol
64096
+ if rds_db_cluster_arn is not None:
64097
+ self._values["rds_db_cluster_arn"] = rds_db_cluster_arn
64098
+ if rds_db_instance_arn is not None:
64099
+ self._values["rds_db_instance_arn"] = rds_db_instance_arn
64100
+ if rds_db_proxy_arn is not None:
64101
+ self._values["rds_db_proxy_arn"] = rds_db_proxy_arn
64102
+ if rds_endpoint is not None:
64103
+ self._values["rds_endpoint"] = rds_endpoint
64104
+ if subnet_ids is not None:
64105
+ self._values["subnet_ids"] = subnet_ids
64106
+
64107
+ @builtins.property
64108
+ def port(self) -> typing.Optional[jsii.Number]:
64109
+ '''The IP port number.
64110
+
64111
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-rdsoptions.html#cfn-ec2-verifiedaccessendpoint-rdsoptions-port
64112
+ '''
64113
+ result = self._values.get("port")
64114
+ return typing.cast(typing.Optional[jsii.Number], result)
64115
+
64116
+ @builtins.property
64117
+ def protocol(self) -> typing.Optional[builtins.str]:
64118
+ '''The IP protocol.
64119
+
64120
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-rdsoptions.html#cfn-ec2-verifiedaccessendpoint-rdsoptions-protocol
64121
+ '''
64122
+ result = self._values.get("protocol")
64123
+ return typing.cast(typing.Optional[builtins.str], result)
64124
+
64125
+ @builtins.property
64126
+ def rds_db_cluster_arn(self) -> typing.Optional[builtins.str]:
64127
+ '''The ARN of the RDS DB cluster.
64128
+
64129
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-rdsoptions.html#cfn-ec2-verifiedaccessendpoint-rdsoptions-rdsdbclusterarn
64130
+ '''
64131
+ result = self._values.get("rds_db_cluster_arn")
64132
+ return typing.cast(typing.Optional[builtins.str], result)
64133
+
64134
+ @builtins.property
64135
+ def rds_db_instance_arn(self) -> typing.Optional[builtins.str]:
64136
+ '''The ARN of the RDS DB instance.
64137
+
64138
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-rdsoptions.html#cfn-ec2-verifiedaccessendpoint-rdsoptions-rdsdbinstancearn
64139
+ '''
64140
+ result = self._values.get("rds_db_instance_arn")
64141
+ return typing.cast(typing.Optional[builtins.str], result)
64142
+
64143
+ @builtins.property
64144
+ def rds_db_proxy_arn(self) -> typing.Optional[builtins.str]:
64145
+ '''The ARN of the RDS DB proxy.
64146
+
64147
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-rdsoptions.html#cfn-ec2-verifiedaccessendpoint-rdsoptions-rdsdbproxyarn
64148
+ '''
64149
+ result = self._values.get("rds_db_proxy_arn")
64150
+ return typing.cast(typing.Optional[builtins.str], result)
64151
+
64152
+ @builtins.property
64153
+ def rds_endpoint(self) -> typing.Optional[builtins.str]:
64154
+ '''The RDS endpoint.
64155
+
64156
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-rdsoptions.html#cfn-ec2-verifiedaccessendpoint-rdsoptions-rdsendpoint
64157
+ '''
64158
+ result = self._values.get("rds_endpoint")
64159
+ return typing.cast(typing.Optional[builtins.str], result)
64160
+
64161
+ @builtins.property
64162
+ def subnet_ids(self) -> typing.Optional[typing.List[builtins.str]]:
64163
+ '''The IDs of the subnets.
64164
+
64165
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-rdsoptions.html#cfn-ec2-verifiedaccessendpoint-rdsoptions-subnetids
64166
+ '''
64167
+ result = self._values.get("subnet_ids")
64168
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
64169
+
64170
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
64171
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
64172
+
64173
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
64174
+ return not (rhs == self)
64175
+
64176
+ def __repr__(self) -> str:
64177
+ return "RdsOptionsProperty(%s)" % ", ".join(
64178
+ k + "=" + repr(v) for k, v in self._values.items()
64179
+ )
64180
+
63659
64181
  @jsii.data_type(
63660
64182
  jsii_type="aws-cdk-lib.aws_ec2.CfnVerifiedAccessEndpoint.SseSpecificationProperty",
63661
64183
  jsii_struct_bases=[],
@@ -63740,17 +64262,19 @@ class CfnVerifiedAccessEndpoint(
63740
64262
  jsii_type="aws-cdk-lib.aws_ec2.CfnVerifiedAccessEndpointProps",
63741
64263
  jsii_struct_bases=[],
63742
64264
  name_mapping={
63743
- "application_domain": "applicationDomain",
63744
64265
  "attachment_type": "attachmentType",
63745
- "domain_certificate_arn": "domainCertificateArn",
63746
- "endpoint_domain_prefix": "endpointDomainPrefix",
63747
64266
  "endpoint_type": "endpointType",
63748
64267
  "verified_access_group_id": "verifiedAccessGroupId",
64268
+ "application_domain": "applicationDomain",
64269
+ "cidr_options": "cidrOptions",
63749
64270
  "description": "description",
64271
+ "domain_certificate_arn": "domainCertificateArn",
64272
+ "endpoint_domain_prefix": "endpointDomainPrefix",
63750
64273
  "load_balancer_options": "loadBalancerOptions",
63751
64274
  "network_interface_options": "networkInterfaceOptions",
63752
64275
  "policy_document": "policyDocument",
63753
64276
  "policy_enabled": "policyEnabled",
64277
+ "rds_options": "rdsOptions",
63754
64278
  "security_group_ids": "securityGroupIds",
63755
64279
  "sse_specification": "sseSpecification",
63756
64280
  "tags": "tags",
@@ -63760,34 +64284,38 @@ class CfnVerifiedAccessEndpointProps:
63760
64284
  def __init__(
63761
64285
  self,
63762
64286
  *,
63763
- application_domain: builtins.str,
63764
64287
  attachment_type: builtins.str,
63765
- domain_certificate_arn: builtins.str,
63766
- endpoint_domain_prefix: builtins.str,
63767
64288
  endpoint_type: builtins.str,
63768
64289
  verified_access_group_id: builtins.str,
64290
+ application_domain: typing.Optional[builtins.str] = None,
64291
+ cidr_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.CidrOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
63769
64292
  description: typing.Optional[builtins.str] = None,
64293
+ domain_certificate_arn: typing.Optional[builtins.str] = None,
64294
+ endpoint_domain_prefix: typing.Optional[builtins.str] = None,
63770
64295
  load_balancer_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.LoadBalancerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
63771
64296
  network_interface_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.NetworkInterfaceOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
63772
64297
  policy_document: typing.Optional[builtins.str] = None,
63773
64298
  policy_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
64299
+ rds_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.RdsOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
63774
64300
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
63775
64301
  sse_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.SseSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
63776
64302
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
63777
64303
  ) -> None:
63778
64304
  '''Properties for defining a ``CfnVerifiedAccessEndpoint``.
63779
64305
 
63780
- :param application_domain: The DNS name for users to reach your application.
63781
64306
  :param attachment_type: The type of attachment used to provide connectivity between the AWS Verified Access endpoint and the application.
63782
- :param domain_certificate_arn: The ARN of a public TLS/SSL certificate imported into or created with ACM.
63783
- :param endpoint_domain_prefix: A custom identifier that is prepended to the DNS name that is generated for the endpoint.
63784
64307
  :param endpoint_type: The type of AWS Verified Access endpoint. Incoming application requests will be sent to an IP address, load balancer or a network interface depending on the endpoint type specified.
63785
64308
  :param verified_access_group_id: The ID of the AWS Verified Access group.
64309
+ :param application_domain: The DNS name for users to reach your application.
64310
+ :param cidr_options: The options for a CIDR endpoint.
63786
64311
  :param description: A description for the AWS Verified Access endpoint.
64312
+ :param domain_certificate_arn: The ARN of a public TLS/SSL certificate imported into or created with ACM.
64313
+ :param endpoint_domain_prefix: A custom identifier that is prepended to the DNS name that is generated for the endpoint.
63787
64314
  :param load_balancer_options: The load balancer details if creating the AWS Verified Access endpoint as ``load-balancer`` type.
63788
64315
  :param network_interface_options: The options for network-interface type endpoint.
63789
64316
  :param policy_document: The Verified Access policy document.
63790
64317
  :param policy_enabled: The status of the Verified Access policy.
64318
+ :param rds_options: The options for an RDS endpoint.
63791
64319
  :param security_group_ids: The IDs of the security groups for the endpoint.
63792
64320
  :param sse_specification: The options for additional server side encryption.
63793
64321
  :param tags: The tags.
@@ -63802,28 +64330,54 @@ class CfnVerifiedAccessEndpointProps:
63802
64330
  from aws_cdk import aws_ec2 as ec2
63803
64331
 
63804
64332
  cfn_verified_access_endpoint_props = ec2.CfnVerifiedAccessEndpointProps(
63805
- application_domain="applicationDomain",
63806
64333
  attachment_type="attachmentType",
63807
- domain_certificate_arn="domainCertificateArn",
63808
- endpoint_domain_prefix="endpointDomainPrefix",
63809
64334
  endpoint_type="endpointType",
63810
64335
  verified_access_group_id="verifiedAccessGroupId",
63811
64336
 
63812
64337
  # the properties below are optional
64338
+ application_domain="applicationDomain",
64339
+ cidr_options=ec2.CfnVerifiedAccessEndpoint.CidrOptionsProperty(
64340
+ cidr="cidr",
64341
+ port_ranges=[ec2.CfnVerifiedAccessEndpoint.PortRangeProperty(
64342
+ from_port=123,
64343
+ to_port=123
64344
+ )],
64345
+ protocol="protocol",
64346
+ subnet_ids=["subnetIds"]
64347
+ ),
63813
64348
  description="description",
64349
+ domain_certificate_arn="domainCertificateArn",
64350
+ endpoint_domain_prefix="endpointDomainPrefix",
63814
64351
  load_balancer_options=ec2.CfnVerifiedAccessEndpoint.LoadBalancerOptionsProperty(
63815
64352
  load_balancer_arn="loadBalancerArn",
63816
64353
  port=123,
64354
+ port_ranges=[ec2.CfnVerifiedAccessEndpoint.PortRangeProperty(
64355
+ from_port=123,
64356
+ to_port=123
64357
+ )],
63817
64358
  protocol="protocol",
63818
64359
  subnet_ids=["subnetIds"]
63819
64360
  ),
63820
64361
  network_interface_options=ec2.CfnVerifiedAccessEndpoint.NetworkInterfaceOptionsProperty(
63821
64362
  network_interface_id="networkInterfaceId",
63822
64363
  port=123,
64364
+ port_ranges=[ec2.CfnVerifiedAccessEndpoint.PortRangeProperty(
64365
+ from_port=123,
64366
+ to_port=123
64367
+ )],
63823
64368
  protocol="protocol"
63824
64369
  ),
63825
64370
  policy_document="policyDocument",
63826
64371
  policy_enabled=False,
64372
+ rds_options=ec2.CfnVerifiedAccessEndpoint.RdsOptionsProperty(
64373
+ port=123,
64374
+ protocol="protocol",
64375
+ rds_db_cluster_arn="rdsDbClusterArn",
64376
+ rds_db_instance_arn="rdsDbInstanceArn",
64377
+ rds_db_proxy_arn="rdsDbProxyArn",
64378
+ rds_endpoint="rdsEndpoint",
64379
+ subnet_ids=["subnetIds"]
64380
+ ),
63827
64381
  security_group_ids=["securityGroupIds"],
63828
64382
  sse_specification=ec2.CfnVerifiedAccessEndpoint.SseSpecificationProperty(
63829
64383
  customer_managed_key_enabled=False,
@@ -63837,30 +64391,37 @@ class CfnVerifiedAccessEndpointProps:
63837
64391
  '''
63838
64392
  if __debug__:
63839
64393
  type_hints = typing.get_type_hints(_typecheckingstub__a6b5fcbc7d5ca5da1405e117289abdd54dfab30dc79e867da0da32239d886ee5)
63840
- check_type(argname="argument application_domain", value=application_domain, expected_type=type_hints["application_domain"])
63841
64394
  check_type(argname="argument attachment_type", value=attachment_type, expected_type=type_hints["attachment_type"])
63842
- check_type(argname="argument domain_certificate_arn", value=domain_certificate_arn, expected_type=type_hints["domain_certificate_arn"])
63843
- check_type(argname="argument endpoint_domain_prefix", value=endpoint_domain_prefix, expected_type=type_hints["endpoint_domain_prefix"])
63844
64395
  check_type(argname="argument endpoint_type", value=endpoint_type, expected_type=type_hints["endpoint_type"])
63845
64396
  check_type(argname="argument verified_access_group_id", value=verified_access_group_id, expected_type=type_hints["verified_access_group_id"])
64397
+ check_type(argname="argument application_domain", value=application_domain, expected_type=type_hints["application_domain"])
64398
+ check_type(argname="argument cidr_options", value=cidr_options, expected_type=type_hints["cidr_options"])
63846
64399
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
64400
+ check_type(argname="argument domain_certificate_arn", value=domain_certificate_arn, expected_type=type_hints["domain_certificate_arn"])
64401
+ check_type(argname="argument endpoint_domain_prefix", value=endpoint_domain_prefix, expected_type=type_hints["endpoint_domain_prefix"])
63847
64402
  check_type(argname="argument load_balancer_options", value=load_balancer_options, expected_type=type_hints["load_balancer_options"])
63848
64403
  check_type(argname="argument network_interface_options", value=network_interface_options, expected_type=type_hints["network_interface_options"])
63849
64404
  check_type(argname="argument policy_document", value=policy_document, expected_type=type_hints["policy_document"])
63850
64405
  check_type(argname="argument policy_enabled", value=policy_enabled, expected_type=type_hints["policy_enabled"])
64406
+ check_type(argname="argument rds_options", value=rds_options, expected_type=type_hints["rds_options"])
63851
64407
  check_type(argname="argument security_group_ids", value=security_group_ids, expected_type=type_hints["security_group_ids"])
63852
64408
  check_type(argname="argument sse_specification", value=sse_specification, expected_type=type_hints["sse_specification"])
63853
64409
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
63854
64410
  self._values: typing.Dict[builtins.str, typing.Any] = {
63855
- "application_domain": application_domain,
63856
64411
  "attachment_type": attachment_type,
63857
- "domain_certificate_arn": domain_certificate_arn,
63858
- "endpoint_domain_prefix": endpoint_domain_prefix,
63859
64412
  "endpoint_type": endpoint_type,
63860
64413
  "verified_access_group_id": verified_access_group_id,
63861
64414
  }
64415
+ if application_domain is not None:
64416
+ self._values["application_domain"] = application_domain
64417
+ if cidr_options is not None:
64418
+ self._values["cidr_options"] = cidr_options
63862
64419
  if description is not None:
63863
64420
  self._values["description"] = description
64421
+ if domain_certificate_arn is not None:
64422
+ self._values["domain_certificate_arn"] = domain_certificate_arn
64423
+ if endpoint_domain_prefix is not None:
64424
+ self._values["endpoint_domain_prefix"] = endpoint_domain_prefix
63864
64425
  if load_balancer_options is not None:
63865
64426
  self._values["load_balancer_options"] = load_balancer_options
63866
64427
  if network_interface_options is not None:
@@ -63869,6 +64430,8 @@ class CfnVerifiedAccessEndpointProps:
63869
64430
  self._values["policy_document"] = policy_document
63870
64431
  if policy_enabled is not None:
63871
64432
  self._values["policy_enabled"] = policy_enabled
64433
+ if rds_options is not None:
64434
+ self._values["rds_options"] = rds_options
63872
64435
  if security_group_ids is not None:
63873
64436
  self._values["security_group_ids"] = security_group_ids
63874
64437
  if sse_specification is not None:
@@ -63876,16 +64439,6 @@ class CfnVerifiedAccessEndpointProps:
63876
64439
  if tags is not None:
63877
64440
  self._values["tags"] = tags
63878
64441
 
63879
- @builtins.property
63880
- def application_domain(self) -> builtins.str:
63881
- '''The DNS name for users to reach your application.
63882
-
63883
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessendpoint.html#cfn-ec2-verifiedaccessendpoint-applicationdomain
63884
- '''
63885
- result = self._values.get("application_domain")
63886
- assert result is not None, "Required property 'application_domain' is missing"
63887
- return typing.cast(builtins.str, result)
63888
-
63889
64442
  @builtins.property
63890
64443
  def attachment_type(self) -> builtins.str:
63891
64444
  '''The type of attachment used to provide connectivity between the AWS Verified Access endpoint and the application.
@@ -63896,26 +64449,6 @@ class CfnVerifiedAccessEndpointProps:
63896
64449
  assert result is not None, "Required property 'attachment_type' is missing"
63897
64450
  return typing.cast(builtins.str, result)
63898
64451
 
63899
- @builtins.property
63900
- def domain_certificate_arn(self) -> builtins.str:
63901
- '''The ARN of a public TLS/SSL certificate imported into or created with ACM.
63902
-
63903
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessendpoint.html#cfn-ec2-verifiedaccessendpoint-domaincertificatearn
63904
- '''
63905
- result = self._values.get("domain_certificate_arn")
63906
- assert result is not None, "Required property 'domain_certificate_arn' is missing"
63907
- return typing.cast(builtins.str, result)
63908
-
63909
- @builtins.property
63910
- def endpoint_domain_prefix(self) -> builtins.str:
63911
- '''A custom identifier that is prepended to the DNS name that is generated for the endpoint.
63912
-
63913
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessendpoint.html#cfn-ec2-verifiedaccessendpoint-endpointdomainprefix
63914
- '''
63915
- result = self._values.get("endpoint_domain_prefix")
63916
- assert result is not None, "Required property 'endpoint_domain_prefix' is missing"
63917
- return typing.cast(builtins.str, result)
63918
-
63919
64452
  @builtins.property
63920
64453
  def endpoint_type(self) -> builtins.str:
63921
64454
  '''The type of AWS Verified Access endpoint.
@@ -63938,6 +64471,26 @@ class CfnVerifiedAccessEndpointProps:
63938
64471
  assert result is not None, "Required property 'verified_access_group_id' is missing"
63939
64472
  return typing.cast(builtins.str, result)
63940
64473
 
64474
+ @builtins.property
64475
+ def application_domain(self) -> typing.Optional[builtins.str]:
64476
+ '''The DNS name for users to reach your application.
64477
+
64478
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessendpoint.html#cfn-ec2-verifiedaccessendpoint-applicationdomain
64479
+ '''
64480
+ result = self._values.get("application_domain")
64481
+ return typing.cast(typing.Optional[builtins.str], result)
64482
+
64483
+ @builtins.property
64484
+ def cidr_options(
64485
+ self,
64486
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnVerifiedAccessEndpoint.CidrOptionsProperty]]:
64487
+ '''The options for a CIDR endpoint.
64488
+
64489
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessendpoint.html#cfn-ec2-verifiedaccessendpoint-cidroptions
64490
+ '''
64491
+ result = self._values.get("cidr_options")
64492
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnVerifiedAccessEndpoint.CidrOptionsProperty]], result)
64493
+
63941
64494
  @builtins.property
63942
64495
  def description(self) -> typing.Optional[builtins.str]:
63943
64496
  '''A description for the AWS Verified Access endpoint.
@@ -63947,6 +64500,24 @@ class CfnVerifiedAccessEndpointProps:
63947
64500
  result = self._values.get("description")
63948
64501
  return typing.cast(typing.Optional[builtins.str], result)
63949
64502
 
64503
+ @builtins.property
64504
+ def domain_certificate_arn(self) -> typing.Optional[builtins.str]:
64505
+ '''The ARN of a public TLS/SSL certificate imported into or created with ACM.
64506
+
64507
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessendpoint.html#cfn-ec2-verifiedaccessendpoint-domaincertificatearn
64508
+ '''
64509
+ result = self._values.get("domain_certificate_arn")
64510
+ return typing.cast(typing.Optional[builtins.str], result)
64511
+
64512
+ @builtins.property
64513
+ def endpoint_domain_prefix(self) -> typing.Optional[builtins.str]:
64514
+ '''A custom identifier that is prepended to the DNS name that is generated for the endpoint.
64515
+
64516
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessendpoint.html#cfn-ec2-verifiedaccessendpoint-endpointdomainprefix
64517
+ '''
64518
+ result = self._values.get("endpoint_domain_prefix")
64519
+ return typing.cast(typing.Optional[builtins.str], result)
64520
+
63950
64521
  @builtins.property
63951
64522
  def load_balancer_options(
63952
64523
  self,
@@ -63989,6 +64560,17 @@ class CfnVerifiedAccessEndpointProps:
63989
64560
  result = self._values.get("policy_enabled")
63990
64561
  return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
63991
64562
 
64563
+ @builtins.property
64564
+ def rds_options(
64565
+ self,
64566
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnVerifiedAccessEndpoint.RdsOptionsProperty]]:
64567
+ '''The options for an RDS endpoint.
64568
+
64569
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessendpoint.html#cfn-ec2-verifiedaccessendpoint-rdsoptions
64570
+ '''
64571
+ result = self._values.get("rds_options")
64572
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnVerifiedAccessEndpoint.RdsOptionsProperty]], result)
64573
+
63992
64574
  @builtins.property
63993
64575
  def security_group_ids(self) -> typing.Optional[typing.List[builtins.str]]:
63994
64576
  '''The IDs of the security groups for the endpoint.
@@ -64529,6 +65111,7 @@ class CfnVerifiedAccessInstance(
64529
65111
  from aws_cdk import aws_ec2 as ec2
64530
65112
 
64531
65113
  cfn_verified_access_instance = ec2.CfnVerifiedAccessInstance(self, "MyCfnVerifiedAccessInstance",
65114
+ cidr_endpoints_custom_sub_domain="cidrEndpointsCustomSubDomain",
64532
65115
  description="description",
64533
65116
  fips_enabled=False,
64534
65117
  logging_configurations=ec2.CfnVerifiedAccessInstance.VerifiedAccessLogsProperty(
@@ -64569,6 +65152,7 @@ class CfnVerifiedAccessInstance(
64569
65152
  scope: _constructs_77d1e7e8.Construct,
64570
65153
  id: builtins.str,
64571
65154
  *,
65155
+ cidr_endpoints_custom_sub_domain: typing.Optional[builtins.str] = None,
64572
65156
  description: typing.Optional[builtins.str] = None,
64573
65157
  fips_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
64574
65158
  logging_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessInstance.VerifiedAccessLogsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -64579,6 +65163,7 @@ class CfnVerifiedAccessInstance(
64579
65163
  '''
64580
65164
  :param scope: Scope in which this resource is defined.
64581
65165
  :param id: Construct identifier for this resource (unique in its scope).
65166
+ :param cidr_endpoints_custom_sub_domain: The custom subdomain.
64582
65167
  :param description: A description for the AWS Verified Access instance.
64583
65168
  :param fips_enabled: Indicates whether support for Federal Information Processing Standards (FIPS) is enabled on the instance.
64584
65169
  :param logging_configurations: The logging configuration for the Verified Access instances.
@@ -64591,6 +65176,7 @@ class CfnVerifiedAccessInstance(
64591
65176
  check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
64592
65177
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
64593
65178
  props = CfnVerifiedAccessInstanceProps(
65179
+ cidr_endpoints_custom_sub_domain=cidr_endpoints_custom_sub_domain,
64594
65180
  description=description,
64595
65181
  fips_enabled=fips_enabled,
64596
65182
  logging_configurations=logging_configurations,
@@ -64631,6 +65217,17 @@ class CfnVerifiedAccessInstance(
64631
65217
  '''The CloudFormation resource type name for this resource class.'''
64632
65218
  return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
64633
65219
 
65220
+ @builtins.property
65221
+ @jsii.member(jsii_name="attrCidrEndpointsCustomSubDomainNameServers")
65222
+ def attr_cidr_endpoints_custom_sub_domain_name_servers(
65223
+ self,
65224
+ ) -> typing.List[builtins.str]:
65225
+ '''Property to represent the name servers assoicated with the domain that AVA manages (say, ['ns1.amazonaws.com', 'ns2.amazonaws.com', 'ns3.amazonaws.com', 'ns4.amazonaws.com']).
65226
+
65227
+ :cloudformationAttribute: CidrEndpointsCustomSubDomainNameServers
65228
+ '''
65229
+ return typing.cast(typing.List[builtins.str], jsii.get(self, "attrCidrEndpointsCustomSubDomainNameServers"))
65230
+
64634
65231
  @builtins.property
64635
65232
  @jsii.member(jsii_name="attrCreationTime")
64636
65233
  def attr_creation_time(self) -> builtins.str:
@@ -64669,6 +65266,22 @@ class CfnVerifiedAccessInstance(
64669
65266
  '''Tag Manager which manages the tags for this resource.'''
64670
65267
  return typing.cast(_TagManager_0a598cb3, jsii.get(self, "tags"))
64671
65268
 
65269
+ @builtins.property
65270
+ @jsii.member(jsii_name="cidrEndpointsCustomSubDomain")
65271
+ def cidr_endpoints_custom_sub_domain(self) -> typing.Optional[builtins.str]:
65272
+ '''The custom subdomain.'''
65273
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "cidrEndpointsCustomSubDomain"))
65274
+
65275
+ @cidr_endpoints_custom_sub_domain.setter
65276
+ def cidr_endpoints_custom_sub_domain(
65277
+ self,
65278
+ value: typing.Optional[builtins.str],
65279
+ ) -> None:
65280
+ if __debug__:
65281
+ type_hints = typing.get_type_hints(_typecheckingstub__3448e803dabba9774e7b7492ef1b28e3424db8c132d0424e38e9c949f6517948)
65282
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
65283
+ jsii.set(self, "cidrEndpointsCustomSubDomain", value) # pyright: ignore[reportArgumentType]
65284
+
64672
65285
  @builtins.property
64673
65286
  @jsii.member(jsii_name="description")
64674
65287
  def description(self) -> typing.Optional[builtins.str]:
@@ -65288,6 +65901,7 @@ class CfnVerifiedAccessInstance(
65288
65901
  jsii_type="aws-cdk-lib.aws_ec2.CfnVerifiedAccessInstanceProps",
65289
65902
  jsii_struct_bases=[],
65290
65903
  name_mapping={
65904
+ "cidr_endpoints_custom_sub_domain": "cidrEndpointsCustomSubDomain",
65291
65905
  "description": "description",
65292
65906
  "fips_enabled": "fipsEnabled",
65293
65907
  "logging_configurations": "loggingConfigurations",
@@ -65300,6 +65914,7 @@ class CfnVerifiedAccessInstanceProps:
65300
65914
  def __init__(
65301
65915
  self,
65302
65916
  *,
65917
+ cidr_endpoints_custom_sub_domain: typing.Optional[builtins.str] = None,
65303
65918
  description: typing.Optional[builtins.str] = None,
65304
65919
  fips_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
65305
65920
  logging_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessInstance.VerifiedAccessLogsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -65309,6 +65924,7 @@ class CfnVerifiedAccessInstanceProps:
65309
65924
  ) -> None:
65310
65925
  '''Properties for defining a ``CfnVerifiedAccessInstance``.
65311
65926
 
65927
+ :param cidr_endpoints_custom_sub_domain: The custom subdomain.
65312
65928
  :param description: A description for the AWS Verified Access instance.
65313
65929
  :param fips_enabled: Indicates whether support for Federal Information Processing Standards (FIPS) is enabled on the instance.
65314
65930
  :param logging_configurations: The logging configuration for the Verified Access instances.
@@ -65326,6 +65942,7 @@ class CfnVerifiedAccessInstanceProps:
65326
65942
  from aws_cdk import aws_ec2 as ec2
65327
65943
 
65328
65944
  cfn_verified_access_instance_props = ec2.CfnVerifiedAccessInstanceProps(
65945
+ cidr_endpoints_custom_sub_domain="cidrEndpointsCustomSubDomain",
65329
65946
  description="description",
65330
65947
  fips_enabled=False,
65331
65948
  logging_configurations=ec2.CfnVerifiedAccessInstance.VerifiedAccessLogsProperty(
@@ -65362,6 +65979,7 @@ class CfnVerifiedAccessInstanceProps:
65362
65979
  '''
65363
65980
  if __debug__:
65364
65981
  type_hints = typing.get_type_hints(_typecheckingstub__d9a24ec455946fcefd05480c5a9ec8b48ab899be4d2ad63a1acb976abdf7df46)
65982
+ check_type(argname="argument cidr_endpoints_custom_sub_domain", value=cidr_endpoints_custom_sub_domain, expected_type=type_hints["cidr_endpoints_custom_sub_domain"])
65365
65983
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
65366
65984
  check_type(argname="argument fips_enabled", value=fips_enabled, expected_type=type_hints["fips_enabled"])
65367
65985
  check_type(argname="argument logging_configurations", value=logging_configurations, expected_type=type_hints["logging_configurations"])
@@ -65369,6 +65987,8 @@ class CfnVerifiedAccessInstanceProps:
65369
65987
  check_type(argname="argument verified_access_trust_provider_ids", value=verified_access_trust_provider_ids, expected_type=type_hints["verified_access_trust_provider_ids"])
65370
65988
  check_type(argname="argument verified_access_trust_providers", value=verified_access_trust_providers, expected_type=type_hints["verified_access_trust_providers"])
65371
65989
  self._values: typing.Dict[builtins.str, typing.Any] = {}
65990
+ if cidr_endpoints_custom_sub_domain is not None:
65991
+ self._values["cidr_endpoints_custom_sub_domain"] = cidr_endpoints_custom_sub_domain
65372
65992
  if description is not None:
65373
65993
  self._values["description"] = description
65374
65994
  if fips_enabled is not None:
@@ -65382,6 +66002,15 @@ class CfnVerifiedAccessInstanceProps:
65382
66002
  if verified_access_trust_providers is not None:
65383
66003
  self._values["verified_access_trust_providers"] = verified_access_trust_providers
65384
66004
 
66005
+ @builtins.property
66006
+ def cidr_endpoints_custom_sub_domain(self) -> typing.Optional[builtins.str]:
66007
+ '''The custom subdomain.
66008
+
66009
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessinstance.html#cfn-ec2-verifiedaccessinstance-cidrendpointscustomsubdomain
66010
+ '''
66011
+ result = self._values.get("cidr_endpoints_custom_sub_domain")
66012
+ return typing.cast(typing.Optional[builtins.str], result)
66013
+
65385
66014
  @builtins.property
65386
66015
  def description(self) -> typing.Optional[builtins.str]:
65387
66016
  '''A description for the AWS Verified Access instance.
@@ -65487,6 +66116,16 @@ class CfnVerifiedAccessTrustProvider(
65487
66116
  tenant_id="tenantId"
65488
66117
  ),
65489
66118
  device_trust_provider_type="deviceTrustProviderType",
66119
+ native_application_oidc_options=ec2.CfnVerifiedAccessTrustProvider.NativeApplicationOidcOptionsProperty(
66120
+ authorization_endpoint="authorizationEndpoint",
66121
+ client_id="clientId",
66122
+ client_secret="clientSecret",
66123
+ issuer="issuer",
66124
+ public_signing_key_endpoint="publicSigningKeyEndpoint",
66125
+ scope="scope",
66126
+ token_endpoint="tokenEndpoint",
66127
+ user_info_endpoint="userInfoEndpoint"
66128
+ ),
65490
66129
  oidc_options=ec2.CfnVerifiedAccessTrustProvider.OidcOptionsProperty(
65491
66130
  authorization_endpoint="authorizationEndpoint",
65492
66131
  client_id="clientId",
@@ -65518,6 +66157,7 @@ class CfnVerifiedAccessTrustProvider(
65518
66157
  description: typing.Optional[builtins.str] = None,
65519
66158
  device_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessTrustProvider.DeviceOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
65520
66159
  device_trust_provider_type: typing.Optional[builtins.str] = None,
66160
+ native_application_oidc_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessTrustProvider.NativeApplicationOidcOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
65521
66161
  oidc_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessTrustProvider.OidcOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
65522
66162
  sse_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessTrustProvider.SseSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
65523
66163
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -65531,6 +66171,7 @@ class CfnVerifiedAccessTrustProvider(
65531
66171
  :param description: A description for the AWS Verified Access trust provider.
65532
66172
  :param device_options: The options for device-identity trust provider.
65533
66173
  :param device_trust_provider_type: The type of device-based trust provider.
66174
+ :param native_application_oidc_options: The OpenID Connect (OIDC) options.
65534
66175
  :param oidc_options: The options for an OpenID Connect-compatible user-identity trust provider.
65535
66176
  :param sse_specification: The options for additional server side encryption.
65536
66177
  :param tags: The tags.
@@ -65546,6 +66187,7 @@ class CfnVerifiedAccessTrustProvider(
65546
66187
  description=description,
65547
66188
  device_options=device_options,
65548
66189
  device_trust_provider_type=device_trust_provider_type,
66190
+ native_application_oidc_options=native_application_oidc_options,
65549
66191
  oidc_options=oidc_options,
65550
66192
  sse_specification=sse_specification,
65551
66193
  tags=tags,
@@ -65692,6 +66334,24 @@ class CfnVerifiedAccessTrustProvider(
65692
66334
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
65693
66335
  jsii.set(self, "deviceTrustProviderType", value) # pyright: ignore[reportArgumentType]
65694
66336
 
66337
+ @builtins.property
66338
+ @jsii.member(jsii_name="nativeApplicationOidcOptions")
66339
+ def native_application_oidc_options(
66340
+ self,
66341
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnVerifiedAccessTrustProvider.NativeApplicationOidcOptionsProperty"]]:
66342
+ '''The OpenID Connect (OIDC) options.'''
66343
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnVerifiedAccessTrustProvider.NativeApplicationOidcOptionsProperty"]], jsii.get(self, "nativeApplicationOidcOptions"))
66344
+
66345
+ @native_application_oidc_options.setter
66346
+ def native_application_oidc_options(
66347
+ self,
66348
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnVerifiedAccessTrustProvider.NativeApplicationOidcOptionsProperty"]],
66349
+ ) -> None:
66350
+ if __debug__:
66351
+ type_hints = typing.get_type_hints(_typecheckingstub__a19babfcaf12861d8da4710896c25acd65a9ceb94d68196b6ad7990a0e71fa6a)
66352
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
66353
+ jsii.set(self, "nativeApplicationOidcOptions", value) # pyright: ignore[reportArgumentType]
66354
+
65695
66355
  @builtins.property
65696
66356
  @jsii.member(jsii_name="oidcOptions")
65697
66357
  def oidc_options(
@@ -65827,6 +66487,175 @@ class CfnVerifiedAccessTrustProvider(
65827
66487
  k + "=" + repr(v) for k, v in self._values.items()
65828
66488
  )
65829
66489
 
66490
+ @jsii.data_type(
66491
+ jsii_type="aws-cdk-lib.aws_ec2.CfnVerifiedAccessTrustProvider.NativeApplicationOidcOptionsProperty",
66492
+ jsii_struct_bases=[],
66493
+ name_mapping={
66494
+ "authorization_endpoint": "authorizationEndpoint",
66495
+ "client_id": "clientId",
66496
+ "client_secret": "clientSecret",
66497
+ "issuer": "issuer",
66498
+ "public_signing_key_endpoint": "publicSigningKeyEndpoint",
66499
+ "scope": "scope",
66500
+ "token_endpoint": "tokenEndpoint",
66501
+ "user_info_endpoint": "userInfoEndpoint",
66502
+ },
66503
+ )
66504
+ class NativeApplicationOidcOptionsProperty:
66505
+ def __init__(
66506
+ self,
66507
+ *,
66508
+ authorization_endpoint: typing.Optional[builtins.str] = None,
66509
+ client_id: typing.Optional[builtins.str] = None,
66510
+ client_secret: typing.Optional[builtins.str] = None,
66511
+ issuer: typing.Optional[builtins.str] = None,
66512
+ public_signing_key_endpoint: typing.Optional[builtins.str] = None,
66513
+ scope: typing.Optional[builtins.str] = None,
66514
+ token_endpoint: typing.Optional[builtins.str] = None,
66515
+ user_info_endpoint: typing.Optional[builtins.str] = None,
66516
+ ) -> None:
66517
+ '''Describes the OpenID Connect (OIDC) options.
66518
+
66519
+ :param authorization_endpoint: The authorization endpoint of the IdP.
66520
+ :param client_id: The OAuth 2.0 client identifier.
66521
+ :param client_secret: The client secret.
66522
+ :param issuer: The OIDC issuer identifier of the IdP.
66523
+ :param public_signing_key_endpoint: The public signing key endpoint.
66524
+ :param scope: The set of user claims to be requested from the IdP.
66525
+ :param token_endpoint: The token endpoint of the IdP.
66526
+ :param user_info_endpoint: The user info endpoint of the IdP.
66527
+
66528
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions.html
66529
+ :exampleMetadata: fixture=_generated
66530
+
66531
+ Example::
66532
+
66533
+ # The code below shows an example of how to instantiate this type.
66534
+ # The values are placeholders you should change.
66535
+ from aws_cdk import aws_ec2 as ec2
66536
+
66537
+ native_application_oidc_options_property = ec2.CfnVerifiedAccessTrustProvider.NativeApplicationOidcOptionsProperty(
66538
+ authorization_endpoint="authorizationEndpoint",
66539
+ client_id="clientId",
66540
+ client_secret="clientSecret",
66541
+ issuer="issuer",
66542
+ public_signing_key_endpoint="publicSigningKeyEndpoint",
66543
+ scope="scope",
66544
+ token_endpoint="tokenEndpoint",
66545
+ user_info_endpoint="userInfoEndpoint"
66546
+ )
66547
+ '''
66548
+ if __debug__:
66549
+ type_hints = typing.get_type_hints(_typecheckingstub__5c206bc52aa945d69e4f73ab5f629575d922ab0ab8d447140631e1dfaa161aad)
66550
+ check_type(argname="argument authorization_endpoint", value=authorization_endpoint, expected_type=type_hints["authorization_endpoint"])
66551
+ check_type(argname="argument client_id", value=client_id, expected_type=type_hints["client_id"])
66552
+ check_type(argname="argument client_secret", value=client_secret, expected_type=type_hints["client_secret"])
66553
+ check_type(argname="argument issuer", value=issuer, expected_type=type_hints["issuer"])
66554
+ check_type(argname="argument public_signing_key_endpoint", value=public_signing_key_endpoint, expected_type=type_hints["public_signing_key_endpoint"])
66555
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
66556
+ check_type(argname="argument token_endpoint", value=token_endpoint, expected_type=type_hints["token_endpoint"])
66557
+ check_type(argname="argument user_info_endpoint", value=user_info_endpoint, expected_type=type_hints["user_info_endpoint"])
66558
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
66559
+ if authorization_endpoint is not None:
66560
+ self._values["authorization_endpoint"] = authorization_endpoint
66561
+ if client_id is not None:
66562
+ self._values["client_id"] = client_id
66563
+ if client_secret is not None:
66564
+ self._values["client_secret"] = client_secret
66565
+ if issuer is not None:
66566
+ self._values["issuer"] = issuer
66567
+ if public_signing_key_endpoint is not None:
66568
+ self._values["public_signing_key_endpoint"] = public_signing_key_endpoint
66569
+ if scope is not None:
66570
+ self._values["scope"] = scope
66571
+ if token_endpoint is not None:
66572
+ self._values["token_endpoint"] = token_endpoint
66573
+ if user_info_endpoint is not None:
66574
+ self._values["user_info_endpoint"] = user_info_endpoint
66575
+
66576
+ @builtins.property
66577
+ def authorization_endpoint(self) -> typing.Optional[builtins.str]:
66578
+ '''The authorization endpoint of the IdP.
66579
+
66580
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions.html#cfn-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions-authorizationendpoint
66581
+ '''
66582
+ result = self._values.get("authorization_endpoint")
66583
+ return typing.cast(typing.Optional[builtins.str], result)
66584
+
66585
+ @builtins.property
66586
+ def client_id(self) -> typing.Optional[builtins.str]:
66587
+ '''The OAuth 2.0 client identifier.
66588
+
66589
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions.html#cfn-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions-clientid
66590
+ '''
66591
+ result = self._values.get("client_id")
66592
+ return typing.cast(typing.Optional[builtins.str], result)
66593
+
66594
+ @builtins.property
66595
+ def client_secret(self) -> typing.Optional[builtins.str]:
66596
+ '''The client secret.
66597
+
66598
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions.html#cfn-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions-clientsecret
66599
+ '''
66600
+ result = self._values.get("client_secret")
66601
+ return typing.cast(typing.Optional[builtins.str], result)
66602
+
66603
+ @builtins.property
66604
+ def issuer(self) -> typing.Optional[builtins.str]:
66605
+ '''The OIDC issuer identifier of the IdP.
66606
+
66607
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions.html#cfn-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions-issuer
66608
+ '''
66609
+ result = self._values.get("issuer")
66610
+ return typing.cast(typing.Optional[builtins.str], result)
66611
+
66612
+ @builtins.property
66613
+ def public_signing_key_endpoint(self) -> typing.Optional[builtins.str]:
66614
+ '''The public signing key endpoint.
66615
+
66616
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions.html#cfn-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions-publicsigningkeyendpoint
66617
+ '''
66618
+ result = self._values.get("public_signing_key_endpoint")
66619
+ return typing.cast(typing.Optional[builtins.str], result)
66620
+
66621
+ @builtins.property
66622
+ def scope(self) -> typing.Optional[builtins.str]:
66623
+ '''The set of user claims to be requested from the IdP.
66624
+
66625
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions.html#cfn-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions-scope
66626
+ '''
66627
+ result = self._values.get("scope")
66628
+ return typing.cast(typing.Optional[builtins.str], result)
66629
+
66630
+ @builtins.property
66631
+ def token_endpoint(self) -> typing.Optional[builtins.str]:
66632
+ '''The token endpoint of the IdP.
66633
+
66634
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions.html#cfn-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions-tokenendpoint
66635
+ '''
66636
+ result = self._values.get("token_endpoint")
66637
+ return typing.cast(typing.Optional[builtins.str], result)
66638
+
66639
+ @builtins.property
66640
+ def user_info_endpoint(self) -> typing.Optional[builtins.str]:
66641
+ '''The user info endpoint of the IdP.
66642
+
66643
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions.html#cfn-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions-userinfoendpoint
66644
+ '''
66645
+ result = self._values.get("user_info_endpoint")
66646
+ return typing.cast(typing.Optional[builtins.str], result)
66647
+
66648
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
66649
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
66650
+
66651
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
66652
+ return not (rhs == self)
66653
+
66654
+ def __repr__(self) -> str:
66655
+ return "NativeApplicationOidcOptionsProperty(%s)" % ", ".join(
66656
+ k + "=" + repr(v) for k, v in self._values.items()
66657
+ )
66658
+
65830
66659
  @jsii.data_type(
65831
66660
  jsii_type="aws-cdk-lib.aws_ec2.CfnVerifiedAccessTrustProvider.OidcOptionsProperty",
65832
66661
  jsii_struct_bases=[],
@@ -66069,6 +66898,7 @@ class CfnVerifiedAccessTrustProvider(
66069
66898
  "description": "description",
66070
66899
  "device_options": "deviceOptions",
66071
66900
  "device_trust_provider_type": "deviceTrustProviderType",
66901
+ "native_application_oidc_options": "nativeApplicationOidcOptions",
66072
66902
  "oidc_options": "oidcOptions",
66073
66903
  "sse_specification": "sseSpecification",
66074
66904
  "tags": "tags",
@@ -66084,6 +66914,7 @@ class CfnVerifiedAccessTrustProviderProps:
66084
66914
  description: typing.Optional[builtins.str] = None,
66085
66915
  device_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.DeviceOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
66086
66916
  device_trust_provider_type: typing.Optional[builtins.str] = None,
66917
+ native_application_oidc_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.NativeApplicationOidcOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
66087
66918
  oidc_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.OidcOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
66088
66919
  sse_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.SseSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
66089
66920
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -66096,6 +66927,7 @@ class CfnVerifiedAccessTrustProviderProps:
66096
66927
  :param description: A description for the AWS Verified Access trust provider.
66097
66928
  :param device_options: The options for device-identity trust provider.
66098
66929
  :param device_trust_provider_type: The type of device-based trust provider.
66930
+ :param native_application_oidc_options: The OpenID Connect (OIDC) options.
66099
66931
  :param oidc_options: The options for an OpenID Connect-compatible user-identity trust provider.
66100
66932
  :param sse_specification: The options for additional server side encryption.
66101
66933
  :param tags: The tags.
@@ -66121,6 +66953,16 @@ class CfnVerifiedAccessTrustProviderProps:
66121
66953
  tenant_id="tenantId"
66122
66954
  ),
66123
66955
  device_trust_provider_type="deviceTrustProviderType",
66956
+ native_application_oidc_options=ec2.CfnVerifiedAccessTrustProvider.NativeApplicationOidcOptionsProperty(
66957
+ authorization_endpoint="authorizationEndpoint",
66958
+ client_id="clientId",
66959
+ client_secret="clientSecret",
66960
+ issuer="issuer",
66961
+ public_signing_key_endpoint="publicSigningKeyEndpoint",
66962
+ scope="scope",
66963
+ token_endpoint="tokenEndpoint",
66964
+ user_info_endpoint="userInfoEndpoint"
66965
+ ),
66124
66966
  oidc_options=ec2.CfnVerifiedAccessTrustProvider.OidcOptionsProperty(
66125
66967
  authorization_endpoint="authorizationEndpoint",
66126
66968
  client_id="clientId",
@@ -66148,6 +66990,7 @@ class CfnVerifiedAccessTrustProviderProps:
66148
66990
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
66149
66991
  check_type(argname="argument device_options", value=device_options, expected_type=type_hints["device_options"])
66150
66992
  check_type(argname="argument device_trust_provider_type", value=device_trust_provider_type, expected_type=type_hints["device_trust_provider_type"])
66993
+ check_type(argname="argument native_application_oidc_options", value=native_application_oidc_options, expected_type=type_hints["native_application_oidc_options"])
66151
66994
  check_type(argname="argument oidc_options", value=oidc_options, expected_type=type_hints["oidc_options"])
66152
66995
  check_type(argname="argument sse_specification", value=sse_specification, expected_type=type_hints["sse_specification"])
66153
66996
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
@@ -66162,6 +67005,8 @@ class CfnVerifiedAccessTrustProviderProps:
66162
67005
  self._values["device_options"] = device_options
66163
67006
  if device_trust_provider_type is not None:
66164
67007
  self._values["device_trust_provider_type"] = device_trust_provider_type
67008
+ if native_application_oidc_options is not None:
67009
+ self._values["native_application_oidc_options"] = native_application_oidc_options
66165
67010
  if oidc_options is not None:
66166
67011
  self._values["oidc_options"] = oidc_options
66167
67012
  if sse_specification is not None:
@@ -66220,6 +67065,17 @@ class CfnVerifiedAccessTrustProviderProps:
66220
67065
  result = self._values.get("device_trust_provider_type")
66221
67066
  return typing.cast(typing.Optional[builtins.str], result)
66222
67067
 
67068
+ @builtins.property
67069
+ def native_application_oidc_options(
67070
+ self,
67071
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnVerifiedAccessTrustProvider.NativeApplicationOidcOptionsProperty]]:
67072
+ '''The OpenID Connect (OIDC) options.
67073
+
67074
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccesstrustprovider.html#cfn-ec2-verifiedaccesstrustprovider-nativeapplicationoidcoptions
67075
+ '''
67076
+ result = self._values.get("native_application_oidc_options")
67077
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnVerifiedAccessTrustProvider.NativeApplicationOidcOptionsProperty]], result)
67078
+
66223
67079
  @builtins.property
66224
67080
  def oidc_options(
66225
67081
  self,
@@ -78829,6 +79685,11 @@ class InterfaceVpcEndpointAwsService(
78829
79685
  def KAFKA(cls) -> "InterfaceVpcEndpointAwsService":
78830
79686
  return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "KAFKA"))
78831
79687
 
79688
+ @jsii.python.classproperty
79689
+ @jsii.member(jsii_name="KAFKA_CONNECT")
79690
+ def KAFKA_CONNECT(cls) -> "InterfaceVpcEndpointAwsService":
79691
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "KAFKA_CONNECT"))
79692
+
78832
79693
  @jsii.python.classproperty
78833
79694
  @jsii.member(jsii_name="KAFKA_FIPS")
78834
79695
  def KAFKA_FIPS(cls) -> "InterfaceVpcEndpointAwsService":
@@ -98256,7 +99117,7 @@ class ClientVpnEndpoint(
98256
99117
  metaclass=jsii.JSIIMeta,
98257
99118
  jsii_type="aws-cdk-lib.aws_ec2.ClientVpnEndpoint",
98258
99119
  ):
98259
- '''A client VPN connnection.
99120
+ '''A client VPN connection.
98260
99121
 
98261
99122
  :exampleMetadata: fixture=client-vpn infused
98262
99123
 
@@ -99313,10 +100174,11 @@ def _typecheckingstub__96fb3bc559aaa9df971e86ea7cdd3cdc3de550019a2d3bf247d3fb169
99313
100174
  scope: _constructs_77d1e7e8.Construct,
99314
100175
  id: builtins.str,
99315
100176
  *,
99316
- availability_zone: builtins.str,
99317
100177
  instance_count: jsii.Number,
99318
100178
  instance_platform: builtins.str,
99319
100179
  instance_type: builtins.str,
100180
+ availability_zone: typing.Optional[builtins.str] = None,
100181
+ availability_zone_id: typing.Optional[builtins.str] = None,
99320
100182
  ebs_optimized: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
99321
100183
  end_date: typing.Optional[builtins.str] = None,
99322
100184
  end_date_type: typing.Optional[builtins.str] = None,
@@ -99324,7 +100186,7 @@ def _typecheckingstub__96fb3bc559aaa9df971e86ea7cdd3cdc3de550019a2d3bf247d3fb169
99324
100186
  instance_match_criteria: typing.Optional[builtins.str] = None,
99325
100187
  out_post_arn: typing.Optional[builtins.str] = None,
99326
100188
  placement_group_arn: typing.Optional[builtins.str] = None,
99327
- tag_specifications: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCapacityReservation.TagSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
100189
+ tag_specifications: typing.Optional[typing.Sequence[typing.Union[CfnCapacityReservation.TagSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
99328
100190
  tenancy: typing.Optional[builtins.str] = None,
99329
100191
  unused_reservation_billing_owner_id: typing.Optional[builtins.str] = None,
99330
100192
  ) -> None:
@@ -99343,12 +100205,6 @@ def _typecheckingstub__4b837e3858811127cec4a1a49ef5fbc9c4920b9ca228950a0e8797ab4
99343
100205
  """Type checking stubs"""
99344
100206
  pass
99345
100207
 
99346
- def _typecheckingstub__c78e4680a157e3466009de77e8aa625d8cf7fee8e6f0094ed98d312434e17d0f(
99347
- value: builtins.str,
99348
- ) -> None:
99349
- """Type checking stubs"""
99350
- pass
99351
-
99352
100208
  def _typecheckingstub__22b368a04915e99dd5744c69aee4e5f18ce694f374f86d57efdd11669b182094(
99353
100209
  value: jsii.Number,
99354
100210
  ) -> None:
@@ -99367,6 +100223,18 @@ def _typecheckingstub__77123d0c19c0832f7509cd76b26aa9299b7596606999f89281b470a4f
99367
100223
  """Type checking stubs"""
99368
100224
  pass
99369
100225
 
100226
+ def _typecheckingstub__c78e4680a157e3466009de77e8aa625d8cf7fee8e6f0094ed98d312434e17d0f(
100227
+ value: typing.Optional[builtins.str],
100228
+ ) -> None:
100229
+ """Type checking stubs"""
100230
+ pass
100231
+
100232
+ def _typecheckingstub__3491534eeb43f169595d5744c952b4e6e91b59d668a8f0213de96d7e46d772f0(
100233
+ value: typing.Optional[builtins.str],
100234
+ ) -> None:
100235
+ """Type checking stubs"""
100236
+ pass
100237
+
99370
100238
  def _typecheckingstub__678dbc8559016cf13cc067fc0b1a2efbca67b43c58a19ad6cb861f9f92eaffde(
99371
100239
  value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
99372
100240
  ) -> None:
@@ -99410,7 +100278,7 @@ def _typecheckingstub__16fa52eb55faf78ebc17e0e8d27a241715110e3c4255fe91c5b59c36a
99410
100278
  pass
99411
100279
 
99412
100280
  def _typecheckingstub__d2d4ed674b30189cbf7b11b79e68ea556b2b7c9921a4d61f7610b58d25fed8ca(
99413
- value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnCapacityReservation.TagSpecificationProperty]]]],
100281
+ value: typing.Optional[typing.List[CfnCapacityReservation.TagSpecificationProperty]],
99414
100282
  ) -> None:
99415
100283
  """Type checking stubs"""
99416
100284
  pass
@@ -99556,10 +100424,11 @@ def _typecheckingstub__43bd0a52cfe7402bf156151a3e760ed1bd133935bd29982a3798f854c
99556
100424
 
99557
100425
  def _typecheckingstub__8a65d4e8bb2e678a9a6387fd809c3b5428c783211224ece5155ec92d1eda301d(
99558
100426
  *,
99559
- availability_zone: builtins.str,
99560
100427
  instance_count: jsii.Number,
99561
100428
  instance_platform: builtins.str,
99562
100429
  instance_type: builtins.str,
100430
+ availability_zone: typing.Optional[builtins.str] = None,
100431
+ availability_zone_id: typing.Optional[builtins.str] = None,
99563
100432
  ebs_optimized: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
99564
100433
  end_date: typing.Optional[builtins.str] = None,
99565
100434
  end_date_type: typing.Optional[builtins.str] = None,
@@ -99567,7 +100436,7 @@ def _typecheckingstub__8a65d4e8bb2e678a9a6387fd809c3b5428c783211224ece5155ec92d1
99567
100436
  instance_match_criteria: typing.Optional[builtins.str] = None,
99568
100437
  out_post_arn: typing.Optional[builtins.str] = None,
99569
100438
  placement_group_arn: typing.Optional[builtins.str] = None,
99570
- tag_specifications: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCapacityReservation.TagSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
100439
+ tag_specifications: typing.Optional[typing.Sequence[typing.Union[CfnCapacityReservation.TagSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
99571
100440
  tenancy: typing.Optional[builtins.str] = None,
99572
100441
  unused_reservation_billing_owner_id: typing.Optional[builtins.str] = None,
99573
100442
  ) -> None:
@@ -99693,6 +100562,7 @@ def _typecheckingstub__1880bffa9253aaedfa6af6175da6262a96ea34dadf82dc678a1eef91c
99693
100562
  client_connect_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientConnectOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
99694
100563
  client_login_banner_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientLoginBannerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
99695
100564
  description: typing.Optional[builtins.str] = None,
100565
+ disconnect_on_session_timeout: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
99696
100566
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
99697
100567
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
99698
100568
  self_service_portal: typing.Optional[builtins.str] = None,
@@ -99760,6 +100630,12 @@ def _typecheckingstub__bb1d5fb0102c1b6de24ad13acfc13837ec5422291e23048395fe03350
99760
100630
  """Type checking stubs"""
99761
100631
  pass
99762
100632
 
100633
+ def _typecheckingstub__7a04e648e3ab2786626daca4bea9d7e5d9f8fd502183ea90643aafd9a31a5f2c(
100634
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
100635
+ ) -> None:
100636
+ """Type checking stubs"""
100637
+ pass
100638
+
99763
100639
  def _typecheckingstub__1ebcac79eb30395bbcc38271559390a74d75a7ae45dfe368c2cd3b996b81b462(
99764
100640
  value: typing.Optional[typing.List[builtins.str]],
99765
100641
  ) -> None:
@@ -99888,6 +100764,7 @@ def _typecheckingstub__05994467e800c33b4a01e884b4b20bef2569d710f5dc323617cd814e5
99888
100764
  client_connect_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientConnectOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
99889
100765
  client_login_banner_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientLoginBannerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
99890
100766
  description: typing.Optional[builtins.str] = None,
100767
+ disconnect_on_session_timeout: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
99891
100768
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
99892
100769
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
99893
100770
  self_service_portal: typing.Optional[builtins.str] = None,
@@ -107740,17 +108617,19 @@ def _typecheckingstub__4d36b12d1ab3c67a3dfcd9bfed6cbbcb2f1267d23c43d3209213bf009
107740
108617
  scope: _constructs_77d1e7e8.Construct,
107741
108618
  id: builtins.str,
107742
108619
  *,
107743
- application_domain: builtins.str,
107744
108620
  attachment_type: builtins.str,
107745
- domain_certificate_arn: builtins.str,
107746
- endpoint_domain_prefix: builtins.str,
107747
108621
  endpoint_type: builtins.str,
107748
108622
  verified_access_group_id: builtins.str,
108623
+ application_domain: typing.Optional[builtins.str] = None,
108624
+ cidr_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.CidrOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
107749
108625
  description: typing.Optional[builtins.str] = None,
108626
+ domain_certificate_arn: typing.Optional[builtins.str] = None,
108627
+ endpoint_domain_prefix: typing.Optional[builtins.str] = None,
107750
108628
  load_balancer_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.LoadBalancerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
107751
108629
  network_interface_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.NetworkInterfaceOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
107752
108630
  policy_document: typing.Optional[builtins.str] = None,
107753
108631
  policy_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
108632
+ rds_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.RdsOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
107754
108633
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
107755
108634
  sse_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.SseSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
107756
108635
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -107770,43 +108649,49 @@ def _typecheckingstub__bc2a2c5e187d55f32f86bed24144fa2c14723e28c2c028062d6941f44
107770
108649
  """Type checking stubs"""
107771
108650
  pass
107772
108651
 
107773
- def _typecheckingstub__b28061f28b3f28be486d48f7dc7fd621f3103258eb9e7885ff475e46e5fd902b(
108652
+ def _typecheckingstub__1d10e167e554b430eb1ac5650dc7e833d44fb08c080f0db7bddc1e8a7fc72cb1(
107774
108653
  value: builtins.str,
107775
108654
  ) -> None:
107776
108655
  """Type checking stubs"""
107777
108656
  pass
107778
108657
 
107779
- def _typecheckingstub__1d10e167e554b430eb1ac5650dc7e833d44fb08c080f0db7bddc1e8a7fc72cb1(
108658
+ def _typecheckingstub__e1c912930012351cff79ab0fb5325f42f80c3484801d0cbe19a20d7a19cd8f3a(
107780
108659
  value: builtins.str,
107781
108660
  ) -> None:
107782
108661
  """Type checking stubs"""
107783
108662
  pass
107784
108663
 
107785
- def _typecheckingstub__efc1ee2a591d8925ff2f8ca9eaba761d65c8b57e365164d2a86e578e910f175f(
108664
+ def _typecheckingstub__89c39e6200e18904b3557bcd57dab1d8a26e87af526f5462ad34ddbffada9d08(
107786
108665
  value: builtins.str,
107787
108666
  ) -> None:
107788
108667
  """Type checking stubs"""
107789
108668
  pass
107790
108669
 
107791
- def _typecheckingstub__ff9d0e5773a8d9ea22993cc66220368ac095ea17382c558d7190b96a647f458f(
107792
- value: builtins.str,
108670
+ def _typecheckingstub__b28061f28b3f28be486d48f7dc7fd621f3103258eb9e7885ff475e46e5fd902b(
108671
+ value: typing.Optional[builtins.str],
107793
108672
  ) -> None:
107794
108673
  """Type checking stubs"""
107795
108674
  pass
107796
108675
 
107797
- def _typecheckingstub__e1c912930012351cff79ab0fb5325f42f80c3484801d0cbe19a20d7a19cd8f3a(
107798
- value: builtins.str,
108676
+ def _typecheckingstub__2962dac3960398d69fb7ac9839727efce1ad5405f068e725a9f41e9e8c48552a(
108677
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnVerifiedAccessEndpoint.CidrOptionsProperty]],
107799
108678
  ) -> None:
107800
108679
  """Type checking stubs"""
107801
108680
  pass
107802
108681
 
107803
- def _typecheckingstub__89c39e6200e18904b3557bcd57dab1d8a26e87af526f5462ad34ddbffada9d08(
107804
- value: builtins.str,
108682
+ def _typecheckingstub__d4d12173aa39d537b02fbd1df1f0478890f6c89c75db9f7940f5afee0f771734(
108683
+ value: typing.Optional[builtins.str],
107805
108684
  ) -> None:
107806
108685
  """Type checking stubs"""
107807
108686
  pass
107808
108687
 
107809
- def _typecheckingstub__d4d12173aa39d537b02fbd1df1f0478890f6c89c75db9f7940f5afee0f771734(
108688
+ def _typecheckingstub__efc1ee2a591d8925ff2f8ca9eaba761d65c8b57e365164d2a86e578e910f175f(
108689
+ value: typing.Optional[builtins.str],
108690
+ ) -> None:
108691
+ """Type checking stubs"""
108692
+ pass
108693
+
108694
+ def _typecheckingstub__ff9d0e5773a8d9ea22993cc66220368ac095ea17382c558d7190b96a647f458f(
107810
108695
  value: typing.Optional[builtins.str],
107811
108696
  ) -> None:
107812
108697
  """Type checking stubs"""
@@ -107836,6 +108721,12 @@ def _typecheckingstub__d544f882cc7fa74d192a81ca201822cd80d9f91a6c0680be92961c818
107836
108721
  """Type checking stubs"""
107837
108722
  pass
107838
108723
 
108724
+ def _typecheckingstub__a912f808eff9a847eb56334d2df19bc7f437ffc6f1b217c0836ef2f6397dfd6c(
108725
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnVerifiedAccessEndpoint.RdsOptionsProperty]],
108726
+ ) -> None:
108727
+ """Type checking stubs"""
108728
+ pass
108729
+
107839
108730
  def _typecheckingstub__102770719c6031007d664c25a6414989d2e114f24811888a51575fc6a9fbbea8(
107840
108731
  value: typing.Optional[typing.List[builtins.str]],
107841
108732
  ) -> None:
@@ -107854,10 +108745,21 @@ def _typecheckingstub__b3d819c87bb8f385fc1e857a7fa5b0c4d1892fee609cc4cc3aa402645
107854
108745
  """Type checking stubs"""
107855
108746
  pass
107856
108747
 
108748
+ def _typecheckingstub__23c52461363ac544508e25c4abd78eefe3541bba29d66ed3b2861949b0f67c1c(
108749
+ *,
108750
+ cidr: typing.Optional[builtins.str] = None,
108751
+ port_ranges: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.PortRangeProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
108752
+ protocol: typing.Optional[builtins.str] = None,
108753
+ subnet_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
108754
+ ) -> None:
108755
+ """Type checking stubs"""
108756
+ pass
108757
+
107857
108758
  def _typecheckingstub__748e5ad8bcd3de0f9d4460d24ba08621e5769f4aa625427a31af6f4cfad10c64(
107858
108759
  *,
107859
108760
  load_balancer_arn: typing.Optional[builtins.str] = None,
107860
108761
  port: typing.Optional[jsii.Number] = None,
108762
+ port_ranges: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.PortRangeProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
107861
108763
  protocol: typing.Optional[builtins.str] = None,
107862
108764
  subnet_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
107863
108765
  ) -> None:
@@ -107868,11 +108770,33 @@ def _typecheckingstub__87a3b1db27ee0d26aa10f209574558cadfa966a187d72396dc2453f49
107868
108770
  *,
107869
108771
  network_interface_id: typing.Optional[builtins.str] = None,
107870
108772
  port: typing.Optional[jsii.Number] = None,
108773
+ port_ranges: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.PortRangeProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
107871
108774
  protocol: typing.Optional[builtins.str] = None,
107872
108775
  ) -> None:
107873
108776
  """Type checking stubs"""
107874
108777
  pass
107875
108778
 
108779
+ def _typecheckingstub__d7afca99a963532ddc95e640bb20b45750c4dabaa33fd2123aa2480165409544(
108780
+ *,
108781
+ from_port: typing.Optional[jsii.Number] = None,
108782
+ to_port: typing.Optional[jsii.Number] = None,
108783
+ ) -> None:
108784
+ """Type checking stubs"""
108785
+ pass
108786
+
108787
+ def _typecheckingstub__217add2f23506262e3f92eedf9ff65affe5c95dd71451ad448b5a12db367d5f1(
108788
+ *,
108789
+ port: typing.Optional[jsii.Number] = None,
108790
+ protocol: typing.Optional[builtins.str] = None,
108791
+ rds_db_cluster_arn: typing.Optional[builtins.str] = None,
108792
+ rds_db_instance_arn: typing.Optional[builtins.str] = None,
108793
+ rds_db_proxy_arn: typing.Optional[builtins.str] = None,
108794
+ rds_endpoint: typing.Optional[builtins.str] = None,
108795
+ subnet_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
108796
+ ) -> None:
108797
+ """Type checking stubs"""
108798
+ pass
108799
+
107876
108800
  def _typecheckingstub__02c635a2da8a4b8f86f38bec4cdb7864386d5f2c0ddad83ce923502ececa7167(
107877
108801
  *,
107878
108802
  customer_managed_key_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
@@ -107883,17 +108807,19 @@ def _typecheckingstub__02c635a2da8a4b8f86f38bec4cdb7864386d5f2c0ddad83ce923502ec
107883
108807
 
107884
108808
  def _typecheckingstub__a6b5fcbc7d5ca5da1405e117289abdd54dfab30dc79e867da0da32239d886ee5(
107885
108809
  *,
107886
- application_domain: builtins.str,
107887
108810
  attachment_type: builtins.str,
107888
- domain_certificate_arn: builtins.str,
107889
- endpoint_domain_prefix: builtins.str,
107890
108811
  endpoint_type: builtins.str,
107891
108812
  verified_access_group_id: builtins.str,
108813
+ application_domain: typing.Optional[builtins.str] = None,
108814
+ cidr_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.CidrOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
107892
108815
  description: typing.Optional[builtins.str] = None,
108816
+ domain_certificate_arn: typing.Optional[builtins.str] = None,
108817
+ endpoint_domain_prefix: typing.Optional[builtins.str] = None,
107893
108818
  load_balancer_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.LoadBalancerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
107894
108819
  network_interface_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.NetworkInterfaceOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
107895
108820
  policy_document: typing.Optional[builtins.str] = None,
107896
108821
  policy_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
108822
+ rds_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.RdsOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
107897
108823
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
107898
108824
  sse_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.SseSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
107899
108825
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -107987,6 +108913,7 @@ def _typecheckingstub__210b67953502d567079f8663990436a4ba8d53414d251da116ccd8eac
107987
108913
  scope: _constructs_77d1e7e8.Construct,
107988
108914
  id: builtins.str,
107989
108915
  *,
108916
+ cidr_endpoints_custom_sub_domain: typing.Optional[builtins.str] = None,
107990
108917
  description: typing.Optional[builtins.str] = None,
107991
108918
  fips_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
107992
108919
  logging_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessInstance.VerifiedAccessLogsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -108009,6 +108936,12 @@ def _typecheckingstub__0310f5df079f4d94843fdb4879da8562ae3108d66ec4cd10201c900af
108009
108936
  """Type checking stubs"""
108010
108937
  pass
108011
108938
 
108939
+ def _typecheckingstub__3448e803dabba9774e7b7492ef1b28e3424db8c132d0424e38e9c949f6517948(
108940
+ value: typing.Optional[builtins.str],
108941
+ ) -> None:
108942
+ """Type checking stubs"""
108943
+ pass
108944
+
108012
108945
  def _typecheckingstub__0ba3dd03cf8f2db417bb16a3849e48282d3bd41790a0db527717302f3459305f(
108013
108946
  value: typing.Optional[builtins.str],
108014
108947
  ) -> None:
@@ -108095,6 +109028,7 @@ def _typecheckingstub__aa1b1a9d00743fb82589cb1d8f7514bfaa414568bff92a69bc361d830
108095
109028
 
108096
109029
  def _typecheckingstub__d9a24ec455946fcefd05480c5a9ec8b48ab899be4d2ad63a1acb976abdf7df46(
108097
109030
  *,
109031
+ cidr_endpoints_custom_sub_domain: typing.Optional[builtins.str] = None,
108098
109032
  description: typing.Optional[builtins.str] = None,
108099
109033
  fips_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
108100
109034
  logging_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessInstance.VerifiedAccessLogsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -108114,6 +109048,7 @@ def _typecheckingstub__e7fe983b5e05e5227bb52a4924627b4c6164af2055ac21783dbe757c2
108114
109048
  description: typing.Optional[builtins.str] = None,
108115
109049
  device_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.DeviceOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
108116
109050
  device_trust_provider_type: typing.Optional[builtins.str] = None,
109051
+ native_application_oidc_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.NativeApplicationOidcOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
108117
109052
  oidc_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.OidcOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
108118
109053
  sse_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.SseSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
108119
109054
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -108164,6 +109099,12 @@ def _typecheckingstub__86233e326be8a89b76683cacdc12855026065941b80a6573d40ec5ed9
108164
109099
  """Type checking stubs"""
108165
109100
  pass
108166
109101
 
109102
+ def _typecheckingstub__a19babfcaf12861d8da4710896c25acd65a9ceb94d68196b6ad7990a0e71fa6a(
109103
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnVerifiedAccessTrustProvider.NativeApplicationOidcOptionsProperty]],
109104
+ ) -> None:
109105
+ """Type checking stubs"""
109106
+ pass
109107
+
108167
109108
  def _typecheckingstub__b3732e232bbcf8298bc1fd1eb5a3f0b56a229a30c2b1db74d6c78fcfc80e5e77(
108168
109109
  value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnVerifiedAccessTrustProvider.OidcOptionsProperty]],
108169
109110
  ) -> None:
@@ -108196,6 +109137,20 @@ def _typecheckingstub__ff8d5f091c9e68a3470f9e83329b9ea9e8e9c3d69327e30f7c804de09
108196
109137
  """Type checking stubs"""
108197
109138
  pass
108198
109139
 
109140
+ def _typecheckingstub__5c206bc52aa945d69e4f73ab5f629575d922ab0ab8d447140631e1dfaa161aad(
109141
+ *,
109142
+ authorization_endpoint: typing.Optional[builtins.str] = None,
109143
+ client_id: typing.Optional[builtins.str] = None,
109144
+ client_secret: typing.Optional[builtins.str] = None,
109145
+ issuer: typing.Optional[builtins.str] = None,
109146
+ public_signing_key_endpoint: typing.Optional[builtins.str] = None,
109147
+ scope: typing.Optional[builtins.str] = None,
109148
+ token_endpoint: typing.Optional[builtins.str] = None,
109149
+ user_info_endpoint: typing.Optional[builtins.str] = None,
109150
+ ) -> None:
109151
+ """Type checking stubs"""
109152
+ pass
109153
+
108199
109154
  def _typecheckingstub__c7104c0ccee8d56cc5467c88b16f90245f04363672ad962c4ba9a01b66966498(
108200
109155
  *,
108201
109156
  authorization_endpoint: typing.Optional[builtins.str] = None,
@@ -108224,6 +109179,7 @@ def _typecheckingstub__a76a73a6fde22e9c9fa58fb20740e000e9153307f66b7f13cb4d7fe8b
108224
109179
  description: typing.Optional[builtins.str] = None,
108225
109180
  device_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.DeviceOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
108226
109181
  device_trust_provider_type: typing.Optional[builtins.str] = None,
109182
+ native_application_oidc_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.NativeApplicationOidcOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
108227
109183
  oidc_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.OidcOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
108228
109184
  sse_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.SseSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
108229
109185
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,