aws-cdk-lib 2.219.0__py3-none-any.whl → 2.221.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 (290) hide show
  1. aws_cdk/__init__.py +33 -35
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.219.0.jsii.tgz → aws-cdk-lib@2.221.0.jsii.tgz} +0 -0
  4. aws_cdk/alexa_ask/__init__.py +3 -0
  5. aws_cdk/aws_accessanalyzer/__init__.py +3 -0
  6. aws_cdk/aws_acmpca/__init__.py +4 -1
  7. aws_cdk/aws_aiops/__init__.py +3 -0
  8. aws_cdk/aws_amazonmq/__init__.py +3 -29
  9. aws_cdk/aws_amplify/__init__.py +3 -0
  10. aws_cdk/aws_amplifyuibuilder/__init__.py +3 -0
  11. aws_cdk/aws_apigateway/__init__.py +3 -0
  12. aws_cdk/aws_apigatewayv2/__init__.py +3 -0
  13. aws_cdk/aws_appconfig/__init__.py +3 -29
  14. aws_cdk/aws_appflow/__init__.py +3 -0
  15. aws_cdk/aws_appintegrations/__init__.py +3 -0
  16. aws_cdk/aws_applicationautoscaling/__init__.py +3 -0
  17. aws_cdk/aws_applicationinsights/__init__.py +3 -0
  18. aws_cdk/aws_applicationsignals/__init__.py +453 -2
  19. aws_cdk/aws_appmesh/__init__.py +3 -0
  20. aws_cdk/aws_apprunner/__init__.py +3 -0
  21. aws_cdk/aws_appstream/__init__.py +3 -0
  22. aws_cdk/aws_appsync/__init__.py +3 -0
  23. aws_cdk/aws_apptest/__init__.py +3 -0
  24. aws_cdk/aws_aps/__init__.py +1168 -83
  25. aws_cdk/aws_arcregionswitch/__init__.py +11 -0
  26. aws_cdk/aws_arczonalshift/__init__.py +3 -0
  27. aws_cdk/aws_athena/__init__.py +3 -0
  28. aws_cdk/aws_auditmanager/__init__.py +3 -0
  29. aws_cdk/aws_autoscaling/__init__.py +3 -0
  30. aws_cdk/aws_autoscaling_common/__init__.py +3 -0
  31. aws_cdk/aws_autoscalingplans/__init__.py +3 -0
  32. aws_cdk/aws_b2bi/__init__.py +3 -0
  33. aws_cdk/aws_backup/__init__.py +32 -29
  34. aws_cdk/aws_backupgateway/__init__.py +3 -0
  35. aws_cdk/aws_batch/__init__.py +112 -7
  36. aws_cdk/aws_bcmdataexports/__init__.py +3 -0
  37. aws_cdk/aws_bedrock/__init__.py +53 -45
  38. aws_cdk/aws_bedrockagentcore/__init__.py +8499 -1732
  39. aws_cdk/aws_billingconductor/__init__.py +3 -0
  40. aws_cdk/aws_budgets/__init__.py +3 -0
  41. aws_cdk/aws_cassandra/__init__.py +3 -0
  42. aws_cdk/aws_ce/__init__.py +3 -0
  43. aws_cdk/aws_certificatemanager/__init__.py +3 -0
  44. aws_cdk/aws_chatbot/__init__.py +3 -0
  45. aws_cdk/aws_cleanrooms/__init__.py +3 -0
  46. aws_cdk/aws_cleanroomsml/__init__.py +3 -0
  47. aws_cdk/aws_cloud9/__init__.py +3 -0
  48. aws_cdk/aws_cloudformation/__init__.py +3 -0
  49. aws_cdk/aws_cloudfront/__init__.py +69 -3
  50. aws_cdk/aws_cloudfront/experimental/__init__.py +4 -0
  51. aws_cdk/aws_cloudfront_origins/__init__.py +87 -6
  52. aws_cdk/aws_cloudtrail/__init__.py +3 -0
  53. aws_cdk/aws_cloudwatch/__init__.py +8 -5
  54. aws_cdk/aws_codeartifact/__init__.py +3 -0
  55. aws_cdk/aws_codebuild/__init__.py +3 -0
  56. aws_cdk/aws_codecommit/__init__.py +3 -0
  57. aws_cdk/aws_codeconnections/__init__.py +3 -0
  58. aws_cdk/aws_codedeploy/__init__.py +3 -0
  59. aws_cdk/aws_codeguruprofiler/__init__.py +3 -0
  60. aws_cdk/aws_codegurureviewer/__init__.py +3 -0
  61. aws_cdk/aws_codepipeline/__init__.py +3 -0
  62. aws_cdk/aws_codepipeline_actions/__init__.py +3 -0
  63. aws_cdk/aws_codestar/__init__.py +3 -0
  64. aws_cdk/aws_codestarconnections/__init__.py +3 -0
  65. aws_cdk/aws_codestarnotifications/__init__.py +3 -0
  66. aws_cdk/aws_cognito/__init__.py +9 -4
  67. aws_cdk/aws_cognito_identitypool/__init__.py +3 -0
  68. aws_cdk/aws_comprehend/__init__.py +3 -0
  69. aws_cdk/aws_config/__init__.py +3 -0
  70. aws_cdk/aws_connect/__init__.py +1232 -2
  71. aws_cdk/aws_connectcampaigns/__init__.py +3 -0
  72. aws_cdk/aws_connectcampaignsv2/__init__.py +3 -0
  73. aws_cdk/aws_controltower/__init__.py +3 -0
  74. aws_cdk/aws_cur/__init__.py +3 -0
  75. aws_cdk/aws_customerprofiles/__init__.py +3 -29
  76. aws_cdk/aws_databrew/__init__.py +3 -0
  77. aws_cdk/aws_datapipeline/__init__.py +3 -0
  78. aws_cdk/aws_datasync/__init__.py +3 -0
  79. aws_cdk/aws_datazone/__init__.py +17 -15
  80. aws_cdk/aws_dax/__init__.py +15 -3
  81. aws_cdk/aws_deadline/__init__.py +3 -0
  82. aws_cdk/aws_detective/__init__.py +3 -0
  83. aws_cdk/aws_devicefarm/__init__.py +3 -0
  84. aws_cdk/aws_devopsguru/__init__.py +3 -0
  85. aws_cdk/aws_directoryservice/__init__.py +32 -0
  86. aws_cdk/aws_dlm/__init__.py +3 -0
  87. aws_cdk/aws_dms/__init__.py +3 -0
  88. aws_cdk/aws_docdb/__init__.py +14 -3
  89. aws_cdk/aws_docdbelastic/__init__.py +3 -0
  90. aws_cdk/aws_dsql/__init__.py +3 -0
  91. aws_cdk/aws_dynamodb/__init__.py +3 -0
  92. aws_cdk/aws_ec2/__init__.py +205 -48
  93. aws_cdk/aws_ecr/__init__.py +156 -33
  94. aws_cdk/aws_ecs/__init__.py +429 -182
  95. aws_cdk/aws_efs/__init__.py +3 -0
  96. aws_cdk/aws_eks/__init__.py +117 -67
  97. aws_cdk/aws_elasticache/__init__.py +3 -0
  98. aws_cdk/aws_elasticbeanstalk/__init__.py +3 -0
  99. aws_cdk/aws_elasticloadbalancing/__init__.py +3 -0
  100. aws_cdk/aws_elasticloadbalancingv2/__init__.py +445 -36
  101. aws_cdk/aws_elasticsearch/__init__.py +3 -0
  102. aws_cdk/aws_emr/__init__.py +3 -0
  103. aws_cdk/aws_emrcontainers/__init__.py +3 -0
  104. aws_cdk/aws_emrserverless/__init__.py +12 -11
  105. aws_cdk/aws_entityresolution/__init__.py +3 -0
  106. aws_cdk/aws_events/__init__.py +73 -29
  107. aws_cdk/aws_events_targets/__init__.py +3 -0
  108. aws_cdk/aws_eventschemas/__init__.py +3 -0
  109. aws_cdk/aws_evidently/__init__.py +3 -0
  110. aws_cdk/aws_evs/__init__.py +3 -0
  111. aws_cdk/aws_finspace/__init__.py +3 -0
  112. aws_cdk/aws_fis/__init__.py +3 -0
  113. aws_cdk/aws_fms/__init__.py +3 -0
  114. aws_cdk/aws_forecast/__init__.py +3 -0
  115. aws_cdk/aws_frauddetector/__init__.py +3 -0
  116. aws_cdk/aws_fsx/__init__.py +7 -4
  117. aws_cdk/aws_gamelift/__init__.py +3 -0
  118. aws_cdk/aws_gameliftstreams/__init__.py +8 -5
  119. aws_cdk/aws_globalaccelerator/__init__.py +3 -0
  120. aws_cdk/aws_glue/__init__.py +11 -80
  121. aws_cdk/aws_grafana/__init__.py +3 -0
  122. aws_cdk/aws_greengrass/__init__.py +3 -0
  123. aws_cdk/aws_greengrassv2/__init__.py +3 -0
  124. aws_cdk/aws_groundstation/__init__.py +3 -0
  125. aws_cdk/aws_guardduty/__init__.py +3 -0
  126. aws_cdk/aws_healthimaging/__init__.py +3 -0
  127. aws_cdk/aws_healthlake/__init__.py +3 -0
  128. aws_cdk/aws_iam/__init__.py +30 -32
  129. aws_cdk/aws_identitystore/__init__.py +3 -0
  130. aws_cdk/aws_imagebuilder/__init__.py +896 -0
  131. aws_cdk/aws_inspector/__init__.py +3 -0
  132. aws_cdk/aws_inspectorv2/__init__.py +3 -0
  133. aws_cdk/aws_internetmonitor/__init__.py +3 -0
  134. aws_cdk/aws_invoicing/__init__.py +3 -0
  135. aws_cdk/aws_iot/__init__.py +3 -0
  136. aws_cdk/aws_iotanalytics/__init__.py +3 -0
  137. aws_cdk/aws_iotcoredeviceadvisor/__init__.py +3 -0
  138. aws_cdk/aws_iotevents/__init__.py +3 -0
  139. aws_cdk/aws_iotfleethub/__init__.py +3 -0
  140. aws_cdk/aws_iotfleetwise/__init__.py +3 -0
  141. aws_cdk/aws_iotsitewise/__init__.py +139 -80
  142. aws_cdk/aws_iotthingsgraph/__init__.py +3 -0
  143. aws_cdk/aws_iottwinmaker/__init__.py +3 -87
  144. aws_cdk/aws_iotwireless/__init__.py +61 -0
  145. aws_cdk/aws_ivs/__init__.py +3 -0
  146. aws_cdk/aws_ivschat/__init__.py +3 -0
  147. aws_cdk/aws_kafkaconnect/__init__.py +3 -0
  148. aws_cdk/aws_kendra/__init__.py +3 -58
  149. aws_cdk/aws_kendraranking/__init__.py +3 -0
  150. aws_cdk/aws_kinesis/__init__.py +98 -4
  151. aws_cdk/aws_kinesisanalytics/__init__.py +3 -0
  152. aws_cdk/aws_kinesisanalyticsv2/__init__.py +3 -0
  153. aws_cdk/aws_kinesisfirehose/__init__.py +1709 -10
  154. aws_cdk/aws_kinesisvideo/__init__.py +3 -29
  155. aws_cdk/aws_kms/__init__.py +3 -0
  156. aws_cdk/aws_lakeformation/__init__.py +3 -0
  157. aws_cdk/aws_lambda/__init__.py +57 -7
  158. aws_cdk/aws_lambda_nodejs/__init__.py +3 -0
  159. aws_cdk/aws_launchwizard/__init__.py +3 -0
  160. aws_cdk/aws_lex/__init__.py +3 -29
  161. aws_cdk/aws_licensemanager/__init__.py +3 -0
  162. aws_cdk/aws_lightsail/__init__.py +587 -0
  163. aws_cdk/aws_location/__init__.py +3 -0
  164. aws_cdk/aws_logs/__init__.py +283 -9
  165. aws_cdk/aws_lookoutequipment/__init__.py +3 -29
  166. aws_cdk/aws_lookoutmetrics/__init__.py +17 -2
  167. aws_cdk/aws_lookoutvision/__init__.py +3 -0
  168. aws_cdk/aws_m2/__init__.py +62 -13
  169. aws_cdk/aws_macie/__init__.py +3 -0
  170. aws_cdk/aws_managedblockchain/__init__.py +3 -0
  171. aws_cdk/aws_mediaconnect/__init__.py +3 -0
  172. aws_cdk/aws_mediaconvert/__init__.py +3 -0
  173. aws_cdk/aws_medialive/__init__.py +279 -33
  174. aws_cdk/aws_mediapackage/__init__.py +3 -0
  175. aws_cdk/aws_mediapackagev2/__init__.py +3 -0
  176. aws_cdk/aws_mediastore/__init__.py +3 -0
  177. aws_cdk/aws_mediatailor/__init__.py +3 -58
  178. aws_cdk/aws_memorydb/__init__.py +3 -0
  179. aws_cdk/aws_mpa/__init__.py +3 -0
  180. aws_cdk/aws_msk/__init__.py +3 -0
  181. aws_cdk/aws_mwaa/__init__.py +8 -5
  182. aws_cdk/aws_neptune/__init__.py +188 -70
  183. aws_cdk/aws_neptunegraph/__init__.py +3 -0
  184. aws_cdk/aws_networkfirewall/__init__.py +3 -0
  185. aws_cdk/aws_networkmanager/__init__.py +32 -0
  186. aws_cdk/aws_nimblestudio/__init__.py +3 -0
  187. aws_cdk/aws_notifications/__init__.py +3 -0
  188. aws_cdk/aws_notificationscontacts/__init__.py +3 -0
  189. aws_cdk/aws_oam/__init__.py +3 -0
  190. aws_cdk/aws_observabilityadmin/__init__.py +1365 -187
  191. aws_cdk/aws_odb/__init__.py +4 -1
  192. aws_cdk/aws_omics/__init__.py +10 -1
  193. aws_cdk/aws_opensearchserverless/__init__.py +3 -0
  194. aws_cdk/aws_opensearchservice/__init__.py +9 -0
  195. aws_cdk/aws_opsworks/__init__.py +3 -0
  196. aws_cdk/aws_opsworkscm/__init__.py +3 -0
  197. aws_cdk/aws_organizations/__init__.py +3 -116
  198. aws_cdk/aws_osis/__init__.py +157 -0
  199. aws_cdk/aws_panorama/__init__.py +3 -0
  200. aws_cdk/aws_paymentcryptography/__init__.py +3 -0
  201. aws_cdk/aws_pcaconnectorad/__init__.py +3 -0
  202. aws_cdk/aws_pcaconnectorscep/__init__.py +3 -0
  203. aws_cdk/aws_pcs/__init__.py +227 -33
  204. aws_cdk/aws_personalize/__init__.py +3 -0
  205. aws_cdk/aws_pinpoint/__init__.py +61 -58
  206. aws_cdk/aws_pinpointemail/__init__.py +3 -0
  207. aws_cdk/aws_pipes/__init__.py +3 -0
  208. aws_cdk/aws_proton/__init__.py +3 -0
  209. aws_cdk/aws_qbusiness/__init__.py +3 -174
  210. aws_cdk/aws_qldb/__init__.py +3 -29
  211. aws_cdk/aws_quicksight/__init__.py +493 -406
  212. aws_cdk/aws_ram/__init__.py +3 -0
  213. aws_cdk/aws_rbin/__init__.py +3 -0
  214. aws_cdk/aws_rds/__init__.py +71 -42
  215. aws_cdk/aws_redshift/__init__.py +3 -0
  216. aws_cdk/aws_redshiftserverless/__init__.py +3 -0
  217. aws_cdk/aws_refactorspaces/__init__.py +21 -6
  218. aws_cdk/aws_rekognition/__init__.py +3 -29
  219. aws_cdk/aws_resiliencehub/__init__.py +3 -0
  220. aws_cdk/aws_resourceexplorer2/__init__.py +3 -0
  221. aws_cdk/aws_resourcegroups/__init__.py +3 -0
  222. aws_cdk/aws_robomaker/__init__.py +3 -0
  223. aws_cdk/aws_rolesanywhere/__init__.py +3 -0
  224. aws_cdk/aws_route53/__init__.py +148 -24
  225. aws_cdk/aws_route53_targets/__init__.py +3 -0
  226. aws_cdk/aws_route53profiles/__init__.py +3 -0
  227. aws_cdk/aws_route53recoverycontrol/__init__.py +3 -0
  228. aws_cdk/aws_route53recoveryreadiness/__init__.py +3 -0
  229. aws_cdk/aws_route53resolver/__init__.py +11 -4
  230. aws_cdk/aws_rum/__init__.py +3 -0
  231. aws_cdk/aws_s3/__init__.py +80 -43
  232. aws_cdk/aws_s3_deployment/__init__.py +3 -0
  233. aws_cdk/aws_s3express/__init__.py +3 -0
  234. aws_cdk/aws_s3objectlambda/__init__.py +47 -12
  235. aws_cdk/aws_s3outposts/__init__.py +3 -0
  236. aws_cdk/aws_s3tables/__init__.py +3 -0
  237. aws_cdk/aws_sagemaker/__init__.py +166 -87
  238. aws_cdk/aws_sam/__init__.py +3 -0
  239. aws_cdk/aws_scheduler/__init__.py +3 -29
  240. aws_cdk/aws_sdb/__init__.py +3 -0
  241. aws_cdk/aws_secretsmanager/__init__.py +3 -0
  242. aws_cdk/aws_securityhub/__init__.py +3 -0
  243. aws_cdk/aws_securitylake/__init__.py +3 -0
  244. aws_cdk/aws_servicecatalog/__init__.py +161 -144
  245. aws_cdk/aws_servicecatalogappregistry/__init__.py +3 -0
  246. aws_cdk/aws_servicediscovery/__init__.py +3 -0
  247. aws_cdk/aws_ses/__init__.py +3 -0
  248. aws_cdk/aws_shield/__init__.py +3 -0
  249. aws_cdk/aws_signer/__init__.py +3 -0
  250. aws_cdk/aws_simspaceweaver/__init__.py +3 -0
  251. aws_cdk/aws_smsvoice/__init__.py +3 -29
  252. aws_cdk/aws_sns/__init__.py +3 -0
  253. aws_cdk/aws_sqs/__init__.py +3 -0
  254. aws_cdk/aws_ssm/__init__.py +10 -3
  255. aws_cdk/aws_ssmcontacts/__init__.py +3 -0
  256. aws_cdk/aws_ssmguiconnect/__init__.py +3 -0
  257. aws_cdk/aws_ssmincidents/__init__.py +3 -0
  258. aws_cdk/aws_ssmquicksetup/__init__.py +470 -3
  259. aws_cdk/aws_sso/__init__.py +3 -0
  260. aws_cdk/aws_stepfunctions/__init__.py +23 -19
  261. aws_cdk/aws_stepfunctions_tasks/__init__.py +6 -3
  262. aws_cdk/aws_supportapp/__init__.py +3 -0
  263. aws_cdk/aws_synthetics/__init__.py +80 -27
  264. aws_cdk/aws_systemsmanagersap/__init__.py +3 -0
  265. aws_cdk/aws_timestream/__init__.py +3 -29
  266. aws_cdk/aws_transfer/__init__.py +20 -34
  267. aws_cdk/aws_verifiedpermissions/__init__.py +3 -0
  268. aws_cdk/aws_voiceid/__init__.py +3 -0
  269. aws_cdk/aws_vpclattice/__init__.py +7 -4
  270. aws_cdk/aws_waf/__init__.py +3 -0
  271. aws_cdk/aws_wafregional/__init__.py +3 -0
  272. aws_cdk/aws_wafv2/__init__.py +3 -0
  273. aws_cdk/aws_wisdom/__init__.py +3 -116
  274. aws_cdk/aws_workspaces/__init__.py +3 -0
  275. aws_cdk/aws_workspacesinstances/__init__.py +3 -0
  276. aws_cdk/aws_workspacesthinclient/__init__.py +3 -0
  277. aws_cdk/aws_workspacesweb/__init__.py +3 -0
  278. aws_cdk/aws_xray/__init__.py +3 -0
  279. aws_cdk/cloud_assembly_schema/__init__.py +3 -0
  280. aws_cdk/cx_api/__init__.py +34 -0
  281. aws_cdk/pipelines/__init__.py +3 -0
  282. aws_cdk/region_info/__init__.py +3 -0
  283. aws_cdk/triggers/__init__.py +3 -0
  284. {aws_cdk_lib-2.219.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/METADATA +2 -2
  285. aws_cdk_lib-2.221.0.dist-info/RECORD +313 -0
  286. aws_cdk_lib-2.219.0.dist-info/RECORD +0 -313
  287. {aws_cdk_lib-2.219.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/LICENSE +0 -0
  288. {aws_cdk_lib-2.219.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/NOTICE +0 -0
  289. {aws_cdk_lib-2.219.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/WHEEL +0 -0
  290. {aws_cdk_lib-2.219.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/top_level.txt +0 -0
@@ -1422,6 +1422,21 @@ endpoint = vpc.add_client_vpn_endpoint("Endpoint",
1422
1422
  )
1423
1423
  ```
1424
1424
 
1425
+ To control whether clients are automatically disconnected when the maximum session duration is reached, use the `disconnectOnSessionTimeout` prop.
1426
+ By default (`true`), clients are disconnected and must manually reconnect.
1427
+ Set to `false` to allow automatic reconnection attempts:
1428
+
1429
+ ```python
1430
+ endpoint = vpc.add_client_vpn_endpoint("Endpoint",
1431
+ cidr="10.100.0.0/16",
1432
+ server_certificate_arn="arn:aws:acm:us-east-1:123456789012:certificate/server-certificate-id",
1433
+ client_certificate_arn="arn:aws:acm:us-east-1:123456789012:certificate/client-certificate-id",
1434
+ disconnect_on_session_timeout=False
1435
+ )
1436
+ ```
1437
+
1438
+ Detail information about maximum VPN session duration timeout can be found in the [AWS documentation](https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/cvpn-working-max-duration.html).
1439
+
1425
1440
  ## Instances
1426
1441
 
1427
1442
  You can use the `Instance` class to start up a single EC2 instance. For production setups, we recommend
@@ -2936,6 +2951,9 @@ class AcceleratorManufacturer(enum.Enum):
2936
2951
  propagate_tags=ecs.PropagateManagedInstancesTags.CAPACITY_PROVIDER
2937
2952
  )
2938
2953
 
2954
+ # Optionally configure security group rules using IConnectable interface
2955
+ mi_capacity_provider.connections.allow_from(ec2.Peer.ipv4(vpc.vpc_cidr_block), ec2.Port.tcp(80))
2956
+
2939
2957
  # Add the capacity provider to the cluster
2940
2958
  cluster.add_managed_instances_capacity_provider(mi_capacity_provider)
2941
2959
 
@@ -6678,7 +6696,7 @@ class CfnCapacityReservationProps:
6678
6696
  :param instance_platform: The type of operating system for which to reserve capacity.
6679
6697
  :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, T, and G 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* .
6680
6698
  :param availability_zone: The Availability Zone in which to create the Capacity Reservation.
6681
- :param availability_zone_id: The Availability Zone ID of the Capacity Reservation.
6699
+ :param availability_zone_id: The ID of the Availability Zone in which the capacity is reserved.
6682
6700
  :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.
6683
6701
  :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.
6684
6702
  :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`` .
@@ -6825,7 +6843,7 @@ class CfnCapacityReservationProps:
6825
6843
 
6826
6844
  @builtins.property
6827
6845
  def availability_zone_id(self) -> typing.Optional[builtins.str]:
6828
- '''The Availability Zone ID of the Capacity Reservation.
6846
+ '''The ID of the Availability Zone in which the capacity is reserved.
6829
6847
 
6830
6848
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html#cfn-ec2-capacityreservation-availabilityzoneid
6831
6849
  '''
@@ -12841,6 +12859,7 @@ class CfnLocalGatewayVirtualInterfaceProps:
12841
12859
  "secondary_private_ip_addresses": "secondaryPrivateIpAddresses",
12842
12860
  "subnet_id": "subnetId",
12843
12861
  "tags": "tags",
12862
+ "vpc_id": "vpcId",
12844
12863
  },
12845
12864
  )
12846
12865
  class CfnNatGatewayProps:
@@ -12856,6 +12875,7 @@ class CfnNatGatewayProps:
12856
12875
  secondary_private_ip_addresses: typing.Optional[typing.Sequence[builtins.str]] = None,
12857
12876
  subnet_id: typing.Optional[builtins.str] = None,
12858
12877
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
12878
+ vpc_id: typing.Optional[builtins.str] = None,
12859
12879
  ) -> None:
12860
12880
  '''Properties for defining a ``CfnNatGateway``.
12861
12881
 
@@ -12868,6 +12888,7 @@ class CfnNatGatewayProps:
12868
12888
  :param secondary_private_ip_addresses: Secondary private IPv4 addresses. For more information about secondary addresses, see `Create a NAT gateway <https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating>`_ in the *Amazon Virtual Private Cloud User Guide* . ``SecondaryPrivateIpAddressCount`` and ``SecondaryPrivateIpAddresses`` cannot be set at the same time.
12869
12889
  :param subnet_id: The ID of the subnet in which the NAT gateway is located.
12870
12890
  :param tags: The tags for the NAT gateway.
12891
+ :param vpc_id: The ID of the VPC in which the NAT gateway is located.
12871
12892
 
12872
12893
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html
12873
12894
  :exampleMetadata: fixture=_generated
@@ -12890,7 +12911,8 @@ class CfnNatGatewayProps:
12890
12911
  tags=[CfnTag(
12891
12912
  key="key",
12892
12913
  value="value"
12893
- )]
12914
+ )],
12915
+ vpc_id="vpcId"
12894
12916
  )
12895
12917
  '''
12896
12918
  if __debug__:
@@ -12904,6 +12926,7 @@ class CfnNatGatewayProps:
12904
12926
  check_type(argname="argument secondary_private_ip_addresses", value=secondary_private_ip_addresses, expected_type=type_hints["secondary_private_ip_addresses"])
12905
12927
  check_type(argname="argument subnet_id", value=subnet_id, expected_type=type_hints["subnet_id"])
12906
12928
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
12929
+ check_type(argname="argument vpc_id", value=vpc_id, expected_type=type_hints["vpc_id"])
12907
12930
  self._values: typing.Dict[builtins.str, typing.Any] = {}
12908
12931
  if allocation_id is not None:
12909
12932
  self._values["allocation_id"] = allocation_id
@@ -12923,6 +12946,8 @@ class CfnNatGatewayProps:
12923
12946
  self._values["subnet_id"] = subnet_id
12924
12947
  if tags is not None:
12925
12948
  self._values["tags"] = tags
12949
+ if vpc_id is not None:
12950
+ self._values["vpc_id"] = vpc_id
12926
12951
 
12927
12952
  @builtins.property
12928
12953
  def allocation_id(self) -> typing.Optional[builtins.str]:
@@ -13025,6 +13050,15 @@ class CfnNatGatewayProps:
13025
13050
  result = self._values.get("tags")
13026
13051
  return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
13027
13052
 
13053
+ @builtins.property
13054
+ def vpc_id(self) -> typing.Optional[builtins.str]:
13055
+ '''The ID of the VPC in which the NAT gateway is located.
13056
+
13057
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html#cfn-ec2-natgateway-vpcid
13058
+ '''
13059
+ result = self._values.get("vpc_id")
13060
+ return typing.cast(typing.Optional[builtins.str], result)
13061
+
13028
13062
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
13029
13063
  return isinstance(rhs, self.__class__) and rhs._values == self._values
13030
13064
 
@@ -23080,11 +23114,11 @@ class CfnVolumeProps:
23080
23114
  :param availability_zone: The ID of the Availability Zone in which to create the volume. For example, ``us-east-1a`` . Either ``AvailabilityZone`` or ``AvailabilityZoneId`` must be specified, but not both.
23081
23115
  :param auto_enable_io: Indicates whether the volume is auto-enabled for I/O operations. By default, Amazon EBS disables I/O to the volume from attached EC2 instances when it determines that a volume's data is potentially inconsistent. If the consistency of the volume is not a concern, and you prefer that the volume be made available immediately if it's impaired, you can configure the volume to automatically enable I/O.
23082
23116
  :param encrypted: Indicates whether the volume should be encrypted. The effect of setting the encryption state to ``true`` depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see `Encryption by default <https://docs.aws.amazon.com/ebs/latest/userguide/work-with-ebs-encr.html#encryption-by-default>`_ in the *Amazon EBS User Guide* . Encrypted Amazon EBS volumes must be attached to instances that support Amazon EBS encryption. For more information, see `Supported instance types <https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption-requirements.html#ebs-encryption_supported_instances>`_ .
23083
- :param iops: The number of I/O operations per second (IOPS). For ``gp3`` , ``io1`` , and ``io2`` volumes, this represents the number of IOPS that are provisioned for the volume. For ``gp2`` volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. The following are the supported values for each volume type: - ``gp3`` : 3,000 - 80,000 IOPS - ``io1`` : 100 - 64,000 IOPS - ``io2`` : 100 - 256,000 IOPS For ``io2`` volumes, you can achieve up to 256,000 IOPS on `instances built on the Nitro System <https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html>`_ . On other instances, you can achieve performance up to 32,000 IOPS. This parameter is required for ``io1`` and ``io2`` volumes. The default for ``gp3`` volumes is 3,000 IOPS. This parameter is not supported for ``gp2`` , ``st1`` , ``sc1`` , or ``standard`` volumes.
23117
+ :param iops: The number of I/O operations per second (IOPS) to provision for the volume. Required for ``io1`` and ``io2`` volumes. Optional for ``gp3`` volumes. Omit for all other volume types. Valid ranges: - gp3: ``3,000`` ( *default* ) ``- 80,000`` IOPS - io1: ``100 - 64,000`` IOPS - io2: ``100 - 256,000`` IOPS .. epigraph:: `Instances built on the Nitro System <https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html>`_ can support up to 256,000 IOPS. Other instances can support up to 32,000 IOPS.
23084
23118
  :param kms_key_id: The identifier of the AWS KMS key to use for Amazon EBS encryption. If ``KmsKeyId`` is specified, the encrypted state must be ``true`` . If you omit this property and your account is enabled for encryption by default, or *Encrypted* is set to ``true`` , then the volume is encrypted using the default key specified for your account. If your account does not have a default key, then the volume is encrypted using the AWS managed key . Alternatively, if you want to specify a different key, you can specify one of the following: - Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab. - Key alias. Specify the alias for the key, prefixed with ``alias/`` . For example, for a key with the alias ``my_cmk`` , use ``alias/my_cmk`` . Or to specify the AWS managed key , use ``alias/aws/ebs`` . - Key ARN. For example, arn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab. - Alias ARN. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias.
23085
23119
  :param multi_attach_enabled: Indicates whether Amazon EBS Multi-Attach is enabled. AWS CloudFormation does not currently support updating a single-attach volume to be multi-attach enabled, updating a multi-attach enabled volume to be single-attach, or updating the size or number of I/O operations per second (IOPS) of a multi-attach enabled volume.
23086
23120
  :param outpost_arn: The Amazon Resource Name (ARN) of the Outpost.
23087
- :param size: The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size. The following are the supported volumes sizes for each volume type: - ``gp2`` : 1 - 16,384 GiB - ``gp3`` : 1 - 65,536 GiB - ``io1`` : 4 - 16,384 GiB - ``io2`` : 4 - 65,536 GiB - ``st1`` and ``sc1`` : 125 - 16,384 GiB - ``standard`` : 1 - 1024 GiB
23121
+ :param size: The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size, and you can specify a volume size that is equal to or larger than the snapshot size. Valid sizes: - gp2: ``1 - 16,384`` GiB - gp3: ``1 - 65,536`` GiB - io1: ``4 - 16,384`` GiB - io2: ``4 - 65,536`` GiB - st1 and sc1: ``125 - 16,384`` GiB - standard: ``1 - 1024`` GiB
23088
23122
  :param snapshot_id: The snapshot from which to create the volume. You must specify either a snapshot ID or a volume size.
23089
23123
  :param tags: The tags to apply to the volume during creation.
23090
23124
  :param throughput: The throughput to provision for a volume, with a maximum of 1,000 MiB/s. This parameter is valid only for ``gp3`` volumes. The default value is 125. Valid Range: Minimum value of 125. Maximum value of 1000.
@@ -23206,19 +23240,19 @@ class CfnVolumeProps:
23206
23240
 
23207
23241
  @builtins.property
23208
23242
  def iops(self) -> typing.Optional[jsii.Number]:
23209
- '''The number of I/O operations per second (IOPS).
23243
+ '''The number of I/O operations per second (IOPS) to provision for the volume.
23210
23244
 
23211
- For ``gp3`` , ``io1`` , and ``io2`` volumes, this represents the number of IOPS that are provisioned for the volume. For ``gp2`` volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.
23245
+ Required for ``io1`` and ``io2`` volumes. Optional for ``gp3`` volumes. Omit for all other volume types.
23212
23246
 
23213
- The following are the supported values for each volume type:
23247
+ Valid ranges:
23214
23248
 
23215
- - ``gp3`` : 3,000 - 80,000 IOPS
23216
- - ``io1`` : 100 - 64,000 IOPS
23217
- - ``io2`` : 100 - 256,000 IOPS
23249
+ - gp3: ``3,000`` ( *default* ) ``- 80,000`` IOPS
23250
+ - io1: ``100 - 64,000`` IOPS
23251
+ - io2: ``100 - 256,000`` IOPS
23218
23252
 
23219
- For ``io2`` volumes, you can achieve up to 256,000 IOPS on `instances built on the Nitro System <https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html>`_ . On other instances, you can achieve performance up to 32,000 IOPS.
23253
+ .. epigraph::
23220
23254
 
23221
- This parameter is required for ``io1`` and ``io2`` volumes. The default for ``gp3`` volumes is 3,000 IOPS. This parameter is not supported for ``gp2`` , ``st1`` , ``sc1`` , or ``standard`` volumes.
23255
+ `Instances built on the Nitro System <https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html>`_ can support up to 256,000 IOPS. Other instances can support up to 32,000 IOPS.
23222
23256
 
23223
23257
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-iops
23224
23258
  '''
@@ -23271,16 +23305,16 @@ class CfnVolumeProps:
23271
23305
  def size(self) -> typing.Optional[jsii.Number]:
23272
23306
  '''The size of the volume, in GiBs.
23273
23307
 
23274
- You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.
23308
+ You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size, and you can specify a volume size that is equal to or larger than the snapshot size.
23275
23309
 
23276
- The following are the supported volumes sizes for each volume type:
23310
+ Valid sizes:
23277
23311
 
23278
- - ``gp2`` : 1 - 16,384 GiB
23279
- - ``gp3`` : 1 - 65,536 GiB
23280
- - ``io1`` : 4 - 16,384 GiB
23281
- - ``io2`` : 4 - 65,536 GiB
23282
- - ``st1`` and ``sc1`` : 125 - 16,384 GiB
23283
- - ``standard`` : 1 - 1024 GiB
23312
+ - gp2: ``1 - 16,384`` GiB
23313
+ - gp3: ``1 - 65,536`` GiB
23314
+ - io1: ``4 - 16,384`` GiB
23315
+ - io2: ``4 - 65,536`` GiB
23316
+ - st1 and sc1: ``125 - 16,384`` GiB
23317
+ - standard: ``1 - 1024`` GiB
23284
23318
 
23285
23319
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-size
23286
23320
  '''
@@ -23814,6 +23848,7 @@ class ClientVpnEndpointAttributes:
23814
23848
  "client_login_banner": "clientLoginBanner",
23815
23849
  "client_route_enforcement_options": "clientRouteEnforcementOptions",
23816
23850
  "description": "description",
23851
+ "disconnect_on_session_timeout": "disconnectOnSessionTimeout",
23817
23852
  "dns_servers": "dnsServers",
23818
23853
  "logging": "logging",
23819
23854
  "log_group": "logGroup",
@@ -23840,6 +23875,7 @@ class ClientVpnEndpointOptions:
23840
23875
  client_login_banner: typing.Optional[builtins.str] = None,
23841
23876
  client_route_enforcement_options: typing.Optional[typing.Union[ClientRouteEnforcementOptions, typing.Dict[builtins.str, typing.Any]]] = None,
23842
23877
  description: typing.Optional[builtins.str] = None,
23878
+ disconnect_on_session_timeout: typing.Optional[builtins.bool] = None,
23843
23879
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
23844
23880
  logging: typing.Optional[builtins.bool] = None,
23845
23881
  log_group: typing.Optional[_ILogGroup_3c4fa718] = None,
@@ -23863,6 +23899,7 @@ class ClientVpnEndpointOptions:
23863
23899
  :param client_login_banner: Customizable text that will be displayed in a banner on AWS provided clients when a VPN session is established. UTF-8 encoded characters only. Maximum of 1400 characters. Default: - no banner is presented to the client
23864
23900
  :param client_route_enforcement_options: Options for Client Route Enforcement. Client Route Enforcement is a feature of Client VPN that helps enforce administrator defined routes on devices connected through the VPN. This feature helps improve your security posture by ensuring that network traffic originating from a connected client is not inadvertently sent outside the VPN tunnel. Default: undefined - AWS Client VPN default setting is disable client route enforcement
23865
23901
  :param description: A brief description of the Client VPN endpoint. Default: - no description
23902
+ :param disconnect_on_session_timeout: Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeout`` is reached. If ``true``, users are prompted to reconnect client VPN. If ``false``, client VPN attempts to reconnect automatically. Default: undefined - AWS Client VPN default is true
23866
23903
  :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. Default: - use the DNS address configured on the device
23867
23904
  :param logging: Whether to enable connections logging. Default: true
23868
23905
  :param log_group: A CloudWatch Logs log group for connection logging. Default: - a new group is created
@@ -23880,16 +23917,13 @@ class ClientVpnEndpointOptions:
23880
23917
 
23881
23918
  Example::
23882
23919
 
23883
- endpoint = vpc.add_client_vpn_endpoint("Endpoint",
23920
+ vpc.add_client_vpn_endpoint("Endpoint",
23884
23921
  cidr="10.100.0.0/16",
23885
23922
  server_certificate_arn="arn:aws:acm:us-east-1:123456789012:certificate/server-certificate-id",
23886
- user_based_authentication=ec2.ClientVpnUserBasedAuthentication.federated(saml_provider),
23887
- authorize_all_users_to_vpc_cidr=False
23888
- )
23889
-
23890
- endpoint.add_authorization_rule("Rule",
23891
- cidr="10.0.10.0/32",
23892
- group_id="group-id"
23923
+ # Mutual authentication
23924
+ client_certificate_arn="arn:aws:acm:us-east-1:123456789012:certificate/client-certificate-id",
23925
+ # User-based authentication
23926
+ user_based_authentication=ec2.ClientVpnUserBasedAuthentication.federated(saml_provider)
23893
23927
  )
23894
23928
  '''
23895
23929
  if isinstance(client_route_enforcement_options, dict):
@@ -23906,6 +23940,7 @@ class ClientVpnEndpointOptions:
23906
23940
  check_type(argname="argument client_login_banner", value=client_login_banner, expected_type=type_hints["client_login_banner"])
23907
23941
  check_type(argname="argument client_route_enforcement_options", value=client_route_enforcement_options, expected_type=type_hints["client_route_enforcement_options"])
23908
23942
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
23943
+ check_type(argname="argument disconnect_on_session_timeout", value=disconnect_on_session_timeout, expected_type=type_hints["disconnect_on_session_timeout"])
23909
23944
  check_type(argname="argument dns_servers", value=dns_servers, expected_type=type_hints["dns_servers"])
23910
23945
  check_type(argname="argument logging", value=logging, expected_type=type_hints["logging"])
23911
23946
  check_type(argname="argument log_group", value=log_group, expected_type=type_hints["log_group"])
@@ -23934,6 +23969,8 @@ class ClientVpnEndpointOptions:
23934
23969
  self._values["client_route_enforcement_options"] = client_route_enforcement_options
23935
23970
  if description is not None:
23936
23971
  self._values["description"] = description
23972
+ if disconnect_on_session_timeout is not None:
23973
+ self._values["disconnect_on_session_timeout"] = disconnect_on_session_timeout
23937
23974
  if dns_servers is not None:
23938
23975
  self._values["dns_servers"] = dns_servers
23939
23976
  if logging is not None:
@@ -24054,6 +24091,20 @@ class ClientVpnEndpointOptions:
24054
24091
  result = self._values.get("description")
24055
24092
  return typing.cast(typing.Optional[builtins.str], result)
24056
24093
 
24094
+ @builtins.property
24095
+ def disconnect_on_session_timeout(self) -> typing.Optional[builtins.bool]:
24096
+ '''Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeout`` is reached.
24097
+
24098
+ If ``true``, users are prompted to reconnect client VPN.
24099
+ If ``false``, client VPN attempts to reconnect automatically.
24100
+
24101
+ :default: undefined - AWS Client VPN default is true
24102
+
24103
+ :see: https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/cvpn-working-max-duration.html
24104
+ '''
24105
+ result = self._values.get("disconnect_on_session_timeout")
24106
+ return typing.cast(typing.Optional[builtins.bool], result)
24107
+
24057
24108
  @builtins.property
24058
24109
  def dns_servers(self) -> typing.Optional[typing.List[builtins.str]]:
24059
24110
  '''Information about the DNS servers to be used for DNS resolution.
@@ -24194,6 +24245,7 @@ class ClientVpnEndpointOptions:
24194
24245
  "client_login_banner": "clientLoginBanner",
24195
24246
  "client_route_enforcement_options": "clientRouteEnforcementOptions",
24196
24247
  "description": "description",
24248
+ "disconnect_on_session_timeout": "disconnectOnSessionTimeout",
24197
24249
  "dns_servers": "dnsServers",
24198
24250
  "logging": "logging",
24199
24251
  "log_group": "logGroup",
@@ -24221,6 +24273,7 @@ class ClientVpnEndpointProps(ClientVpnEndpointOptions):
24221
24273
  client_login_banner: typing.Optional[builtins.str] = None,
24222
24274
  client_route_enforcement_options: typing.Optional[typing.Union[ClientRouteEnforcementOptions, typing.Dict[builtins.str, typing.Any]]] = None,
24223
24275
  description: typing.Optional[builtins.str] = None,
24276
+ disconnect_on_session_timeout: typing.Optional[builtins.bool] = None,
24224
24277
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
24225
24278
  logging: typing.Optional[builtins.bool] = None,
24226
24279
  log_group: typing.Optional[_ILogGroup_3c4fa718] = None,
@@ -24245,6 +24298,7 @@ class ClientVpnEndpointProps(ClientVpnEndpointOptions):
24245
24298
  :param client_login_banner: Customizable text that will be displayed in a banner on AWS provided clients when a VPN session is established. UTF-8 encoded characters only. Maximum of 1400 characters. Default: - no banner is presented to the client
24246
24299
  :param client_route_enforcement_options: Options for Client Route Enforcement. Client Route Enforcement is a feature of Client VPN that helps enforce administrator defined routes on devices connected through the VPN. This feature helps improve your security posture by ensuring that network traffic originating from a connected client is not inadvertently sent outside the VPN tunnel. Default: undefined - AWS Client VPN default setting is disable client route enforcement
24247
24300
  :param description: A brief description of the Client VPN endpoint. Default: - no description
24301
+ :param disconnect_on_session_timeout: Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeout`` is reached. If ``true``, users are prompted to reconnect client VPN. If ``false``, client VPN attempts to reconnect automatically. Default: undefined - AWS Client VPN default is true
24248
24302
  :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. Default: - use the DNS address configured on the device
24249
24303
  :param logging: Whether to enable connections logging. Default: true
24250
24304
  :param log_group: A CloudWatch Logs log group for connection logging. Default: - a new group is created
@@ -24291,6 +24345,7 @@ class ClientVpnEndpointProps(ClientVpnEndpointOptions):
24291
24345
  enforced=False
24292
24346
  ),
24293
24347
  description="description",
24348
+ disconnect_on_session_timeout=False,
24294
24349
  dns_servers=["dnsServers"],
24295
24350
  logging=False,
24296
24351
  log_group=log_group,
@@ -24326,6 +24381,7 @@ class ClientVpnEndpointProps(ClientVpnEndpointOptions):
24326
24381
  check_type(argname="argument client_login_banner", value=client_login_banner, expected_type=type_hints["client_login_banner"])
24327
24382
  check_type(argname="argument client_route_enforcement_options", value=client_route_enforcement_options, expected_type=type_hints["client_route_enforcement_options"])
24328
24383
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
24384
+ check_type(argname="argument disconnect_on_session_timeout", value=disconnect_on_session_timeout, expected_type=type_hints["disconnect_on_session_timeout"])
24329
24385
  check_type(argname="argument dns_servers", value=dns_servers, expected_type=type_hints["dns_servers"])
24330
24386
  check_type(argname="argument logging", value=logging, expected_type=type_hints["logging"])
24331
24387
  check_type(argname="argument log_group", value=log_group, expected_type=type_hints["log_group"])
@@ -24356,6 +24412,8 @@ class ClientVpnEndpointProps(ClientVpnEndpointOptions):
24356
24412
  self._values["client_route_enforcement_options"] = client_route_enforcement_options
24357
24413
  if description is not None:
24358
24414
  self._values["description"] = description
24415
+ if disconnect_on_session_timeout is not None:
24416
+ self._values["disconnect_on_session_timeout"] = disconnect_on_session_timeout
24359
24417
  if dns_servers is not None:
24360
24418
  self._values["dns_servers"] = dns_servers
24361
24419
  if logging is not None:
@@ -24476,6 +24534,20 @@ class ClientVpnEndpointProps(ClientVpnEndpointOptions):
24476
24534
  result = self._values.get("description")
24477
24535
  return typing.cast(typing.Optional[builtins.str], result)
24478
24536
 
24537
+ @builtins.property
24538
+ def disconnect_on_session_timeout(self) -> typing.Optional[builtins.bool]:
24539
+ '''Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeout`` is reached.
24540
+
24541
+ If ``true``, users are prompted to reconnect client VPN.
24542
+ If ``false``, client VPN attempts to reconnect automatically.
24543
+
24544
+ :default: undefined - AWS Client VPN default is true
24545
+
24546
+ :see: https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/cvpn-working-max-duration.html
24547
+ '''
24548
+ result = self._values.get("disconnect_on_session_timeout")
24549
+ return typing.cast(typing.Optional[builtins.bool], result)
24550
+
24479
24551
  @builtins.property
24480
24552
  def dns_servers(self) -> typing.Optional[typing.List[builtins.str]]:
24481
24553
  '''Information about the DNS servers to be used for DNS resolution.
@@ -25984,6 +26056,9 @@ class CpuManufacturer(enum.Enum):
25984
26056
  propagate_tags=ecs.PropagateManagedInstancesTags.CAPACITY_PROVIDER
25985
26057
  )
25986
26058
 
26059
+ # Optionally configure security group rules using IConnectable interface
26060
+ mi_capacity_provider.connections.allow_from(ec2.Peer.ipv4(vpc.vpc_cidr_block), ec2.Port.tcp(80))
26061
+
25987
26062
  # Add the capacity provider to the cluster
25988
26063
  cluster.add_managed_instances_capacity_provider(mi_capacity_provider)
25989
26064
 
@@ -33726,6 +33801,7 @@ class IVpc(_IResource_c80c4260, IVPCRef, typing_extensions.Protocol):
33726
33801
  client_login_banner: typing.Optional[builtins.str] = None,
33727
33802
  client_route_enforcement_options: typing.Optional[typing.Union[ClientRouteEnforcementOptions, typing.Dict[builtins.str, typing.Any]]] = None,
33728
33803
  description: typing.Optional[builtins.str] = None,
33804
+ disconnect_on_session_timeout: typing.Optional[builtins.bool] = None,
33729
33805
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
33730
33806
  logging: typing.Optional[builtins.bool] = None,
33731
33807
  log_group: typing.Optional[_ILogGroup_3c4fa718] = None,
@@ -33750,6 +33826,7 @@ class IVpc(_IResource_c80c4260, IVPCRef, typing_extensions.Protocol):
33750
33826
  :param client_login_banner: Customizable text that will be displayed in a banner on AWS provided clients when a VPN session is established. UTF-8 encoded characters only. Maximum of 1400 characters. Default: - no banner is presented to the client
33751
33827
  :param client_route_enforcement_options: Options for Client Route Enforcement. Client Route Enforcement is a feature of Client VPN that helps enforce administrator defined routes on devices connected through the VPN. This feature helps improve your security posture by ensuring that network traffic originating from a connected client is not inadvertently sent outside the VPN tunnel. Default: undefined - AWS Client VPN default setting is disable client route enforcement
33752
33828
  :param description: A brief description of the Client VPN endpoint. Default: - no description
33829
+ :param disconnect_on_session_timeout: Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeout`` is reached. If ``true``, users are prompted to reconnect client VPN. If ``false``, client VPN attempts to reconnect automatically. Default: undefined - AWS Client VPN default is true
33753
33830
  :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. Default: - use the DNS address configured on the device
33754
33831
  :param logging: Whether to enable connections logging. Default: true
33755
33832
  :param log_group: A CloudWatch Logs log group for connection logging. Default: - a new group is created
@@ -33977,6 +34054,7 @@ class _IVpcProxy(
33977
34054
  client_login_banner: typing.Optional[builtins.str] = None,
33978
34055
  client_route_enforcement_options: typing.Optional[typing.Union[ClientRouteEnforcementOptions, typing.Dict[builtins.str, typing.Any]]] = None,
33979
34056
  description: typing.Optional[builtins.str] = None,
34057
+ disconnect_on_session_timeout: typing.Optional[builtins.bool] = None,
33980
34058
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
33981
34059
  logging: typing.Optional[builtins.bool] = None,
33982
34060
  log_group: typing.Optional[_ILogGroup_3c4fa718] = None,
@@ -34001,6 +34079,7 @@ class _IVpcProxy(
34001
34079
  :param client_login_banner: Customizable text that will be displayed in a banner on AWS provided clients when a VPN session is established. UTF-8 encoded characters only. Maximum of 1400 characters. Default: - no banner is presented to the client
34002
34080
  :param client_route_enforcement_options: Options for Client Route Enforcement. Client Route Enforcement is a feature of Client VPN that helps enforce administrator defined routes on devices connected through the VPN. This feature helps improve your security posture by ensuring that network traffic originating from a connected client is not inadvertently sent outside the VPN tunnel. Default: undefined - AWS Client VPN default setting is disable client route enforcement
34003
34081
  :param description: A brief description of the Client VPN endpoint. Default: - no description
34082
+ :param disconnect_on_session_timeout: Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeout`` is reached. If ``true``, users are prompted to reconnect client VPN. If ``false``, client VPN attempts to reconnect automatically. Default: undefined - AWS Client VPN default is true
34004
34083
  :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. Default: - use the DNS address configured on the device
34005
34084
  :param logging: Whether to enable connections logging. Default: true
34006
34085
  :param log_group: A CloudWatch Logs log group for connection logging. Default: - a new group is created
@@ -34026,6 +34105,7 @@ class _IVpcProxy(
34026
34105
  client_login_banner=client_login_banner,
34027
34106
  client_route_enforcement_options=client_route_enforcement_options,
34028
34107
  description=description,
34108
+ disconnect_on_session_timeout=disconnect_on_session_timeout,
34029
34109
  dns_servers=dns_servers,
34030
34110
  logging=logging,
34031
34111
  log_group=log_group,
@@ -37179,6 +37259,14 @@ class InstanceClass(enum.Enum):
37179
37259
  '''Compute optimized instances based on Intel Xeon Scalable (Sapphire Rapids) processors, 7th generation C7i-flex instances efficiently use compute resources to deliver a baseline level of performance with the ability to scale up to the full compute performance a majority of the time.'''
37180
37260
  C7I_FLEX = "C7I_FLEX"
37181
37261
  '''Compute optimized instances based on Intel Xeon Scalable (Sapphire Rapids) processors, 7th generation C7i-flex instances efficiently use compute resources to deliver a baseline level of performance with the ability to scale up to the full compute performance a majority of the time.'''
37262
+ COMPUTE8_INTEL = "COMPUTE8_INTEL"
37263
+ '''Compute optimized instances based on custom Intel Xeon 6 processors, available only on AWS, 8th generation.'''
37264
+ C8I = "C8I"
37265
+ '''Compute optimized instances based on custom Intel Xeon 6 processors, available only on AWS, 8th generation.'''
37266
+ COMPUTE8_INTEL_FLEX = "COMPUTE8_INTEL_FLEX"
37267
+ '''Compute optimized instances based on custom Intel Xeon 6 processors, available only on AWS, 8th generation C8i-flex instances efficiently use compute resources to deliver a baseline level of performance with the ability to scale up to the full compute performance a majority of the time.'''
37268
+ C8I_FLEX = "C8I_FLEX"
37269
+ '''Compute optimized instances based on custom Intel Xeon 6 processors, available only on AWS, 8th generation C8i-flex instances efficiently use compute resources to deliver a baseline level of performance with the ability to scale up to the full compute performance a majority of the time.'''
37182
37270
  COMPUTE7_AMD = "COMPUTE7_AMD"
37183
37271
  '''Compute optimized instances based on 4th generation AMD EPYC (codename Genoa), 7th generation.'''
37184
37272
  C7A = "C7A"
@@ -37477,6 +37565,10 @@ class InstanceClass(enum.Enum):
37477
37565
  '''Standard instances based on 4th generation AMD EPYC (codename Genoa), 7th generation.'''
37478
37566
  M7A = "M7A"
37479
37567
  '''Standard instances based on 4th generation AMD EPYC (codename Genoa), 7th generation.'''
37568
+ STANDARD8_AMD = "STANDARD8_AMD"
37569
+ '''Standard instances based on 5th generation AMD EPYC (formerly code named Turin), 8th generation.'''
37570
+ M8A = "M8A"
37571
+ '''Standard instances based on 5th generation AMD EPYC (formerly code named Turin), 8th generation.'''
37480
37572
  HIGH_COMPUTE_MEMORY1 = "HIGH_COMPUTE_MEMORY1"
37481
37573
  '''High memory and compute capacity instances, 1st generation.'''
37482
37574
  Z1D = "Z1D"
@@ -38679,6 +38771,9 @@ class InstanceRequirementsConfig:
38679
38771
  propagate_tags=ecs.PropagateManagedInstancesTags.CAPACITY_PROVIDER
38680
38772
  )
38681
38773
 
38774
+ # Optionally configure security group rules using IConnectable interface
38775
+ mi_capacity_provider.connections.allow_from(ec2.Peer.ipv4(vpc.vpc_cidr_block), ec2.Port.tcp(80))
38776
+
38682
38777
  # Add the capacity provider to the cluster
38683
38778
  cluster.add_managed_instances_capacity_provider(mi_capacity_provider)
38684
38779
 
@@ -39672,6 +39767,16 @@ class InterfaceVpcEndpointAwsService(
39672
39767
  def BEDROCK_AGENT_RUNTIME(cls) -> "InterfaceVpcEndpointAwsService":
39673
39768
  return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "BEDROCK_AGENT_RUNTIME"))
39674
39769
 
39770
+ @jsii.python.classproperty
39771
+ @jsii.member(jsii_name="BEDROCK_AGENTCORE")
39772
+ def BEDROCK_AGENTCORE(cls) -> "InterfaceVpcEndpointAwsService":
39773
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "BEDROCK_AGENTCORE"))
39774
+
39775
+ @jsii.python.classproperty
39776
+ @jsii.member(jsii_name="BEDROCK_AGENTCORE_GATEWAY")
39777
+ def BEDROCK_AGENTCORE_GATEWAY(cls) -> "InterfaceVpcEndpointAwsService":
39778
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "BEDROCK_AGENTCORE_GATEWAY"))
39779
+
39675
39780
  @jsii.python.classproperty
39676
39781
  @jsii.member(jsii_name="BEDROCK_DATA_AUTOMATION")
39677
39782
  def BEDROCK_DATA_AUTOMATION(cls) -> "InterfaceVpcEndpointAwsService":
@@ -47310,7 +47415,7 @@ class Peer(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.aws_ec2.Peer"):
47310
47415
 
47311
47416
  cluster = msk.Cluster(self, "Cluster",
47312
47417
  cluster_name="myCluster",
47313
- kafka_version=msk.KafkaVersion.V4_0_X_KRAFT,
47418
+ kafka_version=msk.KafkaVersion.V4_1_X_KRAFT,
47314
47419
  vpc=vpc
47315
47420
  )
47316
47421
 
@@ -47632,20 +47737,25 @@ class Port(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.aws_ec2.Port"):
47632
47737
 
47633
47738
  Example::
47634
47739
 
47635
- # vpc: ec2.Vpc
47740
+ # load_balancer: elbv2.ApplicationLoadBalancer
47636
47741
 
47637
- cluster = msk.Cluster(self, "Cluster",
47638
- cluster_name="myCluster",
47639
- kafka_version=msk.KafkaVersion.V4_0_X_KRAFT,
47742
+
47743
+ vpc = ec2.Vpc(self, "MyVPC")
47744
+ fleet = codebuild.Fleet(self, "MyProject",
47745
+ compute_type=codebuild.FleetComputeType.MEDIUM,
47746
+ environment_type=codebuild.EnvironmentType.LINUX_CONTAINER,
47747
+ base_capacity=1,
47640
47748
  vpc=vpc
47641
47749
  )
47642
47750
 
47643
- cluster.connections.allow_from(
47644
- ec2.Peer.ipv4("1.2.3.4/8"),
47645
- ec2.Port.tcp(2181))
47646
- cluster.connections.allow_from(
47647
- ec2.Peer.ipv4("1.2.3.4/8"),
47648
- ec2.Port.tcp(9094))
47751
+ fleet.connections.allow_to(load_balancer, ec2.Port.tcp(443))
47752
+
47753
+ project = codebuild.Project(self, "MyProject",
47754
+ environment=codebuild.BuildEnvironment(
47755
+ fleet=fleet
47756
+ ),
47757
+ build_spec=codebuild.BuildSpec.from_object({})
47758
+ )
47649
47759
  '''
47650
47760
 
47651
47761
  def __init__(
@@ -54786,6 +54896,7 @@ class Vpc(
54786
54896
  client_login_banner: typing.Optional[builtins.str] = None,
54787
54897
  client_route_enforcement_options: typing.Optional[typing.Union[ClientRouteEnforcementOptions, typing.Dict[builtins.str, typing.Any]]] = None,
54788
54898
  description: typing.Optional[builtins.str] = None,
54899
+ disconnect_on_session_timeout: typing.Optional[builtins.bool] = None,
54789
54900
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
54790
54901
  logging: typing.Optional[builtins.bool] = None,
54791
54902
  log_group: typing.Optional[_ILogGroup_3c4fa718] = None,
@@ -54810,6 +54921,7 @@ class Vpc(
54810
54921
  :param client_login_banner: Customizable text that will be displayed in a banner on AWS provided clients when a VPN session is established. UTF-8 encoded characters only. Maximum of 1400 characters. Default: - no banner is presented to the client
54811
54922
  :param client_route_enforcement_options: Options for Client Route Enforcement. Client Route Enforcement is a feature of Client VPN that helps enforce administrator defined routes on devices connected through the VPN. This feature helps improve your security posture by ensuring that network traffic originating from a connected client is not inadvertently sent outside the VPN tunnel. Default: undefined - AWS Client VPN default setting is disable client route enforcement
54812
54923
  :param description: A brief description of the Client VPN endpoint. Default: - no description
54924
+ :param disconnect_on_session_timeout: Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeout`` is reached. If ``true``, users are prompted to reconnect client VPN. If ``false``, client VPN attempts to reconnect automatically. Default: undefined - AWS Client VPN default is true
54813
54925
  :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. Default: - use the DNS address configured on the device
54814
54926
  :param logging: Whether to enable connections logging. Default: true
54815
54927
  :param log_group: A CloudWatch Logs log group for connection logging. Default: - a new group is created
@@ -54835,6 +54947,7 @@ class Vpc(
54835
54947
  client_login_banner=client_login_banner,
54836
54948
  client_route_enforcement_options=client_route_enforcement_options,
54837
54949
  description=description,
54950
+ disconnect_on_session_timeout=disconnect_on_session_timeout,
54838
54951
  dns_servers=dns_servers,
54839
54952
  logging=logging,
54840
54953
  log_group=log_group,
@@ -58928,7 +59041,7 @@ class CfnCapacityReservation(
58928
59041
  :param instance_platform: The type of operating system for which to reserve capacity.
58929
59042
  :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, T, and G 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* .
58930
59043
  :param availability_zone: The Availability Zone in which to create the Capacity Reservation.
58931
- :param availability_zone_id: The Availability Zone ID of the Capacity Reservation.
59044
+ :param availability_zone_id: The ID of the Availability Zone in which the capacity is reserved.
58932
59045
  :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.
58933
59046
  :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.
58934
59047
  :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`` .
@@ -59097,7 +59210,7 @@ class CfnCapacityReservation(
59097
59210
  @builtins.property
59098
59211
  @jsii.member(jsii_name="attrCreateDate")
59099
59212
  def attr_create_date(self) -> builtins.str:
59100
- '''The date and time at which the Capacity Reservation was created.
59213
+ '''The date and time the Capacity Reservation was created.
59101
59214
 
59102
59215
  :cloudformationAttribute: CreateDate
59103
59216
  '''
@@ -59155,7 +59268,7 @@ class CfnCapacityReservation(
59155
59268
  @builtins.property
59156
59269
  @jsii.member(jsii_name="attrStartDate")
59157
59270
  def attr_start_date(self) -> builtins.str:
59158
- '''The date and time at which the Capacity Reservation was started.
59271
+ '''The date and time the Capacity Reservation was started.
59159
59272
 
59160
59273
  :cloudformationAttribute: StartDate
59161
59274
  '''
@@ -59276,7 +59389,7 @@ class CfnCapacityReservation(
59276
59389
  @builtins.property
59277
59390
  @jsii.member(jsii_name="availabilityZoneId")
59278
59391
  def availability_zone_id(self) -> typing.Optional[builtins.str]:
59279
- '''The Availability Zone ID of the Capacity Reservation.'''
59392
+ '''The ID of the Availability Zone in which the capacity is reserved.'''
59280
59393
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "availabilityZoneId"))
59281
59394
 
59282
59395
  @availability_zone_id.setter
@@ -81415,7 +81528,8 @@ class CfnNatGateway(
81415
81528
  tags=[CfnTag(
81416
81529
  key="key",
81417
81530
  value="value"
81418
- )]
81531
+ )],
81532
+ vpc_id="vpcId"
81419
81533
  )
81420
81534
  '''
81421
81535
 
@@ -81433,6 +81547,7 @@ class CfnNatGateway(
81433
81547
  secondary_private_ip_addresses: typing.Optional[typing.Sequence[builtins.str]] = None,
81434
81548
  subnet_id: typing.Optional[builtins.str] = None,
81435
81549
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
81550
+ vpc_id: typing.Optional[builtins.str] = None,
81436
81551
  ) -> None:
81437
81552
  '''
81438
81553
  :param scope: Scope in which this resource is defined.
@@ -81446,6 +81561,7 @@ class CfnNatGateway(
81446
81561
  :param secondary_private_ip_addresses: Secondary private IPv4 addresses. For more information about secondary addresses, see `Create a NAT gateway <https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating>`_ in the *Amazon Virtual Private Cloud User Guide* . ``SecondaryPrivateIpAddressCount`` and ``SecondaryPrivateIpAddresses`` cannot be set at the same time.
81447
81562
  :param subnet_id: The ID of the subnet in which the NAT gateway is located.
81448
81563
  :param tags: The tags for the NAT gateway.
81564
+ :param vpc_id: The ID of the VPC in which the NAT gateway is located.
81449
81565
  '''
81450
81566
  if __debug__:
81451
81567
  type_hints = typing.get_type_hints(_typecheckingstub__4d23f1a46df0174ce142c0ff05ac9cb901ecac30141c8b466b44569b409414aa)
@@ -81461,6 +81577,7 @@ class CfnNatGateway(
81461
81577
  secondary_private_ip_addresses=secondary_private_ip_addresses,
81462
81578
  subnet_id=subnet_id,
81463
81579
  tags=tags,
81580
+ vpc_id=vpc_id,
81464
81581
  )
81465
81582
 
81466
81583
  jsii.create(self.__class__, self, [scope, id, props])
@@ -81516,6 +81633,14 @@ class CfnNatGateway(
81516
81633
  '''The CloudFormation resource type name for this resource class.'''
81517
81634
  return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
81518
81635
 
81636
+ @builtins.property
81637
+ @jsii.member(jsii_name="attrEniId")
81638
+ def attr_eni_id(self) -> builtins.str:
81639
+ '''
81640
+ :cloudformationAttribute: EniId
81641
+ '''
81642
+ return typing.cast(builtins.str, jsii.get(self, "attrEniId"))
81643
+
81519
81644
  @builtins.property
81520
81645
  @jsii.member(jsii_name="attrNatGatewayId")
81521
81646
  def attr_nat_gateway_id(self) -> builtins.str:
@@ -81670,6 +81795,19 @@ class CfnNatGateway(
81670
81795
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
81671
81796
  jsii.set(self, "tagsRaw", value) # pyright: ignore[reportArgumentType]
81672
81797
 
81798
+ @builtins.property
81799
+ @jsii.member(jsii_name="vpcId")
81800
+ def vpc_id(self) -> typing.Optional[builtins.str]:
81801
+ '''The ID of the VPC in which the NAT gateway is located.'''
81802
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "vpcId"))
81803
+
81804
+ @vpc_id.setter
81805
+ def vpc_id(self, value: typing.Optional[builtins.str]) -> None:
81806
+ if __debug__:
81807
+ type_hints = typing.get_type_hints(_typecheckingstub__1a7629fb99b0083bc9b9f7b7909bf15223816d1751b43e5e09c5e00cb6f63a09)
81808
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
81809
+ jsii.set(self, "vpcId", value) # pyright: ignore[reportArgumentType]
81810
+
81673
81811
 
81674
81812
  @jsii.implements(_IInspectable_c2943556, INetworkAclRef, _ITaggable_36806126)
81675
81813
  class CfnNetworkAcl(
@@ -110904,11 +111042,11 @@ class CfnVolume(
110904
111042
  :param availability_zone: The ID of the Availability Zone in which to create the volume. For example, ``us-east-1a`` . Either ``AvailabilityZone`` or ``AvailabilityZoneId`` must be specified, but not both.
110905
111043
  :param auto_enable_io: Indicates whether the volume is auto-enabled for I/O operations. By default, Amazon EBS disables I/O to the volume from attached EC2 instances when it determines that a volume's data is potentially inconsistent. If the consistency of the volume is not a concern, and you prefer that the volume be made available immediately if it's impaired, you can configure the volume to automatically enable I/O.
110906
111044
  :param encrypted: Indicates whether the volume should be encrypted. The effect of setting the encryption state to ``true`` depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see `Encryption by default <https://docs.aws.amazon.com/ebs/latest/userguide/work-with-ebs-encr.html#encryption-by-default>`_ in the *Amazon EBS User Guide* . Encrypted Amazon EBS volumes must be attached to instances that support Amazon EBS encryption. For more information, see `Supported instance types <https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption-requirements.html#ebs-encryption_supported_instances>`_ .
110907
- :param iops: The number of I/O operations per second (IOPS). For ``gp3`` , ``io1`` , and ``io2`` volumes, this represents the number of IOPS that are provisioned for the volume. For ``gp2`` volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. The following are the supported values for each volume type: - ``gp3`` : 3,000 - 80,000 IOPS - ``io1`` : 100 - 64,000 IOPS - ``io2`` : 100 - 256,000 IOPS For ``io2`` volumes, you can achieve up to 256,000 IOPS on `instances built on the Nitro System <https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html>`_ . On other instances, you can achieve performance up to 32,000 IOPS. This parameter is required for ``io1`` and ``io2`` volumes. The default for ``gp3`` volumes is 3,000 IOPS. This parameter is not supported for ``gp2`` , ``st1`` , ``sc1`` , or ``standard`` volumes.
111045
+ :param iops: The number of I/O operations per second (IOPS) to provision for the volume. Required for ``io1`` and ``io2`` volumes. Optional for ``gp3`` volumes. Omit for all other volume types. Valid ranges: - gp3: ``3,000`` ( *default* ) ``- 80,000`` IOPS - io1: ``100 - 64,000`` IOPS - io2: ``100 - 256,000`` IOPS .. epigraph:: `Instances built on the Nitro System <https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html>`_ can support up to 256,000 IOPS. Other instances can support up to 32,000 IOPS.
110908
111046
  :param kms_key_id: The identifier of the AWS KMS key to use for Amazon EBS encryption. If ``KmsKeyId`` is specified, the encrypted state must be ``true`` . If you omit this property and your account is enabled for encryption by default, or *Encrypted* is set to ``true`` , then the volume is encrypted using the default key specified for your account. If your account does not have a default key, then the volume is encrypted using the AWS managed key . Alternatively, if you want to specify a different key, you can specify one of the following: - Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab. - Key alias. Specify the alias for the key, prefixed with ``alias/`` . For example, for a key with the alias ``my_cmk`` , use ``alias/my_cmk`` . Or to specify the AWS managed key , use ``alias/aws/ebs`` . - Key ARN. For example, arn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab. - Alias ARN. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias.
110909
111047
  :param multi_attach_enabled: Indicates whether Amazon EBS Multi-Attach is enabled. AWS CloudFormation does not currently support updating a single-attach volume to be multi-attach enabled, updating a multi-attach enabled volume to be single-attach, or updating the size or number of I/O operations per second (IOPS) of a multi-attach enabled volume.
110910
111048
  :param outpost_arn: The Amazon Resource Name (ARN) of the Outpost.
110911
- :param size: The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size. The following are the supported volumes sizes for each volume type: - ``gp2`` : 1 - 16,384 GiB - ``gp3`` : 1 - 65,536 GiB - ``io1`` : 4 - 16,384 GiB - ``io2`` : 4 - 65,536 GiB - ``st1`` and ``sc1`` : 125 - 16,384 GiB - ``standard`` : 1 - 1024 GiB
111049
+ :param size: The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size, and you can specify a volume size that is equal to or larger than the snapshot size. Valid sizes: - gp2: ``1 - 16,384`` GiB - gp3: ``1 - 65,536`` GiB - io1: ``4 - 16,384`` GiB - io2: ``4 - 65,536`` GiB - st1 and sc1: ``125 - 16,384`` GiB - standard: ``1 - 1024`` GiB
110912
111050
  :param snapshot_id: The snapshot from which to create the volume. You must specify either a snapshot ID or a volume size.
110913
111051
  :param tags: The tags to apply to the volume during creation.
110914
111052
  :param throughput: The throughput to provision for a volume, with a maximum of 1,000 MiB/s. This parameter is valid only for ``gp3`` volumes. The default value is 125. Valid Range: Minimum value of 125. Maximum value of 1000.
@@ -111069,7 +111207,7 @@ class CfnVolume(
111069
111207
  @builtins.property
111070
111208
  @jsii.member(jsii_name="iops")
111071
111209
  def iops(self) -> typing.Optional[jsii.Number]:
111072
- '''The number of I/O operations per second (IOPS).'''
111210
+ '''The number of I/O operations per second (IOPS) to provision for the volume.'''
111073
111211
  return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "iops"))
111074
111212
 
111075
111213
  @iops.setter
@@ -119229,6 +119367,7 @@ class ClientVpnEndpoint(
119229
119367
  client_login_banner: typing.Optional[builtins.str] = None,
119230
119368
  client_route_enforcement_options: typing.Optional[typing.Union[ClientRouteEnforcementOptions, typing.Dict[builtins.str, typing.Any]]] = None,
119231
119369
  description: typing.Optional[builtins.str] = None,
119370
+ disconnect_on_session_timeout: typing.Optional[builtins.bool] = None,
119232
119371
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
119233
119372
  logging: typing.Optional[builtins.bool] = None,
119234
119373
  log_group: typing.Optional[_ILogGroup_3c4fa718] = None,
@@ -119254,6 +119393,7 @@ class ClientVpnEndpoint(
119254
119393
  :param client_login_banner: Customizable text that will be displayed in a banner on AWS provided clients when a VPN session is established. UTF-8 encoded characters only. Maximum of 1400 characters. Default: - no banner is presented to the client
119255
119394
  :param client_route_enforcement_options: Options for Client Route Enforcement. Client Route Enforcement is a feature of Client VPN that helps enforce administrator defined routes on devices connected through the VPN. This feature helps improve your security posture by ensuring that network traffic originating from a connected client is not inadvertently sent outside the VPN tunnel. Default: undefined - AWS Client VPN default setting is disable client route enforcement
119256
119395
  :param description: A brief description of the Client VPN endpoint. Default: - no description
119396
+ :param disconnect_on_session_timeout: Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeout`` is reached. If ``true``, users are prompted to reconnect client VPN. If ``false``, client VPN attempts to reconnect automatically. Default: undefined - AWS Client VPN default is true
119257
119397
  :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. Default: - use the DNS address configured on the device
119258
119398
  :param logging: Whether to enable connections logging. Default: true
119259
119399
  :param log_group: A CloudWatch Logs log group for connection logging. Default: - a new group is created
@@ -119281,6 +119421,7 @@ class ClientVpnEndpoint(
119281
119421
  client_login_banner=client_login_banner,
119282
119422
  client_route_enforcement_options=client_route_enforcement_options,
119283
119423
  description=description,
119424
+ disconnect_on_session_timeout=disconnect_on_session_timeout,
119284
119425
  dns_servers=dns_servers,
119285
119426
  logging=logging,
119286
119427
  log_group=log_group,
@@ -121400,6 +121541,7 @@ def _typecheckingstub__1aba83edf7a8e3f14e1d4f9ca76c7049f7f7c569d2ffb43bcad65b330
121400
121541
  secondary_private_ip_addresses: typing.Optional[typing.Sequence[builtins.str]] = None,
121401
121542
  subnet_id: typing.Optional[builtins.str] = None,
121402
121543
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
121544
+ vpc_id: typing.Optional[builtins.str] = None,
121403
121545
  ) -> None:
121404
121546
  """Type checking stubs"""
121405
121547
  pass
@@ -122258,6 +122400,7 @@ def _typecheckingstub__73f8593e2e6199f8ae542cff4cbe02f0be09fd9043b8072cbb652d5b0
122258
122400
  client_login_banner: typing.Optional[builtins.str] = None,
122259
122401
  client_route_enforcement_options: typing.Optional[typing.Union[ClientRouteEnforcementOptions, typing.Dict[builtins.str, typing.Any]]] = None,
122260
122402
  description: typing.Optional[builtins.str] = None,
122403
+ disconnect_on_session_timeout: typing.Optional[builtins.bool] = None,
122261
122404
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
122262
122405
  logging: typing.Optional[builtins.bool] = None,
122263
122406
  log_group: typing.Optional[_ILogGroup_3c4fa718] = None,
@@ -122284,6 +122427,7 @@ def _typecheckingstub__8e89ba9082e1bc80500c526e8522c5a90e2a91bd17d985f5932611e0b
122284
122427
  client_login_banner: typing.Optional[builtins.str] = None,
122285
122428
  client_route_enforcement_options: typing.Optional[typing.Union[ClientRouteEnforcementOptions, typing.Dict[builtins.str, typing.Any]]] = None,
122286
122429
  description: typing.Optional[builtins.str] = None,
122430
+ disconnect_on_session_timeout: typing.Optional[builtins.bool] = None,
122287
122431
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
122288
122432
  logging: typing.Optional[builtins.bool] = None,
122289
122433
  log_group: typing.Optional[_ILogGroup_3c4fa718] = None,
@@ -122798,6 +122942,7 @@ def _typecheckingstub__19cdaa7bec0f733a863944b2be6c76392b1e518714158a913370b8de7
122798
122942
  client_login_banner: typing.Optional[builtins.str] = None,
122799
122943
  client_route_enforcement_options: typing.Optional[typing.Union[ClientRouteEnforcementOptions, typing.Dict[builtins.str, typing.Any]]] = None,
122800
122944
  description: typing.Optional[builtins.str] = None,
122945
+ disconnect_on_session_timeout: typing.Optional[builtins.bool] = None,
122801
122946
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
122802
122947
  logging: typing.Optional[builtins.bool] = None,
122803
122948
  log_group: typing.Optional[_ILogGroup_3c4fa718] = None,
@@ -124810,6 +124955,7 @@ def _typecheckingstub__04f8b7e933af74b695401b45c9c6b308e4684ecde3cb9a2a1e358a336
124810
124955
  client_login_banner: typing.Optional[builtins.str] = None,
124811
124956
  client_route_enforcement_options: typing.Optional[typing.Union[ClientRouteEnforcementOptions, typing.Dict[builtins.str, typing.Any]]] = None,
124812
124957
  description: typing.Optional[builtins.str] = None,
124958
+ disconnect_on_session_timeout: typing.Optional[builtins.bool] = None,
124813
124959
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
124814
124960
  logging: typing.Optional[builtins.bool] = None,
124815
124961
  log_group: typing.Optional[_ILogGroup_3c4fa718] = None,
@@ -128861,6 +129007,7 @@ def _typecheckingstub__4d23f1a46df0174ce142c0ff05ac9cb901ecac30141c8b466b44569b4
128861
129007
  secondary_private_ip_addresses: typing.Optional[typing.Sequence[builtins.str]] = None,
128862
129008
  subnet_id: typing.Optional[builtins.str] = None,
128863
129009
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
129010
+ vpc_id: typing.Optional[builtins.str] = None,
128864
129011
  ) -> None:
128865
129012
  """Type checking stubs"""
128866
129013
  pass
@@ -128939,6 +129086,12 @@ def _typecheckingstub__76a6a3daaab575df04de03efcf802de9ee1357d57a0474a96922bc7d4
128939
129086
  """Type checking stubs"""
128940
129087
  pass
128941
129088
 
129089
+ def _typecheckingstub__1a7629fb99b0083bc9b9f7b7909bf15223816d1751b43e5e09c5e00cb6f63a09(
129090
+ value: typing.Optional[builtins.str],
129091
+ ) -> None:
129092
+ """Type checking stubs"""
129093
+ pass
129094
+
128942
129095
  def _typecheckingstub__63ab91eb0620cbae6ae1a944345b6c561c70134e58fe810193ad3be248faf08e(
128943
129096
  scope: _constructs_77d1e7e8.Construct,
128944
129097
  id: builtins.str,
@@ -135439,6 +135592,7 @@ def _typecheckingstub__9a2422e1dfabadbd7f572317ed37670a87714b6f36fe9da2a01f1e26e
135439
135592
  client_login_banner: typing.Optional[builtins.str] = None,
135440
135593
  client_route_enforcement_options: typing.Optional[typing.Union[ClientRouteEnforcementOptions, typing.Dict[builtins.str, typing.Any]]] = None,
135441
135594
  description: typing.Optional[builtins.str] = None,
135595
+ disconnect_on_session_timeout: typing.Optional[builtins.bool] = None,
135442
135596
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
135443
135597
  logging: typing.Optional[builtins.bool] = None,
135444
135598
  log_group: typing.Optional[_ILogGroup_3c4fa718] = None,
@@ -135583,3 +135737,6 @@ def _typecheckingstub__08d76813e07f02784a1108bd81a7030a5244d286c7db7897110323a0d
135583
135737
  ) -> None:
135584
135738
  """Type checking stubs"""
135585
135739
  pass
135740
+
135741
+ for cls in [ICapacityReservationFleetRef, ICapacityReservationRef, ICarrierGatewayRef, IClientVpnAuthorizationRuleRef, IClientVpnConnectionHandler, IClientVpnEndpoint, IClientVpnEndpointRef, IClientVpnRouteRef, IClientVpnTargetNetworkAssociationRef, IConnectable, ICustomerGatewayRef, IDHCPOptionsRef, IEC2FleetRef, IEIPAssociationRef, IEIPRef, IEgressOnlyInternetGatewayRef, IEnclaveCertificateIamRoleAssociationRef, IFlowLog, IFlowLogRef, IGatewayRouteTableAssociationRef, IGatewayVpcEndpoint, IGatewayVpcEndpointService, IHostRef, IIPAMAllocationRef, IIPAMPoolCidrRef, IIPAMPoolRef, IIPAMRef, IIPAMResourceDiscoveryAssociationRef, IIPAMResourceDiscoveryRef, IIPAMScopeRef, IInstance, IInstanceConnectEndpointRef, IInstanceRef, IInterfaceVpcEndpoint, IInterfaceVpcEndpointService, IInternetGatewayRef, IIpAddresses, IIpPoolRouteTableAssociationRef, IIpv6Addresses, IKeyPair, IKeyPairRef, ILaunchTemplate, ILaunchTemplateRef, ILocalGatewayRouteRef, ILocalGatewayRouteTableRef, ILocalGatewayRouteTableVPCAssociationRef, ILocalGatewayRouteTableVirtualInterfaceGroupAssociationRef, ILocalGatewayVirtualInterfaceGroupRef, ILocalGatewayVirtualInterfaceRef, IMachineImage, INatGatewayRef, INetworkAcl, INetworkAclEntry, INetworkAclEntryRef, INetworkAclRef, INetworkInsightsAccessScopeAnalysisRef, INetworkInsightsAccessScopeRef, INetworkInsightsAnalysisRef, INetworkInsightsPathRef, INetworkInterfaceAttachmentRef, INetworkInterfacePermissionRef, INetworkInterfaceRef, INetworkPerformanceMetricSubscriptionRef, IPeer, IPlacementGroup, IPlacementGroupRef, IPrefixList, IPrefixListRef, IPrivateSubnet, IPublicSubnet, IRouteRef, IRouteServerAssociationRef, IRouteServerEndpointRef, IRouteServerPeerRef, IRouteServerPropagationRef, IRouteServerRef, IRouteTable, IRouteTableRef, ISecurityGroup, ISecurityGroupEgressRef, ISecurityGroupIngressRef, ISecurityGroupRef, ISecurityGroupVpcAssociationRef, ISnapshotBlockPublicAccessRef, ISpotFleetRef, ISubnet, ISubnetCidrBlockRef, ISubnetNetworkAclAssociation, ISubnetNetworkAclAssociationRef, ISubnetRef, ISubnetRouteTableAssociationRef, ITrafficMirrorFilterRef, ITrafficMirrorFilterRuleRef, ITrafficMirrorSessionRef, ITrafficMirrorTargetRef, ITransitGatewayAttachmentRef, ITransitGatewayConnectPeerRef, ITransitGatewayConnectRef, ITransitGatewayMulticastDomainAssociationRef, ITransitGatewayMulticastDomainRef, ITransitGatewayMulticastGroupMemberRef, ITransitGatewayMulticastGroupSourceRef, ITransitGatewayPeeringAttachmentRef, ITransitGatewayRef, ITransitGatewayRouteRef, ITransitGatewayRouteTableAssociationRef, ITransitGatewayRouteTablePropagationRef, ITransitGatewayRouteTableRef, ITransitGatewayVpcAttachmentRef, IVPCBlockPublicAccessExclusionRef, IVPCBlockPublicAccessOptionsRef, IVPCCidrBlockRef, IVPCDHCPOptionsAssociationRef, IVPCEndpointConnectionNotificationRef, IVPCEndpointRef, IVPCEndpointServicePermissionsRef, IVPCEndpointServiceRef, IVPCGatewayAttachmentRef, IVPCPeeringConnectionRef, IVPCRef, IVPNConnectionRef, IVPNConnectionRouteRef, IVPNGatewayRef, IVPNGatewayRoutePropagationRef, IVerifiedAccessEndpointRef, IVerifiedAccessGroupRef, IVerifiedAccessInstanceRef, IVerifiedAccessTrustProviderRef, IVolume, IVolumeAttachmentRef, IVolumeRef, IVpc, IVpcEndpoint, IVpcEndpointService, IVpcEndpointServiceLoadBalancer, IVpnConnection, IVpnGateway]:
135742
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])