aws-cdk-lib 2.176.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 (120) hide show
  1. aws_cdk/__init__.py +106 -62
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.176.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_apigatewayv2_integrations/__init__.py +2 -2
  8. aws_cdk/aws_appconfig/__init__.py +10 -10
  9. aws_cdk/aws_appflow/__init__.py +20 -20
  10. aws_cdk/aws_applicationsignals/__init__.py +8 -8
  11. aws_cdk/aws_appmesh/__init__.py +8 -8
  12. aws_cdk/aws_appsync/__init__.py +10387 -7038
  13. aws_cdk/aws_apptest/__init__.py +4 -4
  14. aws_cdk/aws_aps/__init__.py +135 -0
  15. aws_cdk/aws_athena/__init__.py +10 -10
  16. aws_cdk/aws_backup/__init__.py +14 -14
  17. aws_cdk/aws_batch/__init__.py +189 -24
  18. aws_cdk/aws_bcmdataexports/__init__.py +4 -4
  19. aws_cdk/aws_bedrock/__init__.py +5494 -2518
  20. aws_cdk/aws_certificatemanager/__init__.py +15 -14
  21. aws_cdk/aws_chatbot/__init__.py +4 -4
  22. aws_cdk/aws_cloudformation/__init__.py +22 -18
  23. aws_cdk/aws_cloudfront/__init__.py +686 -9
  24. aws_cdk/aws_cloudfront_origins/__init__.py +73 -2
  25. aws_cdk/aws_cloudtrail/__init__.py +4 -4
  26. aws_cdk/aws_cloudwatch/__init__.py +53 -53
  27. aws_cdk/aws_codedeploy/__init__.py +2 -2
  28. aws_cdk/aws_codepipeline/__init__.py +59 -6
  29. aws_cdk/aws_codepipeline_actions/__init__.py +2 -2
  30. aws_cdk/aws_cognito/__init__.py +204 -159
  31. aws_cdk/aws_connect/__init__.py +4 -4
  32. aws_cdk/aws_customerprofiles/__init__.py +6 -4
  33. aws_cdk/aws_databrew/__init__.py +16 -16
  34. aws_cdk/aws_datasync/__init__.py +14 -11
  35. aws_cdk/aws_datazone/__init__.py +199 -129
  36. aws_cdk/aws_dms/__init__.py +4 -4
  37. aws_cdk/aws_dynamodb/__init__.py +267 -25
  38. aws_cdk/aws_ec2/__init__.py +1142 -184
  39. aws_cdk/aws_ecs/__init__.py +767 -124
  40. aws_cdk/aws_ecs_patterns/__init__.py +49 -0
  41. aws_cdk/aws_efs/__init__.py +8 -8
  42. aws_cdk/aws_eks/__init__.py +55 -35
  43. aws_cdk/aws_elasticache/__init__.py +10 -10
  44. aws_cdk/aws_elasticloadbalancingv2/__init__.py +47 -18
  45. aws_cdk/aws_elasticsearch/__init__.py +10 -10
  46. aws_cdk/aws_emr/__init__.py +16 -16
  47. aws_cdk/aws_emrserverless/__init__.py +93 -4
  48. aws_cdk/aws_entityresolution/__init__.py +31 -17
  49. aws_cdk/aws_events/__init__.py +12 -12
  50. aws_cdk/aws_fis/__init__.py +16 -16
  51. aws_cdk/aws_fms/__init__.py +46 -0
  52. aws_cdk/aws_gamelift/__init__.py +8 -10
  53. aws_cdk/aws_glue/__init__.py +1326 -7
  54. aws_cdk/aws_greengrassv2/__init__.py +8 -8
  55. aws_cdk/aws_guardduty/__init__.py +521 -0
  56. aws_cdk/aws_healthlake/__init__.py +10 -2
  57. aws_cdk/aws_iam/__init__.py +8 -0
  58. aws_cdk/aws_imagebuilder/__init__.py +88 -74
  59. aws_cdk/aws_iot/__init__.py +40 -40
  60. aws_cdk/aws_iotanalytics/__init__.py +4 -4
  61. aws_cdk/aws_iotfleetwise/__init__.py +424 -10
  62. aws_cdk/aws_iotsitewise/__init__.py +84 -13
  63. aws_cdk/aws_iottwinmaker/__init__.py +18 -18
  64. aws_cdk/aws_iotwireless/__init__.py +4 -4
  65. aws_cdk/aws_kafkaconnect/__init__.py +10 -10
  66. aws_cdk/aws_kendra/__init__.py +0 -10
  67. aws_cdk/aws_kinesisanalytics/__init__.py +4 -4
  68. aws_cdk/aws_kinesisanalyticsv2/__init__.py +4 -4
  69. aws_cdk/aws_kinesisfirehose/__init__.py +4544 -183
  70. aws_cdk/aws_kms/__init__.py +11 -10
  71. aws_cdk/aws_lambda/__init__.py +47 -4
  72. aws_cdk/aws_lambda_nodejs/__init__.py +24 -5
  73. aws_cdk/aws_launchwizard/__init__.py +10 -10
  74. aws_cdk/aws_logs/__init__.py +78 -74
  75. aws_cdk/aws_mediaconnect/__init__.py +509 -12
  76. aws_cdk/aws_medialive/__init__.py +16 -16
  77. aws_cdk/aws_mediatailor/__init__.py +10 -10
  78. aws_cdk/aws_networkfirewall/__init__.py +12 -12
  79. aws_cdk/aws_notifications/__init__.py +1927 -0
  80. aws_cdk/aws_notificationscontacts/__init__.py +593 -0
  81. aws_cdk/aws_omics/__init__.py +4 -4
  82. aws_cdk/aws_opensearchservice/__init__.py +10 -10
  83. aws_cdk/aws_opsworks/__init__.py +58 -58
  84. aws_cdk/aws_personalize/__init__.py +8 -8
  85. aws_cdk/aws_pipes/__init__.py +20 -20
  86. aws_cdk/aws_qbusiness/__init__.py +119 -0
  87. aws_cdk/aws_quicksight/__init__.py +247 -92
  88. aws_cdk/aws_rds/__init__.py +37 -37
  89. aws_cdk/aws_redshift/__init__.py +19 -15
  90. aws_cdk/aws_resiliencehub/__init__.py +0 -41
  91. aws_cdk/aws_route53/__init__.py +10 -4
  92. aws_cdk/aws_route53_targets/__init__.py +15 -15
  93. aws_cdk/aws_rum/__init__.py +4 -4
  94. aws_cdk/aws_s3/__init__.py +801 -2
  95. aws_cdk/aws_s3_notifications/__init__.py +5 -5
  96. aws_cdk/aws_s3tables/__init__.py +2 -2
  97. aws_cdk/aws_sagemaker/__init__.py +84 -60
  98. aws_cdk/aws_sam/__init__.py +48 -48
  99. aws_cdk/aws_secretsmanager/__init__.py +30 -14
  100. aws_cdk/aws_securityhub/__init__.py +12 -12
  101. aws_cdk/aws_sns/__init__.py +137 -12
  102. aws_cdk/aws_ssm/__init__.py +5 -5
  103. aws_cdk/aws_ssmquicksetup/__init__.py +10 -10
  104. aws_cdk/aws_stepfunctions/__init__.py +13207 -4740
  105. aws_cdk/aws_stepfunctions_tasks/__init__.py +77615 -22817
  106. aws_cdk/aws_synthetics/__init__.py +109 -36
  107. aws_cdk/aws_timestream/__init__.py +41 -0
  108. aws_cdk/aws_transfer/__init__.py +9 -10
  109. aws_cdk/aws_wafv2/__init__.py +24 -22
  110. aws_cdk/aws_wisdom/__init__.py +8 -8
  111. aws_cdk/aws_workspacesweb/__init__.py +60 -60
  112. aws_cdk/aws_xray/__init__.py +8 -8
  113. aws_cdk/cloud_assembly_schema/__init__.py +63 -4
  114. aws_cdk/cx_api/__init__.py +62 -4
  115. {aws_cdk_lib-2.176.0.dist-info → aws_cdk_lib-2.178.0.dist-info}/METADATA +3 -3
  116. {aws_cdk_lib-2.176.0.dist-info → aws_cdk_lib-2.178.0.dist-info}/RECORD +120 -118
  117. {aws_cdk_lib-2.176.0.dist-info → aws_cdk_lib-2.178.0.dist-info}/LICENSE +0 -0
  118. {aws_cdk_lib-2.176.0.dist-info → aws_cdk_lib-2.178.0.dist-info}/NOTICE +0 -0
  119. {aws_cdk_lib-2.176.0.dist-info → aws_cdk_lib-2.178.0.dist-info}/WHEEL +0 -0
  120. {aws_cdk_lib-2.176.0.dist-info → aws_cdk_lib-2.178.0.dist-info}/top_level.txt +0 -0
@@ -476,7 +476,7 @@ DatabaseSubnet3 |`ISOLATED`|`10.0.6.32/28`|#3|Only routes within the VPC
476
476
 
477
477
  #### Dual Stack Configurations
478
478
 
479
- Here is a break down of IPv4 and IPv6 specifc `subnetConfiguration` properties in a dual stack VPC:
479
+ Here is a break down of IPv4 and IPv6 specific `subnetConfiguration` properties in a dual stack VPC:
480
480
 
481
481
  ```python
482
482
  vpc = ec2.Vpc(self, "TheVPC",
@@ -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
  '''
@@ -28714,7 +28793,7 @@ class CfnLaunchTemplate(
28714
28793
  :param connection_tracking_specification: A connection tracking specification for the network interface.
28715
28794
  :param delete_on_termination: Indicates whether the network interface is deleted when the instance is terminated.
28716
28795
  :param description: A description for the network interface.
28717
- :param device_index: The device index for the network interface attachment. Each network interface requires a device index. If you create a launch template that includes secondary network interfaces but not a primary network interface, then you must add a primary network interface as a launch parameter when you launch an instance from the template.
28796
+ :param device_index: The device index for the network interface attachment. If the network interface is of type ``interface`` , you must specify a device index. If you create a launch template that includes secondary network interfaces but no primary network interface, and you specify it using the ``LaunchTemplate`` property of ``AWS::EC2::Instance`` , then you must include a primary network interface using the ``NetworkInterfaces`` property of ``AWS::EC2::Instance`` .
28718
28797
  :param ena_srd_specification: The ENA Express configuration for the network interface.
28719
28798
  :param groups: The IDs of one or more security groups.
28720
28799
  :param interface_type: The type of network interface. To create an Elastic Fabric Adapter (EFA), specify ``efa`` or ``efa`` . For more information, see `Elastic Fabric Adapter <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa.html>`_ in the *Amazon EC2 User Guide* . If you are not creating an EFA, specify ``interface`` or omit this parameter. If you specify ``efa-only`` , do not assign any IP addresses to the network interface. EFA-only network interfaces do not support IP addresses. Valid values: ``interface`` | ``efa`` | ``efa-only``
@@ -28915,7 +28994,9 @@ class CfnLaunchTemplate(
28915
28994
  def device_index(self) -> typing.Optional[jsii.Number]:
28916
28995
  '''The device index for the network interface attachment.
28917
28996
 
28918
- Each network interface requires a device index. If you create a launch template that includes secondary network interfaces but not a primary network interface, then you must add a primary network interface as a launch parameter when you launch an instance from the template.
28997
+ If the network interface is of type ``interface`` , you must specify a device index.
28998
+
28999
+ If you create a launch template that includes secondary network interfaces but no primary network interface, and you specify it using the ``LaunchTemplate`` property of ``AWS::EC2::Instance`` , then you must include a primary network interface using the ``NetworkInterfaces`` property of ``AWS::EC2::Instance`` .
28919
29000
 
28920
29001
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-deviceindex
28921
29002
  '''
@@ -63056,28 +63137,54 @@ class CfnVerifiedAccessEndpoint(
63056
63137
  from aws_cdk import aws_ec2 as ec2
63057
63138
 
63058
63139
  cfn_verified_access_endpoint = ec2.CfnVerifiedAccessEndpoint(self, "MyCfnVerifiedAccessEndpoint",
63059
- application_domain="applicationDomain",
63060
63140
  attachment_type="attachmentType",
63061
- domain_certificate_arn="domainCertificateArn",
63062
- endpoint_domain_prefix="endpointDomainPrefix",
63063
63141
  endpoint_type="endpointType",
63064
63142
  verified_access_group_id="verifiedAccessGroupId",
63065
63143
 
63066
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
+ ),
63067
63155
  description="description",
63156
+ domain_certificate_arn="domainCertificateArn",
63157
+ endpoint_domain_prefix="endpointDomainPrefix",
63068
63158
  load_balancer_options=ec2.CfnVerifiedAccessEndpoint.LoadBalancerOptionsProperty(
63069
63159
  load_balancer_arn="loadBalancerArn",
63070
63160
  port=123,
63161
+ port_ranges=[ec2.CfnVerifiedAccessEndpoint.PortRangeProperty(
63162
+ from_port=123,
63163
+ to_port=123
63164
+ )],
63071
63165
  protocol="protocol",
63072
63166
  subnet_ids=["subnetIds"]
63073
63167
  ),
63074
63168
  network_interface_options=ec2.CfnVerifiedAccessEndpoint.NetworkInterfaceOptionsProperty(
63075
63169
  network_interface_id="networkInterfaceId",
63076
63170
  port=123,
63171
+ port_ranges=[ec2.CfnVerifiedAccessEndpoint.PortRangeProperty(
63172
+ from_port=123,
63173
+ to_port=123
63174
+ )],
63077
63175
  protocol="protocol"
63078
63176
  ),
63079
63177
  policy_document="policyDocument",
63080
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
+ ),
63081
63188
  security_group_ids=["securityGroupIds"],
63082
63189
  sse_specification=ec2.CfnVerifiedAccessEndpoint.SseSpecificationProperty(
63083
63190
  customer_managed_key_enabled=False,
@@ -63095,17 +63202,19 @@ class CfnVerifiedAccessEndpoint(
63095
63202
  scope: _constructs_77d1e7e8.Construct,
63096
63203
  id: builtins.str,
63097
63204
  *,
63098
- application_domain: builtins.str,
63099
63205
  attachment_type: builtins.str,
63100
- domain_certificate_arn: builtins.str,
63101
- endpoint_domain_prefix: builtins.str,
63102
63206
  endpoint_type: builtins.str,
63103
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,
63104
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,
63105
63213
  load_balancer_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessEndpoint.LoadBalancerOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
63106
63214
  network_interface_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessEndpoint.NetworkInterfaceOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
63107
63215
  policy_document: typing.Optional[builtins.str] = None,
63108
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,
63109
63218
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
63110
63219
  sse_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessEndpoint.SseSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
63111
63220
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -63113,17 +63222,19 @@ class CfnVerifiedAccessEndpoint(
63113
63222
  '''
63114
63223
  :param scope: Scope in which this resource is defined.
63115
63224
  :param id: Construct identifier for this resource (unique in its scope).
63116
- :param application_domain: The DNS name for users to reach your application.
63117
63225
  :param attachment_type: The type of attachment used to provide connectivity between the AWS Verified Access endpoint and the application.
63118
- :param domain_certificate_arn: The ARN of a public TLS/SSL certificate imported into or created with ACM.
63119
- :param endpoint_domain_prefix: A custom identifier that is prepended to the DNS name that is generated for the endpoint.
63120
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.
63121
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.
63122
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.
63123
63233
  :param load_balancer_options: The load balancer details if creating the AWS Verified Access endpoint as ``load-balancer`` type.
63124
63234
  :param network_interface_options: The options for network-interface type endpoint.
63125
63235
  :param policy_document: The Verified Access policy document.
63126
63236
  :param policy_enabled: The status of the Verified Access policy.
63237
+ :param rds_options: The options for an RDS endpoint.
63127
63238
  :param security_group_ids: The IDs of the security groups for the endpoint.
63128
63239
  :param sse_specification: The options for additional server side encryption.
63129
63240
  :param tags: The tags.
@@ -63133,17 +63244,19 @@ class CfnVerifiedAccessEndpoint(
63133
63244
  check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
63134
63245
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
63135
63246
  props = CfnVerifiedAccessEndpointProps(
63136
- application_domain=application_domain,
63137
63247
  attachment_type=attachment_type,
63138
- domain_certificate_arn=domain_certificate_arn,
63139
- endpoint_domain_prefix=endpoint_domain_prefix,
63140
63248
  endpoint_type=endpoint_type,
63141
63249
  verified_access_group_id=verified_access_group_id,
63250
+ application_domain=application_domain,
63251
+ cidr_options=cidr_options,
63142
63252
  description=description,
63253
+ domain_certificate_arn=domain_certificate_arn,
63254
+ endpoint_domain_prefix=endpoint_domain_prefix,
63143
63255
  load_balancer_options=load_balancer_options,
63144
63256
  network_interface_options=network_interface_options,
63145
63257
  policy_document=policy_document,
63146
63258
  policy_enabled=policy_enabled,
63259
+ rds_options=rds_options,
63147
63260
  security_group_ids=security_group_ids,
63148
63261
  sse_specification=sse_specification,
63149
63262
  tags=tags,
@@ -63255,19 +63368,6 @@ class CfnVerifiedAccessEndpoint(
63255
63368
  '''Tag Manager which manages the tags for this resource.'''
63256
63369
  return typing.cast(_TagManager_0a598cb3, jsii.get(self, "tags"))
63257
63370
 
63258
- @builtins.property
63259
- @jsii.member(jsii_name="applicationDomain")
63260
- def application_domain(self) -> builtins.str:
63261
- '''The DNS name for users to reach your application.'''
63262
- return typing.cast(builtins.str, jsii.get(self, "applicationDomain"))
63263
-
63264
- @application_domain.setter
63265
- def application_domain(self, value: builtins.str) -> None:
63266
- if __debug__:
63267
- type_hints = typing.get_type_hints(_typecheckingstub__b28061f28b3f28be486d48f7dc7fd621f3103258eb9e7885ff475e46e5fd902b)
63268
- check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63269
- jsii.set(self, "applicationDomain", value) # pyright: ignore[reportArgumentType]
63270
-
63271
63371
  @builtins.property
63272
63372
  @jsii.member(jsii_name="attachmentType")
63273
63373
  def attachment_type(self) -> builtins.str:
@@ -63281,32 +63381,6 @@ class CfnVerifiedAccessEndpoint(
63281
63381
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63282
63382
  jsii.set(self, "attachmentType", value) # pyright: ignore[reportArgumentType]
63283
63383
 
63284
- @builtins.property
63285
- @jsii.member(jsii_name="domainCertificateArn")
63286
- def domain_certificate_arn(self) -> builtins.str:
63287
- '''The ARN of a public TLS/SSL certificate imported into or created with ACM.'''
63288
- return typing.cast(builtins.str, jsii.get(self, "domainCertificateArn"))
63289
-
63290
- @domain_certificate_arn.setter
63291
- def domain_certificate_arn(self, value: builtins.str) -> None:
63292
- if __debug__:
63293
- type_hints = typing.get_type_hints(_typecheckingstub__efc1ee2a591d8925ff2f8ca9eaba761d65c8b57e365164d2a86e578e910f175f)
63294
- check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63295
- jsii.set(self, "domainCertificateArn", value) # pyright: ignore[reportArgumentType]
63296
-
63297
- @builtins.property
63298
- @jsii.member(jsii_name="endpointDomainPrefix")
63299
- def endpoint_domain_prefix(self) -> builtins.str:
63300
- '''A custom identifier that is prepended to the DNS name that is generated for the endpoint.'''
63301
- return typing.cast(builtins.str, jsii.get(self, "endpointDomainPrefix"))
63302
-
63303
- @endpoint_domain_prefix.setter
63304
- def endpoint_domain_prefix(self, value: builtins.str) -> None:
63305
- if __debug__:
63306
- type_hints = typing.get_type_hints(_typecheckingstub__ff9d0e5773a8d9ea22993cc66220368ac095ea17382c558d7190b96a647f458f)
63307
- check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63308
- jsii.set(self, "endpointDomainPrefix", value) # pyright: ignore[reportArgumentType]
63309
-
63310
63384
  @builtins.property
63311
63385
  @jsii.member(jsii_name="endpointType")
63312
63386
  def endpoint_type(self) -> builtins.str:
@@ -63333,6 +63407,37 @@ class CfnVerifiedAccessEndpoint(
63333
63407
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63334
63408
  jsii.set(self, "verifiedAccessGroupId", value) # pyright: ignore[reportArgumentType]
63335
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
+
63336
63441
  @builtins.property
63337
63442
  @jsii.member(jsii_name="description")
63338
63443
  def description(self) -> typing.Optional[builtins.str]:
@@ -63346,6 +63451,32 @@ class CfnVerifiedAccessEndpoint(
63346
63451
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63347
63452
  jsii.set(self, "description", value) # pyright: ignore[reportArgumentType]
63348
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
+
63349
63480
  @builtins.property
63350
63481
  @jsii.member(jsii_name="loadBalancerOptions")
63351
63482
  def load_balancer_options(
@@ -63413,6 +63544,24 @@ class CfnVerifiedAccessEndpoint(
63413
63544
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63414
63545
  jsii.set(self, "policyEnabled", value) # pyright: ignore[reportArgumentType]
63415
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
+
63416
63565
  @builtins.property
63417
63566
  @jsii.member(jsii_name="securityGroupIds")
63418
63567
  def security_group_ids(self) -> typing.Optional[typing.List[builtins.str]]:
@@ -63460,12 +63609,123 @@ class CfnVerifiedAccessEndpoint(
63460
63609
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
63461
63610
  jsii.set(self, "tagsRaw", value) # pyright: ignore[reportArgumentType]
63462
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
+
63463
63722
  @jsii.data_type(
63464
63723
  jsii_type="aws-cdk-lib.aws_ec2.CfnVerifiedAccessEndpoint.LoadBalancerOptionsProperty",
63465
63724
  jsii_struct_bases=[],
63466
63725
  name_mapping={
63467
63726
  "load_balancer_arn": "loadBalancerArn",
63468
63727
  "port": "port",
63728
+ "port_ranges": "portRanges",
63469
63729
  "protocol": "protocol",
63470
63730
  "subnet_ids": "subnetIds",
63471
63731
  },
@@ -63476,6 +63736,7 @@ class CfnVerifiedAccessEndpoint(
63476
63736
  *,
63477
63737
  load_balancer_arn: typing.Optional[builtins.str] = None,
63478
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,
63479
63740
  protocol: typing.Optional[builtins.str] = None,
63480
63741
  subnet_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
63481
63742
  ) -> None:
@@ -63483,6 +63744,7 @@ class CfnVerifiedAccessEndpoint(
63483
63744
 
63484
63745
  :param load_balancer_arn: The ARN of the load balancer.
63485
63746
  :param port: The IP port number.
63747
+ :param port_ranges: The list of port range.
63486
63748
  :param protocol: The IP protocol.
63487
63749
  :param subnet_ids: The IDs of the subnets.
63488
63750
 
@@ -63498,6 +63760,10 @@ class CfnVerifiedAccessEndpoint(
63498
63760
  load_balancer_options_property = ec2.CfnVerifiedAccessEndpoint.LoadBalancerOptionsProperty(
63499
63761
  load_balancer_arn="loadBalancerArn",
63500
63762
  port=123,
63763
+ port_ranges=[ec2.CfnVerifiedAccessEndpoint.PortRangeProperty(
63764
+ from_port=123,
63765
+ to_port=123
63766
+ )],
63501
63767
  protocol="protocol",
63502
63768
  subnet_ids=["subnetIds"]
63503
63769
  )
@@ -63506,6 +63772,7 @@ class CfnVerifiedAccessEndpoint(
63506
63772
  type_hints = typing.get_type_hints(_typecheckingstub__748e5ad8bcd3de0f9d4460d24ba08621e5769f4aa625427a31af6f4cfad10c64)
63507
63773
  check_type(argname="argument load_balancer_arn", value=load_balancer_arn, expected_type=type_hints["load_balancer_arn"])
63508
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"])
63509
63776
  check_type(argname="argument protocol", value=protocol, expected_type=type_hints["protocol"])
63510
63777
  check_type(argname="argument subnet_ids", value=subnet_ids, expected_type=type_hints["subnet_ids"])
63511
63778
  self._values: typing.Dict[builtins.str, typing.Any] = {}
@@ -63513,6 +63780,8 @@ class CfnVerifiedAccessEndpoint(
63513
63780
  self._values["load_balancer_arn"] = load_balancer_arn
63514
63781
  if port is not None:
63515
63782
  self._values["port"] = port
63783
+ if port_ranges is not None:
63784
+ self._values["port_ranges"] = port_ranges
63516
63785
  if protocol is not None:
63517
63786
  self._values["protocol"] = protocol
63518
63787
  if subnet_ids is not None:
@@ -63536,6 +63805,17 @@ class CfnVerifiedAccessEndpoint(
63536
63805
  result = self._values.get("port")
63537
63806
  return typing.cast(typing.Optional[jsii.Number], result)
63538
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
+
63539
63819
  @builtins.property
63540
63820
  def protocol(self) -> typing.Optional[builtins.str]:
63541
63821
  '''The IP protocol.
@@ -63571,6 +63851,7 @@ class CfnVerifiedAccessEndpoint(
63571
63851
  name_mapping={
63572
63852
  "network_interface_id": "networkInterfaceId",
63573
63853
  "port": "port",
63854
+ "port_ranges": "portRanges",
63574
63855
  "protocol": "protocol",
63575
63856
  },
63576
63857
  )
@@ -63580,12 +63861,14 @@ class CfnVerifiedAccessEndpoint(
63580
63861
  *,
63581
63862
  network_interface_id: typing.Optional[builtins.str] = None,
63582
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,
63583
63865
  protocol: typing.Optional[builtins.str] = None,
63584
63866
  ) -> None:
63585
63867
  '''Describes the network interface options when creating an AWS Verified Access endpoint using the ``network-interface`` type.
63586
63868
 
63587
63869
  :param network_interface_id: The ID of the network interface.
63588
63870
  :param port: The IP port number.
63871
+ :param port_ranges: The list of port ranges.
63589
63872
  :param protocol: The IP protocol.
63590
63873
 
63591
63874
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-verifiedaccessendpoint-networkinterfaceoptions.html
@@ -63600,6 +63883,10 @@ class CfnVerifiedAccessEndpoint(
63600
63883
  network_interface_options_property = ec2.CfnVerifiedAccessEndpoint.NetworkInterfaceOptionsProperty(
63601
63884
  network_interface_id="networkInterfaceId",
63602
63885
  port=123,
63886
+ port_ranges=[ec2.CfnVerifiedAccessEndpoint.PortRangeProperty(
63887
+ from_port=123,
63888
+ to_port=123
63889
+ )],
63603
63890
  protocol="protocol"
63604
63891
  )
63605
63892
  '''
@@ -63607,12 +63894,15 @@ class CfnVerifiedAccessEndpoint(
63607
63894
  type_hints = typing.get_type_hints(_typecheckingstub__87a3b1db27ee0d26aa10f209574558cadfa966a187d72396dc2453f49f105d43)
63608
63895
  check_type(argname="argument network_interface_id", value=network_interface_id, expected_type=type_hints["network_interface_id"])
63609
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"])
63610
63898
  check_type(argname="argument protocol", value=protocol, expected_type=type_hints["protocol"])
63611
63899
  self._values: typing.Dict[builtins.str, typing.Any] = {}
63612
63900
  if network_interface_id is not None:
63613
63901
  self._values["network_interface_id"] = network_interface_id
63614
63902
  if port is not None:
63615
63903
  self._values["port"] = port
63904
+ if port_ranges is not None:
63905
+ self._values["port_ranges"] = port_ranges
63616
63906
  if protocol is not None:
63617
63907
  self._values["protocol"] = protocol
63618
63908
 
@@ -63634,6 +63924,17 @@ class CfnVerifiedAccessEndpoint(
63634
63924
  result = self._values.get("port")
63635
63925
  return typing.cast(typing.Optional[jsii.Number], result)
63636
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
+
63637
63938
  @builtins.property
63638
63939
  def protocol(self) -> typing.Optional[builtins.str]:
63639
63940
  '''The IP protocol.
@@ -63654,6 +63955,229 @@ class CfnVerifiedAccessEndpoint(
63654
63955
  k + "=" + repr(v) for k, v in self._values.items()
63655
63956
  )
63656
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
+
63657
64181
  @jsii.data_type(
63658
64182
  jsii_type="aws-cdk-lib.aws_ec2.CfnVerifiedAccessEndpoint.SseSpecificationProperty",
63659
64183
  jsii_struct_bases=[],
@@ -63738,17 +64262,19 @@ class CfnVerifiedAccessEndpoint(
63738
64262
  jsii_type="aws-cdk-lib.aws_ec2.CfnVerifiedAccessEndpointProps",
63739
64263
  jsii_struct_bases=[],
63740
64264
  name_mapping={
63741
- "application_domain": "applicationDomain",
63742
64265
  "attachment_type": "attachmentType",
63743
- "domain_certificate_arn": "domainCertificateArn",
63744
- "endpoint_domain_prefix": "endpointDomainPrefix",
63745
64266
  "endpoint_type": "endpointType",
63746
64267
  "verified_access_group_id": "verifiedAccessGroupId",
64268
+ "application_domain": "applicationDomain",
64269
+ "cidr_options": "cidrOptions",
63747
64270
  "description": "description",
64271
+ "domain_certificate_arn": "domainCertificateArn",
64272
+ "endpoint_domain_prefix": "endpointDomainPrefix",
63748
64273
  "load_balancer_options": "loadBalancerOptions",
63749
64274
  "network_interface_options": "networkInterfaceOptions",
63750
64275
  "policy_document": "policyDocument",
63751
64276
  "policy_enabled": "policyEnabled",
64277
+ "rds_options": "rdsOptions",
63752
64278
  "security_group_ids": "securityGroupIds",
63753
64279
  "sse_specification": "sseSpecification",
63754
64280
  "tags": "tags",
@@ -63758,34 +64284,38 @@ class CfnVerifiedAccessEndpointProps:
63758
64284
  def __init__(
63759
64285
  self,
63760
64286
  *,
63761
- application_domain: builtins.str,
63762
64287
  attachment_type: builtins.str,
63763
- domain_certificate_arn: builtins.str,
63764
- endpoint_domain_prefix: builtins.str,
63765
64288
  endpoint_type: builtins.str,
63766
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,
63767
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,
63768
64295
  load_balancer_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.LoadBalancerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
63769
64296
  network_interface_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.NetworkInterfaceOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
63770
64297
  policy_document: typing.Optional[builtins.str] = None,
63771
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,
63772
64300
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
63773
64301
  sse_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.SseSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
63774
64302
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
63775
64303
  ) -> None:
63776
64304
  '''Properties for defining a ``CfnVerifiedAccessEndpoint``.
63777
64305
 
63778
- :param application_domain: The DNS name for users to reach your application.
63779
64306
  :param attachment_type: The type of attachment used to provide connectivity between the AWS Verified Access endpoint and the application.
63780
- :param domain_certificate_arn: The ARN of a public TLS/SSL certificate imported into or created with ACM.
63781
- :param endpoint_domain_prefix: A custom identifier that is prepended to the DNS name that is generated for the endpoint.
63782
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.
63783
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.
63784
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.
63785
64314
  :param load_balancer_options: The load balancer details if creating the AWS Verified Access endpoint as ``load-balancer`` type.
63786
64315
  :param network_interface_options: The options for network-interface type endpoint.
63787
64316
  :param policy_document: The Verified Access policy document.
63788
64317
  :param policy_enabled: The status of the Verified Access policy.
64318
+ :param rds_options: The options for an RDS endpoint.
63789
64319
  :param security_group_ids: The IDs of the security groups for the endpoint.
63790
64320
  :param sse_specification: The options for additional server side encryption.
63791
64321
  :param tags: The tags.
@@ -63800,28 +64330,54 @@ class CfnVerifiedAccessEndpointProps:
63800
64330
  from aws_cdk import aws_ec2 as ec2
63801
64331
 
63802
64332
  cfn_verified_access_endpoint_props = ec2.CfnVerifiedAccessEndpointProps(
63803
- application_domain="applicationDomain",
63804
64333
  attachment_type="attachmentType",
63805
- domain_certificate_arn="domainCertificateArn",
63806
- endpoint_domain_prefix="endpointDomainPrefix",
63807
64334
  endpoint_type="endpointType",
63808
64335
  verified_access_group_id="verifiedAccessGroupId",
63809
64336
 
63810
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
+ ),
63811
64348
  description="description",
64349
+ domain_certificate_arn="domainCertificateArn",
64350
+ endpoint_domain_prefix="endpointDomainPrefix",
63812
64351
  load_balancer_options=ec2.CfnVerifiedAccessEndpoint.LoadBalancerOptionsProperty(
63813
64352
  load_balancer_arn="loadBalancerArn",
63814
64353
  port=123,
64354
+ port_ranges=[ec2.CfnVerifiedAccessEndpoint.PortRangeProperty(
64355
+ from_port=123,
64356
+ to_port=123
64357
+ )],
63815
64358
  protocol="protocol",
63816
64359
  subnet_ids=["subnetIds"]
63817
64360
  ),
63818
64361
  network_interface_options=ec2.CfnVerifiedAccessEndpoint.NetworkInterfaceOptionsProperty(
63819
64362
  network_interface_id="networkInterfaceId",
63820
64363
  port=123,
64364
+ port_ranges=[ec2.CfnVerifiedAccessEndpoint.PortRangeProperty(
64365
+ from_port=123,
64366
+ to_port=123
64367
+ )],
63821
64368
  protocol="protocol"
63822
64369
  ),
63823
64370
  policy_document="policyDocument",
63824
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
+ ),
63825
64381
  security_group_ids=["securityGroupIds"],
63826
64382
  sse_specification=ec2.CfnVerifiedAccessEndpoint.SseSpecificationProperty(
63827
64383
  customer_managed_key_enabled=False,
@@ -63835,30 +64391,37 @@ class CfnVerifiedAccessEndpointProps:
63835
64391
  '''
63836
64392
  if __debug__:
63837
64393
  type_hints = typing.get_type_hints(_typecheckingstub__a6b5fcbc7d5ca5da1405e117289abdd54dfab30dc79e867da0da32239d886ee5)
63838
- check_type(argname="argument application_domain", value=application_domain, expected_type=type_hints["application_domain"])
63839
64394
  check_type(argname="argument attachment_type", value=attachment_type, expected_type=type_hints["attachment_type"])
63840
- check_type(argname="argument domain_certificate_arn", value=domain_certificate_arn, expected_type=type_hints["domain_certificate_arn"])
63841
- check_type(argname="argument endpoint_domain_prefix", value=endpoint_domain_prefix, expected_type=type_hints["endpoint_domain_prefix"])
63842
64395
  check_type(argname="argument endpoint_type", value=endpoint_type, expected_type=type_hints["endpoint_type"])
63843
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"])
63844
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"])
63845
64402
  check_type(argname="argument load_balancer_options", value=load_balancer_options, expected_type=type_hints["load_balancer_options"])
63846
64403
  check_type(argname="argument network_interface_options", value=network_interface_options, expected_type=type_hints["network_interface_options"])
63847
64404
  check_type(argname="argument policy_document", value=policy_document, expected_type=type_hints["policy_document"])
63848
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"])
63849
64407
  check_type(argname="argument security_group_ids", value=security_group_ids, expected_type=type_hints["security_group_ids"])
63850
64408
  check_type(argname="argument sse_specification", value=sse_specification, expected_type=type_hints["sse_specification"])
63851
64409
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
63852
64410
  self._values: typing.Dict[builtins.str, typing.Any] = {
63853
- "application_domain": application_domain,
63854
64411
  "attachment_type": attachment_type,
63855
- "domain_certificate_arn": domain_certificate_arn,
63856
- "endpoint_domain_prefix": endpoint_domain_prefix,
63857
64412
  "endpoint_type": endpoint_type,
63858
64413
  "verified_access_group_id": verified_access_group_id,
63859
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
63860
64419
  if description is not None:
63861
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
63862
64425
  if load_balancer_options is not None:
63863
64426
  self._values["load_balancer_options"] = load_balancer_options
63864
64427
  if network_interface_options is not None:
@@ -63867,6 +64430,8 @@ class CfnVerifiedAccessEndpointProps:
63867
64430
  self._values["policy_document"] = policy_document
63868
64431
  if policy_enabled is not None:
63869
64432
  self._values["policy_enabled"] = policy_enabled
64433
+ if rds_options is not None:
64434
+ self._values["rds_options"] = rds_options
63870
64435
  if security_group_ids is not None:
63871
64436
  self._values["security_group_ids"] = security_group_ids
63872
64437
  if sse_specification is not None:
@@ -63874,16 +64439,6 @@ class CfnVerifiedAccessEndpointProps:
63874
64439
  if tags is not None:
63875
64440
  self._values["tags"] = tags
63876
64441
 
63877
- @builtins.property
63878
- def application_domain(self) -> builtins.str:
63879
- '''The DNS name for users to reach your application.
63880
-
63881
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessendpoint.html#cfn-ec2-verifiedaccessendpoint-applicationdomain
63882
- '''
63883
- result = self._values.get("application_domain")
63884
- assert result is not None, "Required property 'application_domain' is missing"
63885
- return typing.cast(builtins.str, result)
63886
-
63887
64442
  @builtins.property
63888
64443
  def attachment_type(self) -> builtins.str:
63889
64444
  '''The type of attachment used to provide connectivity between the AWS Verified Access endpoint and the application.
@@ -63894,26 +64449,6 @@ class CfnVerifiedAccessEndpointProps:
63894
64449
  assert result is not None, "Required property 'attachment_type' is missing"
63895
64450
  return typing.cast(builtins.str, result)
63896
64451
 
63897
- @builtins.property
63898
- def domain_certificate_arn(self) -> builtins.str:
63899
- '''The ARN of a public TLS/SSL certificate imported into or created with ACM.
63900
-
63901
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessendpoint.html#cfn-ec2-verifiedaccessendpoint-domaincertificatearn
63902
- '''
63903
- result = self._values.get("domain_certificate_arn")
63904
- assert result is not None, "Required property 'domain_certificate_arn' is missing"
63905
- return typing.cast(builtins.str, result)
63906
-
63907
- @builtins.property
63908
- def endpoint_domain_prefix(self) -> builtins.str:
63909
- '''A custom identifier that is prepended to the DNS name that is generated for the endpoint.
63910
-
63911
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessendpoint.html#cfn-ec2-verifiedaccessendpoint-endpointdomainprefix
63912
- '''
63913
- result = self._values.get("endpoint_domain_prefix")
63914
- assert result is not None, "Required property 'endpoint_domain_prefix' is missing"
63915
- return typing.cast(builtins.str, result)
63916
-
63917
64452
  @builtins.property
63918
64453
  def endpoint_type(self) -> builtins.str:
63919
64454
  '''The type of AWS Verified Access endpoint.
@@ -63936,6 +64471,26 @@ class CfnVerifiedAccessEndpointProps:
63936
64471
  assert result is not None, "Required property 'verified_access_group_id' is missing"
63937
64472
  return typing.cast(builtins.str, result)
63938
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
+
63939
64494
  @builtins.property
63940
64495
  def description(self) -> typing.Optional[builtins.str]:
63941
64496
  '''A description for the AWS Verified Access endpoint.
@@ -63945,6 +64500,24 @@ class CfnVerifiedAccessEndpointProps:
63945
64500
  result = self._values.get("description")
63946
64501
  return typing.cast(typing.Optional[builtins.str], result)
63947
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
+
63948
64521
  @builtins.property
63949
64522
  def load_balancer_options(
63950
64523
  self,
@@ -63987,6 +64560,17 @@ class CfnVerifiedAccessEndpointProps:
63987
64560
  result = self._values.get("policy_enabled")
63988
64561
  return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
63989
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
+
63990
64574
  @builtins.property
63991
64575
  def security_group_ids(self) -> typing.Optional[typing.List[builtins.str]]:
63992
64576
  '''The IDs of the security groups for the endpoint.
@@ -64527,6 +65111,7 @@ class CfnVerifiedAccessInstance(
64527
65111
  from aws_cdk import aws_ec2 as ec2
64528
65112
 
64529
65113
  cfn_verified_access_instance = ec2.CfnVerifiedAccessInstance(self, "MyCfnVerifiedAccessInstance",
65114
+ cidr_endpoints_custom_sub_domain="cidrEndpointsCustomSubDomain",
64530
65115
  description="description",
64531
65116
  fips_enabled=False,
64532
65117
  logging_configurations=ec2.CfnVerifiedAccessInstance.VerifiedAccessLogsProperty(
@@ -64567,6 +65152,7 @@ class CfnVerifiedAccessInstance(
64567
65152
  scope: _constructs_77d1e7e8.Construct,
64568
65153
  id: builtins.str,
64569
65154
  *,
65155
+ cidr_endpoints_custom_sub_domain: typing.Optional[builtins.str] = None,
64570
65156
  description: typing.Optional[builtins.str] = None,
64571
65157
  fips_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
64572
65158
  logging_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessInstance.VerifiedAccessLogsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -64577,6 +65163,7 @@ class CfnVerifiedAccessInstance(
64577
65163
  '''
64578
65164
  :param scope: Scope in which this resource is defined.
64579
65165
  :param id: Construct identifier for this resource (unique in its scope).
65166
+ :param cidr_endpoints_custom_sub_domain: The custom subdomain.
64580
65167
  :param description: A description for the AWS Verified Access instance.
64581
65168
  :param fips_enabled: Indicates whether support for Federal Information Processing Standards (FIPS) is enabled on the instance.
64582
65169
  :param logging_configurations: The logging configuration for the Verified Access instances.
@@ -64589,6 +65176,7 @@ class CfnVerifiedAccessInstance(
64589
65176
  check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
64590
65177
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
64591
65178
  props = CfnVerifiedAccessInstanceProps(
65179
+ cidr_endpoints_custom_sub_domain=cidr_endpoints_custom_sub_domain,
64592
65180
  description=description,
64593
65181
  fips_enabled=fips_enabled,
64594
65182
  logging_configurations=logging_configurations,
@@ -64629,6 +65217,17 @@ class CfnVerifiedAccessInstance(
64629
65217
  '''The CloudFormation resource type name for this resource class.'''
64630
65218
  return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
64631
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
+
64632
65231
  @builtins.property
64633
65232
  @jsii.member(jsii_name="attrCreationTime")
64634
65233
  def attr_creation_time(self) -> builtins.str:
@@ -64667,6 +65266,22 @@ class CfnVerifiedAccessInstance(
64667
65266
  '''Tag Manager which manages the tags for this resource.'''
64668
65267
  return typing.cast(_TagManager_0a598cb3, jsii.get(self, "tags"))
64669
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
+
64670
65285
  @builtins.property
64671
65286
  @jsii.member(jsii_name="description")
64672
65287
  def description(self) -> typing.Optional[builtins.str]:
@@ -65286,6 +65901,7 @@ class CfnVerifiedAccessInstance(
65286
65901
  jsii_type="aws-cdk-lib.aws_ec2.CfnVerifiedAccessInstanceProps",
65287
65902
  jsii_struct_bases=[],
65288
65903
  name_mapping={
65904
+ "cidr_endpoints_custom_sub_domain": "cidrEndpointsCustomSubDomain",
65289
65905
  "description": "description",
65290
65906
  "fips_enabled": "fipsEnabled",
65291
65907
  "logging_configurations": "loggingConfigurations",
@@ -65298,6 +65914,7 @@ class CfnVerifiedAccessInstanceProps:
65298
65914
  def __init__(
65299
65915
  self,
65300
65916
  *,
65917
+ cidr_endpoints_custom_sub_domain: typing.Optional[builtins.str] = None,
65301
65918
  description: typing.Optional[builtins.str] = None,
65302
65919
  fips_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
65303
65920
  logging_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessInstance.VerifiedAccessLogsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -65307,6 +65924,7 @@ class CfnVerifiedAccessInstanceProps:
65307
65924
  ) -> None:
65308
65925
  '''Properties for defining a ``CfnVerifiedAccessInstance``.
65309
65926
 
65927
+ :param cidr_endpoints_custom_sub_domain: The custom subdomain.
65310
65928
  :param description: A description for the AWS Verified Access instance.
65311
65929
  :param fips_enabled: Indicates whether support for Federal Information Processing Standards (FIPS) is enabled on the instance.
65312
65930
  :param logging_configurations: The logging configuration for the Verified Access instances.
@@ -65324,6 +65942,7 @@ class CfnVerifiedAccessInstanceProps:
65324
65942
  from aws_cdk import aws_ec2 as ec2
65325
65943
 
65326
65944
  cfn_verified_access_instance_props = ec2.CfnVerifiedAccessInstanceProps(
65945
+ cidr_endpoints_custom_sub_domain="cidrEndpointsCustomSubDomain",
65327
65946
  description="description",
65328
65947
  fips_enabled=False,
65329
65948
  logging_configurations=ec2.CfnVerifiedAccessInstance.VerifiedAccessLogsProperty(
@@ -65360,6 +65979,7 @@ class CfnVerifiedAccessInstanceProps:
65360
65979
  '''
65361
65980
  if __debug__:
65362
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"])
65363
65983
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
65364
65984
  check_type(argname="argument fips_enabled", value=fips_enabled, expected_type=type_hints["fips_enabled"])
65365
65985
  check_type(argname="argument logging_configurations", value=logging_configurations, expected_type=type_hints["logging_configurations"])
@@ -65367,6 +65987,8 @@ class CfnVerifiedAccessInstanceProps:
65367
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"])
65368
65988
  check_type(argname="argument verified_access_trust_providers", value=verified_access_trust_providers, expected_type=type_hints["verified_access_trust_providers"])
65369
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
65370
65992
  if description is not None:
65371
65993
  self._values["description"] = description
65372
65994
  if fips_enabled is not None:
@@ -65380,6 +66002,15 @@ class CfnVerifiedAccessInstanceProps:
65380
66002
  if verified_access_trust_providers is not None:
65381
66003
  self._values["verified_access_trust_providers"] = verified_access_trust_providers
65382
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
+
65383
66014
  @builtins.property
65384
66015
  def description(self) -> typing.Optional[builtins.str]:
65385
66016
  '''A description for the AWS Verified Access instance.
@@ -65485,6 +66116,16 @@ class CfnVerifiedAccessTrustProvider(
65485
66116
  tenant_id="tenantId"
65486
66117
  ),
65487
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
+ ),
65488
66129
  oidc_options=ec2.CfnVerifiedAccessTrustProvider.OidcOptionsProperty(
65489
66130
  authorization_endpoint="authorizationEndpoint",
65490
66131
  client_id="clientId",
@@ -65516,6 +66157,7 @@ class CfnVerifiedAccessTrustProvider(
65516
66157
  description: typing.Optional[builtins.str] = None,
65517
66158
  device_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessTrustProvider.DeviceOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
65518
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,
65519
66161
  oidc_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessTrustProvider.OidcOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
65520
66162
  sse_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnVerifiedAccessTrustProvider.SseSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
65521
66163
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -65529,6 +66171,7 @@ class CfnVerifiedAccessTrustProvider(
65529
66171
  :param description: A description for the AWS Verified Access trust provider.
65530
66172
  :param device_options: The options for device-identity trust provider.
65531
66173
  :param device_trust_provider_type: The type of device-based trust provider.
66174
+ :param native_application_oidc_options: The OpenID Connect (OIDC) options.
65532
66175
  :param oidc_options: The options for an OpenID Connect-compatible user-identity trust provider.
65533
66176
  :param sse_specification: The options for additional server side encryption.
65534
66177
  :param tags: The tags.
@@ -65544,6 +66187,7 @@ class CfnVerifiedAccessTrustProvider(
65544
66187
  description=description,
65545
66188
  device_options=device_options,
65546
66189
  device_trust_provider_type=device_trust_provider_type,
66190
+ native_application_oidc_options=native_application_oidc_options,
65547
66191
  oidc_options=oidc_options,
65548
66192
  sse_specification=sse_specification,
65549
66193
  tags=tags,
@@ -65690,6 +66334,24 @@ class CfnVerifiedAccessTrustProvider(
65690
66334
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
65691
66335
  jsii.set(self, "deviceTrustProviderType", value) # pyright: ignore[reportArgumentType]
65692
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
+
65693
66355
  @builtins.property
65694
66356
  @jsii.member(jsii_name="oidcOptions")
65695
66357
  def oidc_options(
@@ -65825,6 +66487,175 @@ class CfnVerifiedAccessTrustProvider(
65825
66487
  k + "=" + repr(v) for k, v in self._values.items()
65826
66488
  )
65827
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
+
65828
66659
  @jsii.data_type(
65829
66660
  jsii_type="aws-cdk-lib.aws_ec2.CfnVerifiedAccessTrustProvider.OidcOptionsProperty",
65830
66661
  jsii_struct_bases=[],
@@ -66067,6 +66898,7 @@ class CfnVerifiedAccessTrustProvider(
66067
66898
  "description": "description",
66068
66899
  "device_options": "deviceOptions",
66069
66900
  "device_trust_provider_type": "deviceTrustProviderType",
66901
+ "native_application_oidc_options": "nativeApplicationOidcOptions",
66070
66902
  "oidc_options": "oidcOptions",
66071
66903
  "sse_specification": "sseSpecification",
66072
66904
  "tags": "tags",
@@ -66082,6 +66914,7 @@ class CfnVerifiedAccessTrustProviderProps:
66082
66914
  description: typing.Optional[builtins.str] = None,
66083
66915
  device_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.DeviceOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
66084
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,
66085
66918
  oidc_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.OidcOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
66086
66919
  sse_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.SseSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
66087
66920
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -66094,6 +66927,7 @@ class CfnVerifiedAccessTrustProviderProps:
66094
66927
  :param description: A description for the AWS Verified Access trust provider.
66095
66928
  :param device_options: The options for device-identity trust provider.
66096
66929
  :param device_trust_provider_type: The type of device-based trust provider.
66930
+ :param native_application_oidc_options: The OpenID Connect (OIDC) options.
66097
66931
  :param oidc_options: The options for an OpenID Connect-compatible user-identity trust provider.
66098
66932
  :param sse_specification: The options for additional server side encryption.
66099
66933
  :param tags: The tags.
@@ -66119,6 +66953,16 @@ class CfnVerifiedAccessTrustProviderProps:
66119
66953
  tenant_id="tenantId"
66120
66954
  ),
66121
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
+ ),
66122
66966
  oidc_options=ec2.CfnVerifiedAccessTrustProvider.OidcOptionsProperty(
66123
66967
  authorization_endpoint="authorizationEndpoint",
66124
66968
  client_id="clientId",
@@ -66146,6 +66990,7 @@ class CfnVerifiedAccessTrustProviderProps:
66146
66990
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
66147
66991
  check_type(argname="argument device_options", value=device_options, expected_type=type_hints["device_options"])
66148
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"])
66149
66994
  check_type(argname="argument oidc_options", value=oidc_options, expected_type=type_hints["oidc_options"])
66150
66995
  check_type(argname="argument sse_specification", value=sse_specification, expected_type=type_hints["sse_specification"])
66151
66996
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
@@ -66160,6 +67005,8 @@ class CfnVerifiedAccessTrustProviderProps:
66160
67005
  self._values["device_options"] = device_options
66161
67006
  if device_trust_provider_type is not None:
66162
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
66163
67010
  if oidc_options is not None:
66164
67011
  self._values["oidc_options"] = oidc_options
66165
67012
  if sse_specification is not None:
@@ -66218,6 +67065,17 @@ class CfnVerifiedAccessTrustProviderProps:
66218
67065
  result = self._values.get("device_trust_provider_type")
66219
67066
  return typing.cast(typing.Optional[builtins.str], result)
66220
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
+
66221
67079
  @builtins.property
66222
67080
  def oidc_options(
66223
67081
  self,
@@ -78827,6 +79685,11 @@ class InterfaceVpcEndpointAwsService(
78827
79685
  def KAFKA(cls) -> "InterfaceVpcEndpointAwsService":
78828
79686
  return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "KAFKA"))
78829
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
+
78830
79693
  @jsii.python.classproperty
78831
79694
  @jsii.member(jsii_name="KAFKA_FIPS")
78832
79695
  def KAFKA_FIPS(cls) -> "InterfaceVpcEndpointAwsService":
@@ -98254,7 +99117,7 @@ class ClientVpnEndpoint(
98254
99117
  metaclass=jsii.JSIIMeta,
98255
99118
  jsii_type="aws-cdk-lib.aws_ec2.ClientVpnEndpoint",
98256
99119
  ):
98257
- '''A client VPN connnection.
99120
+ '''A client VPN connection.
98258
99121
 
98259
99122
  :exampleMetadata: fixture=client-vpn infused
98260
99123
 
@@ -99311,10 +100174,11 @@ def _typecheckingstub__96fb3bc559aaa9df971e86ea7cdd3cdc3de550019a2d3bf247d3fb169
99311
100174
  scope: _constructs_77d1e7e8.Construct,
99312
100175
  id: builtins.str,
99313
100176
  *,
99314
- availability_zone: builtins.str,
99315
100177
  instance_count: jsii.Number,
99316
100178
  instance_platform: builtins.str,
99317
100179
  instance_type: builtins.str,
100180
+ availability_zone: typing.Optional[builtins.str] = None,
100181
+ availability_zone_id: typing.Optional[builtins.str] = None,
99318
100182
  ebs_optimized: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
99319
100183
  end_date: typing.Optional[builtins.str] = None,
99320
100184
  end_date_type: typing.Optional[builtins.str] = None,
@@ -99322,7 +100186,7 @@ def _typecheckingstub__96fb3bc559aaa9df971e86ea7cdd3cdc3de550019a2d3bf247d3fb169
99322
100186
  instance_match_criteria: typing.Optional[builtins.str] = None,
99323
100187
  out_post_arn: typing.Optional[builtins.str] = None,
99324
100188
  placement_group_arn: typing.Optional[builtins.str] = None,
99325
- 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,
99326
100190
  tenancy: typing.Optional[builtins.str] = None,
99327
100191
  unused_reservation_billing_owner_id: typing.Optional[builtins.str] = None,
99328
100192
  ) -> None:
@@ -99341,12 +100205,6 @@ def _typecheckingstub__4b837e3858811127cec4a1a49ef5fbc9c4920b9ca228950a0e8797ab4
99341
100205
  """Type checking stubs"""
99342
100206
  pass
99343
100207
 
99344
- def _typecheckingstub__c78e4680a157e3466009de77e8aa625d8cf7fee8e6f0094ed98d312434e17d0f(
99345
- value: builtins.str,
99346
- ) -> None:
99347
- """Type checking stubs"""
99348
- pass
99349
-
99350
100208
  def _typecheckingstub__22b368a04915e99dd5744c69aee4e5f18ce694f374f86d57efdd11669b182094(
99351
100209
  value: jsii.Number,
99352
100210
  ) -> None:
@@ -99365,6 +100223,18 @@ def _typecheckingstub__77123d0c19c0832f7509cd76b26aa9299b7596606999f89281b470a4f
99365
100223
  """Type checking stubs"""
99366
100224
  pass
99367
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
+
99368
100238
  def _typecheckingstub__678dbc8559016cf13cc067fc0b1a2efbca67b43c58a19ad6cb861f9f92eaffde(
99369
100239
  value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
99370
100240
  ) -> None:
@@ -99408,7 +100278,7 @@ def _typecheckingstub__16fa52eb55faf78ebc17e0e8d27a241715110e3c4255fe91c5b59c36a
99408
100278
  pass
99409
100279
 
99410
100280
  def _typecheckingstub__d2d4ed674b30189cbf7b11b79e68ea556b2b7c9921a4d61f7610b58d25fed8ca(
99411
- value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnCapacityReservation.TagSpecificationProperty]]]],
100281
+ value: typing.Optional[typing.List[CfnCapacityReservation.TagSpecificationProperty]],
99412
100282
  ) -> None:
99413
100283
  """Type checking stubs"""
99414
100284
  pass
@@ -99554,10 +100424,11 @@ def _typecheckingstub__43bd0a52cfe7402bf156151a3e760ed1bd133935bd29982a3798f854c
99554
100424
 
99555
100425
  def _typecheckingstub__8a65d4e8bb2e678a9a6387fd809c3b5428c783211224ece5155ec92d1eda301d(
99556
100426
  *,
99557
- availability_zone: builtins.str,
99558
100427
  instance_count: jsii.Number,
99559
100428
  instance_platform: builtins.str,
99560
100429
  instance_type: builtins.str,
100430
+ availability_zone: typing.Optional[builtins.str] = None,
100431
+ availability_zone_id: typing.Optional[builtins.str] = None,
99561
100432
  ebs_optimized: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
99562
100433
  end_date: typing.Optional[builtins.str] = None,
99563
100434
  end_date_type: typing.Optional[builtins.str] = None,
@@ -99565,7 +100436,7 @@ def _typecheckingstub__8a65d4e8bb2e678a9a6387fd809c3b5428c783211224ece5155ec92d1
99565
100436
  instance_match_criteria: typing.Optional[builtins.str] = None,
99566
100437
  out_post_arn: typing.Optional[builtins.str] = None,
99567
100438
  placement_group_arn: typing.Optional[builtins.str] = None,
99568
- 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,
99569
100440
  tenancy: typing.Optional[builtins.str] = None,
99570
100441
  unused_reservation_billing_owner_id: typing.Optional[builtins.str] = None,
99571
100442
  ) -> None:
@@ -99691,6 +100562,7 @@ def _typecheckingstub__1880bffa9253aaedfa6af6175da6262a96ea34dadf82dc678a1eef91c
99691
100562
  client_connect_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientConnectOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
99692
100563
  client_login_banner_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientLoginBannerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
99693
100564
  description: typing.Optional[builtins.str] = None,
100565
+ disconnect_on_session_timeout: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
99694
100566
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
99695
100567
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
99696
100568
  self_service_portal: typing.Optional[builtins.str] = None,
@@ -99758,6 +100630,12 @@ def _typecheckingstub__bb1d5fb0102c1b6de24ad13acfc13837ec5422291e23048395fe03350
99758
100630
  """Type checking stubs"""
99759
100631
  pass
99760
100632
 
100633
+ def _typecheckingstub__7a04e648e3ab2786626daca4bea9d7e5d9f8fd502183ea90643aafd9a31a5f2c(
100634
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
100635
+ ) -> None:
100636
+ """Type checking stubs"""
100637
+ pass
100638
+
99761
100639
  def _typecheckingstub__1ebcac79eb30395bbcc38271559390a74d75a7ae45dfe368c2cd3b996b81b462(
99762
100640
  value: typing.Optional[typing.List[builtins.str]],
99763
100641
  ) -> None:
@@ -99886,6 +100764,7 @@ def _typecheckingstub__05994467e800c33b4a01e884b4b20bef2569d710f5dc323617cd814e5
99886
100764
  client_connect_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientConnectOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
99887
100765
  client_login_banner_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientLoginBannerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
99888
100766
  description: typing.Optional[builtins.str] = None,
100767
+ disconnect_on_session_timeout: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
99889
100768
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
99890
100769
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
99891
100770
  self_service_portal: typing.Optional[builtins.str] = None,
@@ -107738,17 +108617,19 @@ def _typecheckingstub__4d36b12d1ab3c67a3dfcd9bfed6cbbcb2f1267d23c43d3209213bf009
107738
108617
  scope: _constructs_77d1e7e8.Construct,
107739
108618
  id: builtins.str,
107740
108619
  *,
107741
- application_domain: builtins.str,
107742
108620
  attachment_type: builtins.str,
107743
- domain_certificate_arn: builtins.str,
107744
- endpoint_domain_prefix: builtins.str,
107745
108621
  endpoint_type: builtins.str,
107746
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,
107747
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,
107748
108628
  load_balancer_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.LoadBalancerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
107749
108629
  network_interface_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.NetworkInterfaceOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
107750
108630
  policy_document: typing.Optional[builtins.str] = None,
107751
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,
107752
108633
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
107753
108634
  sse_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.SseSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
107754
108635
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -107768,43 +108649,49 @@ def _typecheckingstub__bc2a2c5e187d55f32f86bed24144fa2c14723e28c2c028062d6941f44
107768
108649
  """Type checking stubs"""
107769
108650
  pass
107770
108651
 
107771
- def _typecheckingstub__b28061f28b3f28be486d48f7dc7fd621f3103258eb9e7885ff475e46e5fd902b(
108652
+ def _typecheckingstub__1d10e167e554b430eb1ac5650dc7e833d44fb08c080f0db7bddc1e8a7fc72cb1(
107772
108653
  value: builtins.str,
107773
108654
  ) -> None:
107774
108655
  """Type checking stubs"""
107775
108656
  pass
107776
108657
 
107777
- def _typecheckingstub__1d10e167e554b430eb1ac5650dc7e833d44fb08c080f0db7bddc1e8a7fc72cb1(
108658
+ def _typecheckingstub__e1c912930012351cff79ab0fb5325f42f80c3484801d0cbe19a20d7a19cd8f3a(
107778
108659
  value: builtins.str,
107779
108660
  ) -> None:
107780
108661
  """Type checking stubs"""
107781
108662
  pass
107782
108663
 
107783
- def _typecheckingstub__efc1ee2a591d8925ff2f8ca9eaba761d65c8b57e365164d2a86e578e910f175f(
108664
+ def _typecheckingstub__89c39e6200e18904b3557bcd57dab1d8a26e87af526f5462ad34ddbffada9d08(
107784
108665
  value: builtins.str,
107785
108666
  ) -> None:
107786
108667
  """Type checking stubs"""
107787
108668
  pass
107788
108669
 
107789
- def _typecheckingstub__ff9d0e5773a8d9ea22993cc66220368ac095ea17382c558d7190b96a647f458f(
107790
- value: builtins.str,
108670
+ def _typecheckingstub__b28061f28b3f28be486d48f7dc7fd621f3103258eb9e7885ff475e46e5fd902b(
108671
+ value: typing.Optional[builtins.str],
107791
108672
  ) -> None:
107792
108673
  """Type checking stubs"""
107793
108674
  pass
107794
108675
 
107795
- def _typecheckingstub__e1c912930012351cff79ab0fb5325f42f80c3484801d0cbe19a20d7a19cd8f3a(
107796
- value: builtins.str,
108676
+ def _typecheckingstub__2962dac3960398d69fb7ac9839727efce1ad5405f068e725a9f41e9e8c48552a(
108677
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnVerifiedAccessEndpoint.CidrOptionsProperty]],
107797
108678
  ) -> None:
107798
108679
  """Type checking stubs"""
107799
108680
  pass
107800
108681
 
107801
- def _typecheckingstub__89c39e6200e18904b3557bcd57dab1d8a26e87af526f5462ad34ddbffada9d08(
107802
- value: builtins.str,
108682
+ def _typecheckingstub__d4d12173aa39d537b02fbd1df1f0478890f6c89c75db9f7940f5afee0f771734(
108683
+ value: typing.Optional[builtins.str],
107803
108684
  ) -> None:
107804
108685
  """Type checking stubs"""
107805
108686
  pass
107806
108687
 
107807
- 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(
107808
108695
  value: typing.Optional[builtins.str],
107809
108696
  ) -> None:
107810
108697
  """Type checking stubs"""
@@ -107834,6 +108721,12 @@ def _typecheckingstub__d544f882cc7fa74d192a81ca201822cd80d9f91a6c0680be92961c818
107834
108721
  """Type checking stubs"""
107835
108722
  pass
107836
108723
 
108724
+ def _typecheckingstub__a912f808eff9a847eb56334d2df19bc7f437ffc6f1b217c0836ef2f6397dfd6c(
108725
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnVerifiedAccessEndpoint.RdsOptionsProperty]],
108726
+ ) -> None:
108727
+ """Type checking stubs"""
108728
+ pass
108729
+
107837
108730
  def _typecheckingstub__102770719c6031007d664c25a6414989d2e114f24811888a51575fc6a9fbbea8(
107838
108731
  value: typing.Optional[typing.List[builtins.str]],
107839
108732
  ) -> None:
@@ -107852,10 +108745,21 @@ def _typecheckingstub__b3d819c87bb8f385fc1e857a7fa5b0c4d1892fee609cc4cc3aa402645
107852
108745
  """Type checking stubs"""
107853
108746
  pass
107854
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
+
107855
108758
  def _typecheckingstub__748e5ad8bcd3de0f9d4460d24ba08621e5769f4aa625427a31af6f4cfad10c64(
107856
108759
  *,
107857
108760
  load_balancer_arn: typing.Optional[builtins.str] = None,
107858
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,
107859
108763
  protocol: typing.Optional[builtins.str] = None,
107860
108764
  subnet_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
107861
108765
  ) -> None:
@@ -107866,11 +108770,33 @@ def _typecheckingstub__87a3b1db27ee0d26aa10f209574558cadfa966a187d72396dc2453f49
107866
108770
  *,
107867
108771
  network_interface_id: typing.Optional[builtins.str] = None,
107868
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,
107869
108774
  protocol: typing.Optional[builtins.str] = None,
107870
108775
  ) -> None:
107871
108776
  """Type checking stubs"""
107872
108777
  pass
107873
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
+
107874
108800
  def _typecheckingstub__02c635a2da8a4b8f86f38bec4cdb7864386d5f2c0ddad83ce923502ececa7167(
107875
108801
  *,
107876
108802
  customer_managed_key_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
@@ -107881,17 +108807,19 @@ def _typecheckingstub__02c635a2da8a4b8f86f38bec4cdb7864386d5f2c0ddad83ce923502ec
107881
108807
 
107882
108808
  def _typecheckingstub__a6b5fcbc7d5ca5da1405e117289abdd54dfab30dc79e867da0da32239d886ee5(
107883
108809
  *,
107884
- application_domain: builtins.str,
107885
108810
  attachment_type: builtins.str,
107886
- domain_certificate_arn: builtins.str,
107887
- endpoint_domain_prefix: builtins.str,
107888
108811
  endpoint_type: builtins.str,
107889
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,
107890
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,
107891
108818
  load_balancer_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.LoadBalancerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
107892
108819
  network_interface_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.NetworkInterfaceOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
107893
108820
  policy_document: typing.Optional[builtins.str] = None,
107894
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,
107895
108823
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
107896
108824
  sse_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessEndpoint.SseSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
107897
108825
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -107985,6 +108913,7 @@ def _typecheckingstub__210b67953502d567079f8663990436a4ba8d53414d251da116ccd8eac
107985
108913
  scope: _constructs_77d1e7e8.Construct,
107986
108914
  id: builtins.str,
107987
108915
  *,
108916
+ cidr_endpoints_custom_sub_domain: typing.Optional[builtins.str] = None,
107988
108917
  description: typing.Optional[builtins.str] = None,
107989
108918
  fips_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
107990
108919
  logging_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessInstance.VerifiedAccessLogsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -108007,6 +108936,12 @@ def _typecheckingstub__0310f5df079f4d94843fdb4879da8562ae3108d66ec4cd10201c900af
108007
108936
  """Type checking stubs"""
108008
108937
  pass
108009
108938
 
108939
+ def _typecheckingstub__3448e803dabba9774e7b7492ef1b28e3424db8c132d0424e38e9c949f6517948(
108940
+ value: typing.Optional[builtins.str],
108941
+ ) -> None:
108942
+ """Type checking stubs"""
108943
+ pass
108944
+
108010
108945
  def _typecheckingstub__0ba3dd03cf8f2db417bb16a3849e48282d3bd41790a0db527717302f3459305f(
108011
108946
  value: typing.Optional[builtins.str],
108012
108947
  ) -> None:
@@ -108093,6 +109028,7 @@ def _typecheckingstub__aa1b1a9d00743fb82589cb1d8f7514bfaa414568bff92a69bc361d830
108093
109028
 
108094
109029
  def _typecheckingstub__d9a24ec455946fcefd05480c5a9ec8b48ab899be4d2ad63a1acb976abdf7df46(
108095
109030
  *,
109031
+ cidr_endpoints_custom_sub_domain: typing.Optional[builtins.str] = None,
108096
109032
  description: typing.Optional[builtins.str] = None,
108097
109033
  fips_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
108098
109034
  logging_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessInstance.VerifiedAccessLogsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -108112,6 +109048,7 @@ def _typecheckingstub__e7fe983b5e05e5227bb52a4924627b4c6164af2055ac21783dbe757c2
108112
109048
  description: typing.Optional[builtins.str] = None,
108113
109049
  device_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.DeviceOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
108114
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,
108115
109052
  oidc_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.OidcOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
108116
109053
  sse_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.SseSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
108117
109054
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -108162,6 +109099,12 @@ def _typecheckingstub__86233e326be8a89b76683cacdc12855026065941b80a6573d40ec5ed9
108162
109099
  """Type checking stubs"""
108163
109100
  pass
108164
109101
 
109102
+ def _typecheckingstub__a19babfcaf12861d8da4710896c25acd65a9ceb94d68196b6ad7990a0e71fa6a(
109103
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnVerifiedAccessTrustProvider.NativeApplicationOidcOptionsProperty]],
109104
+ ) -> None:
109105
+ """Type checking stubs"""
109106
+ pass
109107
+
108165
109108
  def _typecheckingstub__b3732e232bbcf8298bc1fd1eb5a3f0b56a229a30c2b1db74d6c78fcfc80e5e77(
108166
109109
  value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnVerifiedAccessTrustProvider.OidcOptionsProperty]],
108167
109110
  ) -> None:
@@ -108194,6 +109137,20 @@ def _typecheckingstub__ff8d5f091c9e68a3470f9e83329b9ea9e8e9c3d69327e30f7c804de09
108194
109137
  """Type checking stubs"""
108195
109138
  pass
108196
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
+
108197
109154
  def _typecheckingstub__c7104c0ccee8d56cc5467c88b16f90245f04363672ad962c4ba9a01b66966498(
108198
109155
  *,
108199
109156
  authorization_endpoint: typing.Optional[builtins.str] = None,
@@ -108222,6 +109179,7 @@ def _typecheckingstub__a76a73a6fde22e9c9fa58fb20740e000e9153307f66b7f13cb4d7fe8b
108222
109179
  description: typing.Optional[builtins.str] = None,
108223
109180
  device_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.DeviceOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
108224
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,
108225
109183
  oidc_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.OidcOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
108226
109184
  sse_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnVerifiedAccessTrustProvider.SseSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
108227
109185
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,