aws-cdk-lib 2.220.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 (288) hide show
  1. aws_cdk/__init__.py +21 -18
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.220.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 +4 -1
  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 +3 -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 +3 -29
  34. aws_cdk/aws_backupgateway/__init__.py +3 -0
  35. aws_cdk/aws_batch/__init__.py +3 -0
  36. aws_cdk/aws_bcmdataexports/__init__.py +3 -0
  37. aws_cdk/aws_bedrock/__init__.py +9 -29
  38. aws_cdk/aws_bedrockagentcore/__init__.py +782 -169
  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_cloudtrail/__init__.py +3 -0
  51. aws_cdk/aws_cloudwatch/__init__.py +3 -0
  52. aws_cdk/aws_codeartifact/__init__.py +3 -0
  53. aws_cdk/aws_codebuild/__init__.py +3 -0
  54. aws_cdk/aws_codecommit/__init__.py +3 -0
  55. aws_cdk/aws_codeconnections/__init__.py +3 -0
  56. aws_cdk/aws_codedeploy/__init__.py +3 -0
  57. aws_cdk/aws_codeguruprofiler/__init__.py +3 -0
  58. aws_cdk/aws_codegurureviewer/__init__.py +3 -0
  59. aws_cdk/aws_codepipeline/__init__.py +3 -0
  60. aws_cdk/aws_codepipeline_actions/__init__.py +3 -0
  61. aws_cdk/aws_codestar/__init__.py +3 -0
  62. aws_cdk/aws_codestarconnections/__init__.py +3 -0
  63. aws_cdk/aws_codestarnotifications/__init__.py +3 -0
  64. aws_cdk/aws_cognito/__init__.py +3 -0
  65. aws_cdk/aws_cognito_identitypool/__init__.py +3 -0
  66. aws_cdk/aws_comprehend/__init__.py +3 -0
  67. aws_cdk/aws_config/__init__.py +3 -0
  68. aws_cdk/aws_connect/__init__.py +1232 -2
  69. aws_cdk/aws_connectcampaigns/__init__.py +3 -0
  70. aws_cdk/aws_connectcampaignsv2/__init__.py +3 -0
  71. aws_cdk/aws_controltower/__init__.py +3 -0
  72. aws_cdk/aws_cur/__init__.py +3 -0
  73. aws_cdk/aws_customerprofiles/__init__.py +3 -29
  74. aws_cdk/aws_databrew/__init__.py +3 -0
  75. aws_cdk/aws_datapipeline/__init__.py +3 -0
  76. aws_cdk/aws_datasync/__init__.py +3 -0
  77. aws_cdk/aws_datazone/__init__.py +17 -15
  78. aws_cdk/aws_dax/__init__.py +3 -0
  79. aws_cdk/aws_deadline/__init__.py +3 -0
  80. aws_cdk/aws_detective/__init__.py +3 -0
  81. aws_cdk/aws_devicefarm/__init__.py +3 -0
  82. aws_cdk/aws_devopsguru/__init__.py +3 -0
  83. aws_cdk/aws_directoryservice/__init__.py +3 -0
  84. aws_cdk/aws_dlm/__init__.py +3 -0
  85. aws_cdk/aws_dms/__init__.py +3 -0
  86. aws_cdk/aws_docdb/__init__.py +14 -3
  87. aws_cdk/aws_docdbelastic/__init__.py +3 -0
  88. aws_cdk/aws_dsql/__init__.py +3 -0
  89. aws_cdk/aws_dynamodb/__init__.py +3 -0
  90. aws_cdk/aws_ec2/__init__.py +106 -40
  91. aws_cdk/aws_ecr/__init__.py +156 -33
  92. aws_cdk/aws_ecs/__init__.py +87 -48
  93. aws_cdk/aws_efs/__init__.py +3 -0
  94. aws_cdk/aws_eks/__init__.py +3 -58
  95. aws_cdk/aws_elasticache/__init__.py +3 -0
  96. aws_cdk/aws_elasticbeanstalk/__init__.py +3 -0
  97. aws_cdk/aws_elasticloadbalancing/__init__.py +3 -0
  98. aws_cdk/aws_elasticloadbalancingv2/__init__.py +445 -36
  99. aws_cdk/aws_elasticsearch/__init__.py +3 -0
  100. aws_cdk/aws_emr/__init__.py +3 -0
  101. aws_cdk/aws_emrcontainers/__init__.py +3 -0
  102. aws_cdk/aws_emrserverless/__init__.py +12 -11
  103. aws_cdk/aws_entityresolution/__init__.py +3 -0
  104. aws_cdk/aws_events/__init__.py +73 -29
  105. aws_cdk/aws_events_targets/__init__.py +3 -0
  106. aws_cdk/aws_eventschemas/__init__.py +3 -0
  107. aws_cdk/aws_evidently/__init__.py +3 -0
  108. aws_cdk/aws_evs/__init__.py +3 -0
  109. aws_cdk/aws_finspace/__init__.py +3 -0
  110. aws_cdk/aws_fis/__init__.py +3 -0
  111. aws_cdk/aws_fms/__init__.py +3 -0
  112. aws_cdk/aws_forecast/__init__.py +3 -0
  113. aws_cdk/aws_frauddetector/__init__.py +3 -0
  114. aws_cdk/aws_fsx/__init__.py +3 -0
  115. aws_cdk/aws_gamelift/__init__.py +3 -0
  116. aws_cdk/aws_gameliftstreams/__init__.py +8 -5
  117. aws_cdk/aws_globalaccelerator/__init__.py +3 -0
  118. aws_cdk/aws_glue/__init__.py +11 -80
  119. aws_cdk/aws_grafana/__init__.py +3 -0
  120. aws_cdk/aws_greengrass/__init__.py +3 -0
  121. aws_cdk/aws_greengrassv2/__init__.py +3 -0
  122. aws_cdk/aws_groundstation/__init__.py +3 -0
  123. aws_cdk/aws_guardduty/__init__.py +3 -0
  124. aws_cdk/aws_healthimaging/__init__.py +3 -0
  125. aws_cdk/aws_healthlake/__init__.py +3 -0
  126. aws_cdk/aws_iam/__init__.py +30 -32
  127. aws_cdk/aws_identitystore/__init__.py +3 -0
  128. aws_cdk/aws_imagebuilder/__init__.py +499 -0
  129. aws_cdk/aws_inspector/__init__.py +3 -0
  130. aws_cdk/aws_inspectorv2/__init__.py +3 -0
  131. aws_cdk/aws_internetmonitor/__init__.py +3 -0
  132. aws_cdk/aws_invoicing/__init__.py +3 -0
  133. aws_cdk/aws_iot/__init__.py +3 -0
  134. aws_cdk/aws_iotanalytics/__init__.py +3 -0
  135. aws_cdk/aws_iotcoredeviceadvisor/__init__.py +3 -0
  136. aws_cdk/aws_iotevents/__init__.py +3 -0
  137. aws_cdk/aws_iotfleethub/__init__.py +3 -0
  138. aws_cdk/aws_iotfleetwise/__init__.py +3 -0
  139. aws_cdk/aws_iotsitewise/__init__.py +3 -0
  140. aws_cdk/aws_iotthingsgraph/__init__.py +3 -0
  141. aws_cdk/aws_iottwinmaker/__init__.py +3 -87
  142. aws_cdk/aws_iotwireless/__init__.py +61 -0
  143. aws_cdk/aws_ivs/__init__.py +3 -0
  144. aws_cdk/aws_ivschat/__init__.py +3 -0
  145. aws_cdk/aws_kafkaconnect/__init__.py +3 -0
  146. aws_cdk/aws_kendra/__init__.py +3 -58
  147. aws_cdk/aws_kendraranking/__init__.py +3 -0
  148. aws_cdk/aws_kinesis/__init__.py +3 -0
  149. aws_cdk/aws_kinesisanalytics/__init__.py +3 -0
  150. aws_cdk/aws_kinesisanalyticsv2/__init__.py +3 -0
  151. aws_cdk/aws_kinesisfirehose/__init__.py +1709 -10
  152. aws_cdk/aws_kinesisvideo/__init__.py +3 -29
  153. aws_cdk/aws_kms/__init__.py +3 -0
  154. aws_cdk/aws_lakeformation/__init__.py +3 -0
  155. aws_cdk/aws_lambda/__init__.py +14 -7
  156. aws_cdk/aws_lambda_nodejs/__init__.py +3 -0
  157. aws_cdk/aws_launchwizard/__init__.py +3 -0
  158. aws_cdk/aws_lex/__init__.py +3 -29
  159. aws_cdk/aws_licensemanager/__init__.py +3 -0
  160. aws_cdk/aws_lightsail/__init__.py +3 -0
  161. aws_cdk/aws_location/__init__.py +3 -0
  162. aws_cdk/aws_logs/__init__.py +226 -9
  163. aws_cdk/aws_lookoutequipment/__init__.py +3 -29
  164. aws_cdk/aws_lookoutmetrics/__init__.py +3 -0
  165. aws_cdk/aws_lookoutvision/__init__.py +3 -0
  166. aws_cdk/aws_m2/__init__.py +3 -0
  167. aws_cdk/aws_macie/__init__.py +3 -0
  168. aws_cdk/aws_managedblockchain/__init__.py +3 -0
  169. aws_cdk/aws_mediaconnect/__init__.py +3 -0
  170. aws_cdk/aws_mediaconvert/__init__.py +3 -0
  171. aws_cdk/aws_medialive/__init__.py +171 -33
  172. aws_cdk/aws_mediapackage/__init__.py +3 -0
  173. aws_cdk/aws_mediapackagev2/__init__.py +3 -0
  174. aws_cdk/aws_mediastore/__init__.py +3 -0
  175. aws_cdk/aws_mediatailor/__init__.py +3 -58
  176. aws_cdk/aws_memorydb/__init__.py +3 -0
  177. aws_cdk/aws_mpa/__init__.py +3 -0
  178. aws_cdk/aws_msk/__init__.py +3 -0
  179. aws_cdk/aws_mwaa/__init__.py +3 -0
  180. aws_cdk/aws_neptune/__init__.py +55 -0
  181. aws_cdk/aws_neptunegraph/__init__.py +3 -0
  182. aws_cdk/aws_networkfirewall/__init__.py +3 -0
  183. aws_cdk/aws_networkmanager/__init__.py +3 -0
  184. aws_cdk/aws_nimblestudio/__init__.py +3 -0
  185. aws_cdk/aws_notifications/__init__.py +3 -0
  186. aws_cdk/aws_notificationscontacts/__init__.py +3 -0
  187. aws_cdk/aws_oam/__init__.py +3 -0
  188. aws_cdk/aws_observabilityadmin/__init__.py +171 -137
  189. aws_cdk/aws_odb/__init__.py +4 -1
  190. aws_cdk/aws_omics/__init__.py +3 -0
  191. aws_cdk/aws_opensearchserverless/__init__.py +3 -0
  192. aws_cdk/aws_opensearchservice/__init__.py +3 -0
  193. aws_cdk/aws_opsworks/__init__.py +3 -0
  194. aws_cdk/aws_opsworkscm/__init__.py +3 -0
  195. aws_cdk/aws_organizations/__init__.py +3 -116
  196. aws_cdk/aws_osis/__init__.py +157 -0
  197. aws_cdk/aws_panorama/__init__.py +3 -0
  198. aws_cdk/aws_paymentcryptography/__init__.py +3 -0
  199. aws_cdk/aws_pcaconnectorad/__init__.py +3 -0
  200. aws_cdk/aws_pcaconnectorscep/__init__.py +3 -0
  201. aws_cdk/aws_pcs/__init__.py +3 -0
  202. aws_cdk/aws_personalize/__init__.py +3 -0
  203. aws_cdk/aws_pinpoint/__init__.py +3 -58
  204. aws_cdk/aws_pinpointemail/__init__.py +3 -0
  205. aws_cdk/aws_pipes/__init__.py +3 -0
  206. aws_cdk/aws_proton/__init__.py +3 -0
  207. aws_cdk/aws_qbusiness/__init__.py +3 -174
  208. aws_cdk/aws_qldb/__init__.py +3 -29
  209. aws_cdk/aws_quicksight/__init__.py +418 -411
  210. aws_cdk/aws_ram/__init__.py +3 -0
  211. aws_cdk/aws_rbin/__init__.py +3 -0
  212. aws_cdk/aws_rds/__init__.py +42 -19
  213. aws_cdk/aws_redshift/__init__.py +3 -0
  214. aws_cdk/aws_redshiftserverless/__init__.py +3 -0
  215. aws_cdk/aws_refactorspaces/__init__.py +3 -0
  216. aws_cdk/aws_rekognition/__init__.py +3 -29
  217. aws_cdk/aws_resiliencehub/__init__.py +3 -0
  218. aws_cdk/aws_resourceexplorer2/__init__.py +3 -0
  219. aws_cdk/aws_resourcegroups/__init__.py +3 -0
  220. aws_cdk/aws_robomaker/__init__.py +3 -0
  221. aws_cdk/aws_rolesanywhere/__init__.py +3 -0
  222. aws_cdk/aws_route53/__init__.py +18 -18
  223. aws_cdk/aws_route53_targets/__init__.py +3 -0
  224. aws_cdk/aws_route53profiles/__init__.py +3 -0
  225. aws_cdk/aws_route53recoverycontrol/__init__.py +3 -0
  226. aws_cdk/aws_route53recoveryreadiness/__init__.py +3 -0
  227. aws_cdk/aws_route53resolver/__init__.py +11 -4
  228. aws_cdk/aws_rum/__init__.py +3 -0
  229. aws_cdk/aws_s3/__init__.py +51 -41
  230. aws_cdk/aws_s3_deployment/__init__.py +3 -0
  231. aws_cdk/aws_s3express/__init__.py +3 -0
  232. aws_cdk/aws_s3objectlambda/__init__.py +3 -0
  233. aws_cdk/aws_s3outposts/__init__.py +3 -0
  234. aws_cdk/aws_s3tables/__init__.py +3 -0
  235. aws_cdk/aws_sagemaker/__init__.py +166 -87
  236. aws_cdk/aws_sam/__init__.py +3 -0
  237. aws_cdk/aws_scheduler/__init__.py +3 -29
  238. aws_cdk/aws_sdb/__init__.py +3 -0
  239. aws_cdk/aws_secretsmanager/__init__.py +3 -0
  240. aws_cdk/aws_securityhub/__init__.py +3 -0
  241. aws_cdk/aws_securitylake/__init__.py +3 -0
  242. aws_cdk/aws_servicecatalog/__init__.py +136 -124
  243. aws_cdk/aws_servicecatalogappregistry/__init__.py +3 -0
  244. aws_cdk/aws_servicediscovery/__init__.py +3 -0
  245. aws_cdk/aws_ses/__init__.py +3 -0
  246. aws_cdk/aws_shield/__init__.py +3 -0
  247. aws_cdk/aws_signer/__init__.py +3 -0
  248. aws_cdk/aws_simspaceweaver/__init__.py +3 -0
  249. aws_cdk/aws_smsvoice/__init__.py +3 -29
  250. aws_cdk/aws_sns/__init__.py +3 -0
  251. aws_cdk/aws_sqs/__init__.py +3 -0
  252. aws_cdk/aws_ssm/__init__.py +10 -3
  253. aws_cdk/aws_ssmcontacts/__init__.py +3 -0
  254. aws_cdk/aws_ssmguiconnect/__init__.py +3 -0
  255. aws_cdk/aws_ssmincidents/__init__.py +3 -0
  256. aws_cdk/aws_ssmquicksetup/__init__.py +467 -0
  257. aws_cdk/aws_sso/__init__.py +3 -0
  258. aws_cdk/aws_stepfunctions/__init__.py +23 -19
  259. aws_cdk/aws_stepfunctions_tasks/__init__.py +6 -3
  260. aws_cdk/aws_supportapp/__init__.py +3 -0
  261. aws_cdk/aws_synthetics/__init__.py +59 -26
  262. aws_cdk/aws_systemsmanagersap/__init__.py +3 -0
  263. aws_cdk/aws_timestream/__init__.py +3 -29
  264. aws_cdk/aws_transfer/__init__.py +20 -34
  265. aws_cdk/aws_verifiedpermissions/__init__.py +3 -0
  266. aws_cdk/aws_voiceid/__init__.py +3 -0
  267. aws_cdk/aws_vpclattice/__init__.py +7 -4
  268. aws_cdk/aws_waf/__init__.py +3 -0
  269. aws_cdk/aws_wafregional/__init__.py +3 -0
  270. aws_cdk/aws_wafv2/__init__.py +3 -0
  271. aws_cdk/aws_wisdom/__init__.py +3 -116
  272. aws_cdk/aws_workspaces/__init__.py +3 -0
  273. aws_cdk/aws_workspacesinstances/__init__.py +3 -0
  274. aws_cdk/aws_workspacesthinclient/__init__.py +3 -0
  275. aws_cdk/aws_workspacesweb/__init__.py +3 -0
  276. aws_cdk/aws_xray/__init__.py +3 -0
  277. aws_cdk/cloud_assembly_schema/__init__.py +3 -0
  278. aws_cdk/cx_api/__init__.py +34 -0
  279. aws_cdk/pipelines/__init__.py +3 -0
  280. aws_cdk/region_info/__init__.py +3 -0
  281. aws_cdk/triggers/__init__.py +3 -0
  282. {aws_cdk_lib-2.220.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/METADATA +2 -2
  283. aws_cdk_lib-2.221.0.dist-info/RECORD +313 -0
  284. aws_cdk_lib-2.220.0.dist-info/RECORD +0 -313
  285. {aws_cdk_lib-2.220.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/LICENSE +0 -0
  286. {aws_cdk_lib-2.220.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/NOTICE +0 -0
  287. {aws_cdk_lib-2.220.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/WHEEL +0 -0
  288. {aws_cdk_lib-2.220.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/top_level.txt +0 -0
@@ -1747,6 +1747,7 @@ from ..aws_iam import (
1747
1747
  IGrantable as _IGrantable_71c4f5de,
1748
1748
  IPrincipal as _IPrincipal_539bb2fd,
1749
1749
  IRole as _IRole_235f5d8e,
1750
+ IRoleRef as _IRoleRef_613dafc2,
1750
1751
  PolicyStatement as _PolicyStatement_0fe33853,
1751
1752
  )
1752
1753
  from ..aws_kms import IKey as _IKey_5f11635f, IKeyRef as _IKeyRef_1e82344b
@@ -6404,20 +6405,14 @@ class JsonPath(
6404
6405
 
6405
6406
  Example::
6406
6407
 
6407
- #
6408
- # JSON state input:
6409
- # {
6410
- # "bucketName": "my-bucket",
6411
- # "prefix": "item"
6412
- # }
6413
- #
6414
- distributed_map = sfn.DistributedMap(self, "DistributedMap",
6415
- item_reader=sfn.S3ObjectsItemReader(
6416
- bucket_name_path=sfn.JsonPath.string_at("$.bucketName"),
6417
- prefix=sfn.JsonPath.string_at("$.prefix")
6408
+ tasks.SageMakerCreateModel(self, "Sagemaker",
6409
+ model_name="MyModel",
6410
+ primary_container=tasks.ContainerDefinition(
6411
+ image=tasks.DockerImage.from_json_expression(sfn.JsonPath.string_at("$.Model.imageName")),
6412
+ mode=tasks.Mode.SINGLE_MODEL,
6413
+ model_s3_location=tasks.S3Location.from_json_expression("$.TrainingJob.ModelArtifacts.S3ModelArtifacts")
6418
6414
  )
6419
6415
  )
6420
- distributed_map.item_processor(sfn.Pass(self, "Pass"))
6421
6416
  '''
6422
6417
 
6423
6418
  @jsii.member(jsii_name="array")
@@ -10296,7 +10291,7 @@ class StateMachine(
10296
10291
  logs: typing.Optional[typing.Union[LogOptions, typing.Dict[builtins.str, typing.Any]]] = None,
10297
10292
  query_language: typing.Optional[QueryLanguage] = None,
10298
10293
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
10299
- role: typing.Optional[_IRole_235f5d8e] = None,
10294
+ role: typing.Optional['__IRoleRef_613dafc2__IGrantable_71c4f5de'] = None,
10300
10295
  state_machine_name: typing.Optional[builtins.str] = None,
10301
10296
  state_machine_type: typing.Optional["StateMachineType"] = None,
10302
10297
  timeout: typing.Optional[_Duration_4839e8c3] = None,
@@ -10917,7 +10912,10 @@ class StateMachine(
10917
10912
  @builtins.property
10918
10913
  @jsii.member(jsii_name="role")
10919
10914
  def role(self) -> _IRole_235f5d8e:
10920
- '''Execution role of this state machine.'''
10915
+ '''Execution role of this state machine.
10916
+
10917
+ Will throw if the Role object that was given does not implement IRole
10918
+ '''
10921
10919
  return typing.cast(_IRole_235f5d8e, jsii.get(self, "role"))
10922
10920
 
10923
10921
  @builtins.property
@@ -11211,7 +11209,7 @@ class StateMachineProps:
11211
11209
  logs: typing.Optional[typing.Union[LogOptions, typing.Dict[builtins.str, typing.Any]]] = None,
11212
11210
  query_language: typing.Optional[QueryLanguage] = None,
11213
11211
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
11214
- role: typing.Optional[_IRole_235f5d8e] = None,
11212
+ role: typing.Optional['__IRoleRef_613dafc2__IGrantable_71c4f5de'] = None,
11215
11213
  state_machine_name: typing.Optional[builtins.str] = None,
11216
11214
  state_machine_type: typing.Optional["StateMachineType"] = None,
11217
11215
  timeout: typing.Optional[_Duration_4839e8c3] = None,
@@ -11375,13 +11373,13 @@ class StateMachineProps:
11375
11373
  return typing.cast(typing.Optional[_RemovalPolicy_9f93c814], result)
11376
11374
 
11377
11375
  @builtins.property
11378
- def role(self) -> typing.Optional[_IRole_235f5d8e]:
11376
+ def role(self) -> typing.Optional['__IRoleRef_613dafc2__IGrantable_71c4f5de']:
11379
11377
  '''The execution role for the state machine service.
11380
11378
 
11381
11379
  :default: A role is automatically created
11382
11380
  '''
11383
11381
  result = self._values.get("role")
11384
- return typing.cast(typing.Optional[_IRole_235f5d8e], result)
11382
+ return typing.cast(typing.Optional['__IRoleRef_613dafc2__IGrantable_71c4f5de'], result)
11385
11383
 
11386
11384
  @builtins.property
11387
11385
  def state_machine_name(self) -> typing.Optional[builtins.str]:
@@ -27789,7 +27787,7 @@ def _typecheckingstub__efdfc02291401a50a1d945e5208e9becb9828352fec32bc109ccebafc
27789
27787
  logs: typing.Optional[typing.Union[LogOptions, typing.Dict[builtins.str, typing.Any]]] = None,
27790
27788
  query_language: typing.Optional[QueryLanguage] = None,
27791
27789
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
27792
- role: typing.Optional[_IRole_235f5d8e] = None,
27790
+ role: typing.Optional['__IRoleRef_613dafc2__IGrantable_71c4f5de'] = None,
27793
27791
  state_machine_name: typing.Optional[builtins.str] = None,
27794
27792
  state_machine_type: typing.Optional[StateMachineType] = None,
27795
27793
  timeout: typing.Optional[_Duration_4839e8c3] = None,
@@ -27919,7 +27917,7 @@ def _typecheckingstub__24d23b501c893898901860f31ff1a0a0fa81eb89f06a7acf3eef4f15e
27919
27917
  logs: typing.Optional[typing.Union[LogOptions, typing.Dict[builtins.str, typing.Any]]] = None,
27920
27918
  query_language: typing.Optional[QueryLanguage] = None,
27921
27919
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
27922
- role: typing.Optional[_IRole_235f5d8e] = None,
27920
+ role: typing.Optional['__IRoleRef_613dafc2__IGrantable_71c4f5de'] = None,
27923
27921
  state_machine_name: typing.Optional[builtins.str] = None,
27924
27922
  state_machine_type: typing.Optional[StateMachineType] = None,
27925
27923
  timeout: typing.Optional[_Duration_4839e8c3] = None,
@@ -29762,3 +29760,9 @@ def _typecheckingstub__0d5f089eaa441d0e3ee41bfd31bf52dcf81f27d026fe808208da7e964
29762
29760
  ) -> None:
29763
29761
  """Type checking stubs"""
29764
29762
  pass
29763
+
29764
+ class __IRoleRef_613dafc2__IGrantable_71c4f5de(_IRoleRef_613dafc2, _IGrantable_71c4f5de, typing_extensions.Protocol):
29765
+ pass
29766
+
29767
+ for cls in [IActivity, IActivityRef, IChainable, IItemReader, INextable, IStateMachine, IStateMachineAliasRef, IStateMachineRef, IStateMachineVersionRef, __IRoleRef_613dafc2__IGrantable_71c4f5de]:
29768
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])
@@ -1585,7 +1585,7 @@ connection = events.Connection(self, "Connection",
1585
1585
 
1586
1586
  tasks.HttpInvoke(self, "Invoke HTTP API",
1587
1587
  api_root="https://api.example.com",
1588
- api_endpoint=sfn.TaskInput.from_text("path/to/resource"),
1588
+ api_endpoint=sfn.TaskInput.from_text(sfn.JsonPath.format("resource/{}/details", sfn.JsonPath.string_at("$.resourceId"))),
1589
1589
  body=sfn.TaskInput.from_object({"foo": "bar"}),
1590
1590
  connection=connection,
1591
1591
  headers=sfn.TaskInput.from_object({"Content-Type": "application/json"}),
@@ -63102,7 +63102,7 @@ class HttpInvokeProps(_TaskStateBaseProps_3a62b6d0):
63102
63102
 
63103
63103
  tasks.HttpInvoke(self, "Invoke HTTP API",
63104
63104
  api_root="https://api.example.com",
63105
- api_endpoint=sfn.TaskInput.from_text("path/to/resource"),
63105
+ api_endpoint=sfn.TaskInput.from_text(sfn.JsonPath.format("resource/{}/details", sfn.JsonPath.string_at("$.resourceId"))),
63106
63106
  body=sfn.TaskInput.from_object({"foo": "bar"}),
63107
63107
  connection=connection,
63108
63108
  headers=sfn.TaskInput.from_object({"Content-Type": "application/json"}),
@@ -85254,7 +85254,7 @@ class URLEncodingFormat(enum.Enum):
85254
85254
 
85255
85255
  tasks.HttpInvoke(self, "Invoke HTTP API",
85256
85256
  api_root="https://api.example.com",
85257
- api_endpoint=sfn.TaskInput.from_text("path/to/resource"),
85257
+ api_endpoint=sfn.TaskInput.from_text(sfn.JsonPath.format("resource/{}/details", sfn.JsonPath.string_at("$.resourceId"))),
85258
85258
  body=sfn.TaskInput.from_object({"foo": "bar"}),
85259
85259
  connection=connection,
85260
85260
  headers=sfn.TaskInput.from_object({"Content-Type": "application/json"}),
@@ -96562,3 +96562,6 @@ def _typecheckingstub__7c19025da4101b4b8d2482e0216270cc5e94fe58381fdba0b4cf99f04
96562
96562
  ) -> None:
96563
96563
  """Type checking stubs"""
96564
96564
  pass
96565
+
96566
+ for cls in [IBedrockCreateModelCustomizationJobVpcConfig, IContainerDefinition, IEcsLaunchTarget, ISageMakerTask]:
96567
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])
@@ -1366,3 +1366,6 @@ def _typecheckingstub__1f10519eb1d45ed1305e842ac3665885bde5d1c65940455981356edc1
1366
1366
  ) -> None:
1367
1367
  """Type checking stubs"""
1368
1368
  pass
1369
+
1370
+ for cls in [IAccountAliasRef, ISlackChannelConfigurationRef, ISlackWorkspaceConfigurationRef]:
1371
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])
@@ -1676,15 +1676,14 @@ class CfnCanaryProps:
1676
1676
  cfn_canary_props = synthetics.CfnCanaryProps(
1677
1677
  artifact_s3_location="artifactS3Location",
1678
1678
  code=synthetics.CfnCanary.CodeProperty(
1679
- handler="handler",
1680
-
1681
- # the properties below are optional
1679
+ blueprint_types=["blueprintTypes"],
1682
1680
  dependencies=[synthetics.CfnCanary.DependencyProperty(
1683
1681
  reference="reference",
1684
1682
 
1685
1683
  # the properties below are optional
1686
1684
  type="type"
1687
1685
  )],
1686
+ handler="handler",
1688
1687
  s3_bucket="s3Bucket",
1689
1688
  s3_key="s3Key",
1690
1689
  s3_object_version="s3ObjectVersion",
@@ -3390,6 +3389,15 @@ class Runtime(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.aws_synthetics.Run
3390
3389
  '''
3391
3390
  return typing.cast("Runtime", jsii.sget(cls, "SYNTHETICS_PYTHON_SELENIUM_6_0"))
3392
3391
 
3392
+ @jsii.python.classproperty
3393
+ @jsii.member(jsii_name="SYNTHETICS_PYTHON_SELENIUM_7_0")
3394
+ def SYNTHETICS_PYTHON_SELENIUM_7_0(cls) -> "Runtime":
3395
+ '''``syn-python-selenium-7.0`` includes the following: - Lambda runtime Python 3.11 - Selenium version 4.32.0 - Chromium version 138.0.7204.168.
3396
+
3397
+ :see: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Library_python_selenium.html#CloudWatch_Synthetics_runtimeversion-syn-python-selenium-7.0
3398
+ '''
3399
+ return typing.cast("Runtime", jsii.sget(cls, "SYNTHETICS_PYTHON_SELENIUM_7_0"))
3400
+
3393
3401
  @builtins.property
3394
3402
  @jsii.member(jsii_name="family")
3395
3403
  def family(self) -> "RuntimeFamily":
@@ -3773,15 +3781,14 @@ class CfnCanary(
3773
3781
  cfn_canary = synthetics.CfnCanary(self, "MyCfnCanary",
3774
3782
  artifact_s3_location="artifactS3Location",
3775
3783
  code=synthetics.CfnCanary.CodeProperty(
3776
- handler="handler",
3777
-
3778
- # the properties below are optional
3784
+ blueprint_types=["blueprintTypes"],
3779
3785
  dependencies=[synthetics.CfnCanary.DependencyProperty(
3780
3786
  reference="reference",
3781
3787
 
3782
3788
  # the properties below are optional
3783
3789
  type="type"
3784
3790
  )],
3791
+ handler="handler",
3785
3792
  s3_bucket="s3Bucket",
3786
3793
  s3_key="s3Key",
3787
3794
  s3_object_version="s3ObjectVersion",
@@ -4568,8 +4575,9 @@ class CfnCanary(
4568
4575
  jsii_type="aws-cdk-lib.aws_synthetics.CfnCanary.CodeProperty",
4569
4576
  jsii_struct_bases=[],
4570
4577
  name_mapping={
4571
- "handler": "handler",
4578
+ "blueprint_types": "blueprintTypes",
4572
4579
  "dependencies": "dependencies",
4580
+ "handler": "handler",
4573
4581
  "s3_bucket": "s3Bucket",
4574
4582
  "s3_key": "s3Key",
4575
4583
  "s3_object_version": "s3ObjectVersion",
@@ -4581,8 +4589,9 @@ class CfnCanary(
4581
4589
  def __init__(
4582
4590
  self,
4583
4591
  *,
4584
- handler: builtins.str,
4592
+ blueprint_types: typing.Optional[typing.Sequence[builtins.str]] = None,
4585
4593
  dependencies: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCanary.DependencyProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
4594
+ handler: typing.Optional[builtins.str] = None,
4586
4595
  s3_bucket: typing.Optional[builtins.str] = None,
4587
4596
  s3_key: typing.Optional[builtins.str] = None,
4588
4597
  s3_object_version: typing.Optional[builtins.str] = None,
@@ -4593,8 +4602,9 @@ class CfnCanary(
4593
4602
 
4594
4603
  This structure contains the Lambda handler with the location where the canary should start running the script. If the script is stored in an S3 bucket, the bucket name, key, and version are also included. If the script is passed into the canary directly, the script code is contained in the value of ``Script`` .
4595
4604
 
4596
- :param handler: The entry point to use for the source code when running the canary. For canaries that use the ``syn-python-selenium-1.0`` runtime or a ``syn-nodejs.puppeteer`` runtime earlier than ``syn-nodejs.puppeteer-3.4`` , the handler must be specified as ``*fileName* .handler`` . For ``syn-python-selenium-1.1`` , ``syn-nodejs.puppeteer-3.4`` , and later runtimes, the handler can be specified as ``*fileName* . *functionName*`` , or you can specify a folder where canary scripts reside as ``*folder* / *fileName* . *functionName*`` .
4605
+ :param blueprint_types: ``BlueprintTypes`` are a list of templates that enable simplified canary creation. You can create canaries for common monitoring scenarios by providing only a JSON configuration file instead of writing custom scripts. ``multi-checks`` is the only supported value. When you specify ``BlueprintTypes`` , the ``Handler`` field cannot be specified since the blueprint provides a pre-defined entry point.
4597
4606
  :param dependencies: List of Lambda layers to attach to the canary.
4607
+ :param handler: The entry point to use for the source code when running the canary. For canaries that use the ``syn-python-selenium-1.0`` runtime or a ``syn-nodejs.puppeteer`` runtime earlier than ``syn-nodejs.puppeteer-3.4`` , the handler must be specified as ``*fileName* .handler`` . For ``syn-python-selenium-1.1`` , ``syn-nodejs.puppeteer-3.4`` , and later runtimes, the handler can be specified as ``*fileName* . *functionName*`` , or you can specify a folder where canary scripts reside as ``*folder* / *fileName* . *functionName*`` . This field is required when you don't specify ``BlueprintTypes`` and is not allowed when you specify ``BlueprintTypes`` .
4598
4608
  :param s3_bucket: If your canary script is located in S3, specify the bucket name here. The bucket must already exist.
4599
4609
  :param s3_key: The Amazon S3 key of your script. For more information, see `Working with Amazon S3 Objects <https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingObjects.html>`_ .
4600
4610
  :param s3_object_version: The Amazon S3 version ID of your script.
@@ -4611,15 +4621,14 @@ class CfnCanary(
4611
4621
  from aws_cdk import aws_synthetics as synthetics
4612
4622
 
4613
4623
  code_property = synthetics.CfnCanary.CodeProperty(
4614
- handler="handler",
4615
-
4616
- # the properties below are optional
4624
+ blueprint_types=["blueprintTypes"],
4617
4625
  dependencies=[synthetics.CfnCanary.DependencyProperty(
4618
4626
  reference="reference",
4619
4627
 
4620
4628
  # the properties below are optional
4621
4629
  type="type"
4622
4630
  )],
4631
+ handler="handler",
4623
4632
  s3_bucket="s3Bucket",
4624
4633
  s3_key="s3Key",
4625
4634
  s3_object_version="s3ObjectVersion",
@@ -4629,18 +4638,21 @@ class CfnCanary(
4629
4638
  '''
4630
4639
  if __debug__:
4631
4640
  type_hints = typing.get_type_hints(_typecheckingstub__3d403372a613babc1ab10717d050ec9a7f4055961f3545f2d0600d89c7b3dcc3)
4632
- check_type(argname="argument handler", value=handler, expected_type=type_hints["handler"])
4641
+ check_type(argname="argument blueprint_types", value=blueprint_types, expected_type=type_hints["blueprint_types"])
4633
4642
  check_type(argname="argument dependencies", value=dependencies, expected_type=type_hints["dependencies"])
4643
+ check_type(argname="argument handler", value=handler, expected_type=type_hints["handler"])
4634
4644
  check_type(argname="argument s3_bucket", value=s3_bucket, expected_type=type_hints["s3_bucket"])
4635
4645
  check_type(argname="argument s3_key", value=s3_key, expected_type=type_hints["s3_key"])
4636
4646
  check_type(argname="argument s3_object_version", value=s3_object_version, expected_type=type_hints["s3_object_version"])
4637
4647
  check_type(argname="argument script", value=script, expected_type=type_hints["script"])
4638
4648
  check_type(argname="argument source_location_arn", value=source_location_arn, expected_type=type_hints["source_location_arn"])
4639
- self._values: typing.Dict[builtins.str, typing.Any] = {
4640
- "handler": handler,
4641
- }
4649
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
4650
+ if blueprint_types is not None:
4651
+ self._values["blueprint_types"] = blueprint_types
4642
4652
  if dependencies is not None:
4643
4653
  self._values["dependencies"] = dependencies
4654
+ if handler is not None:
4655
+ self._values["handler"] = handler
4644
4656
  if s3_bucket is not None:
4645
4657
  self._values["s3_bucket"] = s3_bucket
4646
4658
  if s3_key is not None:
@@ -4653,16 +4665,17 @@ class CfnCanary(
4653
4665
  self._values["source_location_arn"] = source_location_arn
4654
4666
 
4655
4667
  @builtins.property
4656
- def handler(self) -> builtins.str:
4657
- '''The entry point to use for the source code when running the canary.
4668
+ def blueprint_types(self) -> typing.Optional[typing.List[builtins.str]]:
4669
+ '''``BlueprintTypes`` are a list of templates that enable simplified canary creation.
4658
4670
 
4659
- For canaries that use the ``syn-python-selenium-1.0`` runtime or a ``syn-nodejs.puppeteer`` runtime earlier than ``syn-nodejs.puppeteer-3.4`` , the handler must be specified as ``*fileName* .handler`` . For ``syn-python-selenium-1.1`` , ``syn-nodejs.puppeteer-3.4`` , and later runtimes, the handler can be specified as ``*fileName* . *functionName*`` , or you can specify a folder where canary scripts reside as ``*folder* / *fileName* . *functionName*`` .
4671
+ You can create canaries for common monitoring scenarios by providing only a JSON configuration file instead of writing custom scripts. ``multi-checks`` is the only supported value.
4660
4672
 
4661
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-code.html#cfn-synthetics-canary-code-handler
4673
+ When you specify ``BlueprintTypes`` , the ``Handler`` field cannot be specified since the blueprint provides a pre-defined entry point.
4674
+
4675
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-code.html#cfn-synthetics-canary-code-blueprinttypes
4662
4676
  '''
4663
- result = self._values.get("handler")
4664
- assert result is not None, "Required property 'handler' is missing"
4665
- return typing.cast(builtins.str, result)
4677
+ result = self._values.get("blueprint_types")
4678
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
4666
4679
 
4667
4680
  @builtins.property
4668
4681
  def dependencies(
@@ -4675,6 +4688,19 @@ class CfnCanary(
4675
4688
  result = self._values.get("dependencies")
4676
4689
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnCanary.DependencyProperty"]]]], result)
4677
4690
 
4691
+ @builtins.property
4692
+ def handler(self) -> typing.Optional[builtins.str]:
4693
+ '''The entry point to use for the source code when running the canary.
4694
+
4695
+ For canaries that use the ``syn-python-selenium-1.0`` runtime or a ``syn-nodejs.puppeteer`` runtime earlier than ``syn-nodejs.puppeteer-3.4`` , the handler must be specified as ``*fileName* .handler`` . For ``syn-python-selenium-1.1`` , ``syn-nodejs.puppeteer-3.4`` , and later runtimes, the handler can be specified as ``*fileName* . *functionName*`` , or you can specify a folder where canary scripts reside as ``*folder* / *fileName* . *functionName*`` .
4696
+
4697
+ This field is required when you don't specify ``BlueprintTypes`` and is not allowed when you specify ``BlueprintTypes`` .
4698
+
4699
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-code.html#cfn-synthetics-canary-code-handler
4700
+ '''
4701
+ result = self._values.get("handler")
4702
+ return typing.cast(typing.Optional[builtins.str], result)
4703
+
4678
4704
  @builtins.property
4679
4705
  def s3_bucket(self) -> typing.Optional[builtins.str]:
4680
4706
  '''If your canary script is located in S3, specify the bucket name here.
@@ -5336,7 +5362,7 @@ class CfnCanary(
5336
5362
 
5337
5363
  :param base_canary_run_id: Specifies which canary run to use the screenshots from as the baseline for future visual monitoring with this canary. Valid values are ``nextrun`` to use the screenshots from the next run after this update is made, ``lastrun`` to use the screenshots from the most recent run before this update was made, or the value of ``Id`` in the `CanaryRun <https://docs.aws.amazon.com/AmazonSynthetics/latest/APIReference/API_CanaryRun.html>`_ from any past run of this canary.
5338
5364
  :param base_screenshots: An array of screenshots that are used as the baseline for comparisons during visual monitoring.
5339
- :param browser_type:
5365
+ :param browser_type: The browser type associated with this visual reference configuration. Valid values are ``CHROME`` and ``FIREFOX`` .
5340
5366
 
5341
5367
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-visualreference.html
5342
5368
  :exampleMetadata: fixture=_generated
@@ -5398,7 +5424,10 @@ class CfnCanary(
5398
5424
 
5399
5425
  @builtins.property
5400
5426
  def browser_type(self) -> typing.Optional[builtins.str]:
5401
- '''
5427
+ '''The browser type associated with this visual reference configuration.
5428
+
5429
+ Valid values are ``CHROME`` and ``FIREFOX`` .
5430
+
5402
5431
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-synthetics-canary-visualreference.html#cfn-synthetics-canary-visualreference-browsertype
5403
5432
  '''
5404
5433
  result = self._values.get("browser_type")
@@ -6065,8 +6094,9 @@ def _typecheckingstub__c91e35c3c240434fee052d7f899893609a9c027813412eb6312483e20
6065
6094
 
6066
6095
  def _typecheckingstub__3d403372a613babc1ab10717d050ec9a7f4055961f3545f2d0600d89c7b3dcc3(
6067
6096
  *,
6068
- handler: builtins.str,
6097
+ blueprint_types: typing.Optional[typing.Sequence[builtins.str]] = None,
6069
6098
  dependencies: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCanary.DependencyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
6099
+ handler: typing.Optional[builtins.str] = None,
6070
6100
  s3_bucket: typing.Optional[builtins.str] = None,
6071
6101
  s3_key: typing.Optional[builtins.str] = None,
6072
6102
  s3_object_version: typing.Optional[builtins.str] = None,
@@ -6178,3 +6208,6 @@ def _typecheckingstub__0d85cd0ddf465884c3990e0492b92e22606ecfb33b8127bf42d0c344b
6178
6208
  ) -> None:
6179
6209
  """Type checking stubs"""
6180
6210
  pass
6211
+
6212
+ for cls in [ICanaryRef, IGroupRef]:
6213
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])
@@ -951,3 +951,6 @@ def _typecheckingstub__209aa7feaf1ed6ac2bf183538ccbb7555a21c47880975dd9f9b002d73
951
951
  ) -> None:
952
952
  """Type checking stubs"""
953
953
  pass
954
+
955
+ for cls in [IApplicationRef]:
956
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])
@@ -3749,27 +3749,6 @@ class CfnTable(
3749
3749
 
3750
3750
  jsii.create(self.__class__, self, [scope, id, props])
3751
3751
 
3752
- @jsii.member(jsii_name="fromTableArn")
3753
- @builtins.classmethod
3754
- def from_table_arn(
3755
- cls,
3756
- scope: _constructs_77d1e7e8.Construct,
3757
- id: builtins.str,
3758
- arn: builtins.str,
3759
- ) -> ITableRef:
3760
- '''Creates a new ITableRef from an ARN.
3761
-
3762
- :param scope: -
3763
- :param id: -
3764
- :param arn: -
3765
- '''
3766
- if __debug__:
3767
- type_hints = typing.get_type_hints(_typecheckingstub__fa753463a41b4c926c9b5b8d188dff52c3157fe2316e6dfb94568d8660260ca2)
3768
- check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
3769
- check_type(argname="argument id", value=id, expected_type=type_hints["id"])
3770
- check_type(argname="argument arn", value=arn, expected_type=type_hints["arn"])
3771
- return typing.cast(ITableRef, jsii.sinvoke(cls, "fromTableArn", [scope, id, arn]))
3772
-
3773
3752
  @jsii.member(jsii_name="inspect")
3774
3753
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
3775
3754
  '''Examines the CloudFormation resource and discloses attributes.
@@ -4946,14 +4925,6 @@ def _typecheckingstub__aad96eaee00841ee49968da22b6ed13b3777f265d71c1981b2f1b217c
4946
4925
  """Type checking stubs"""
4947
4926
  pass
4948
4927
 
4949
- def _typecheckingstub__fa753463a41b4c926c9b5b8d188dff52c3157fe2316e6dfb94568d8660260ca2(
4950
- scope: _constructs_77d1e7e8.Construct,
4951
- id: builtins.str,
4952
- arn: builtins.str,
4953
- ) -> None:
4954
- """Type checking stubs"""
4955
- pass
4956
-
4957
4928
  def _typecheckingstub__5e1f672b6c3046841d69f96c6b256cf927db52e0b4f4cd165e7022a893b539b1(
4958
4929
  inspector: _TreeInspector_488e0dd5,
4959
4930
  ) -> None:
@@ -5050,3 +5021,6 @@ def _typecheckingstub__09067b1978c488643c66537ddae08f743cfe6b4aac79c820f90d9c083
5050
5021
  ) -> None:
5051
5022
  """Type checking stubs"""
5052
5023
  pass
5024
+
5025
+ for cls in [IDatabaseRef, IInfluxDBInstanceRef, IScheduledQueryRef, ITableRef]:
5026
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])
@@ -691,7 +691,7 @@ class CfnConnectorProps:
691
691
  '''Properties for defining a ``CfnConnector``.
692
692
 
693
693
  :param access_role: Connectors are used to send files using either the AS2 or SFTP protocol. For the access role, provide the Amazon Resource Name (ARN) of the AWS Identity and Access Management role to use. *For AS2 connectors* With AS2, you can send files by calling ``StartFileTransfer`` and specifying the file paths in the request parameter, ``SendFilePaths`` . We use the file’s parent directory (for example, for ``--send-file-paths /bucket/dir/file.txt`` , parent directory is ``/bucket/dir/`` ) to temporarily store a processed AS2 message file, store the MDN when we receive them from the partner, and write a final JSON file containing relevant metadata of the transmission. So, the ``AccessRole`` needs to provide read and write access to the parent directory of the file location used in the ``StartFileTransfer`` request. Additionally, you need to provide read and write access to the parent directory of the files that you intend to send with ``StartFileTransfer`` . If you are using Basic authentication for your AS2 connector, the access role requires the ``secretsmanager:GetSecretValue`` permission for the secret. If the secret is encrypted using a customer-managed key instead of the AWS managed key in Secrets Manager, then the role also needs the ``kms:Decrypt`` permission for that key. *For SFTP connectors* Make sure that the access role provides read and write access to the parent directory of the file location that's used in the ``StartFileTransfer`` request. Additionally, make sure that the role provides ``secretsmanager:GetSecretValue`` permission to AWS Secrets Manager .
694
- :param url: The URL of the partner's AS2 or SFTP endpoint.
694
+ :param url: The URL of the partner's AS2 or SFTP endpoint. When creating AS2 connectors or service-managed SFTP connectors (connectors without egress configuration), you must provide a URL to specify the remote server endpoint. For VPC Lattice type connectors, the URL must be null.
695
695
  :param as2_config: A structure that contains the parameters for an AS2 connector object.
696
696
  :param logging_role: The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that allows a connector to turn on CloudWatch logging for Amazon S3 events. When set, you can view connector activity in your CloudWatch logs.
697
697
  :param security_policy_name: The text name of the security policy for the specified connector.
@@ -778,6 +778,8 @@ class CfnConnectorProps:
778
778
  def url(self) -> builtins.str:
779
779
  '''The URL of the partner's AS2 or SFTP endpoint.
780
780
 
781
+ When creating AS2 connectors or service-managed SFTP connectors (connectors without egress configuration), you must provide a URL to specify the remote server endpoint. For VPC Lattice type connectors, the URL must be null.
782
+
781
783
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-connector.html#cfn-transfer-connector-url
782
784
  '''
783
785
  result = self._values.get("url")
@@ -2794,27 +2796,6 @@ class CfnAgreement(
2794
2796
 
2795
2797
  jsii.create(self.__class__, self, [scope, id, props])
2796
2798
 
2797
- @jsii.member(jsii_name="fromAgreementArn")
2798
- @builtins.classmethod
2799
- def from_agreement_arn(
2800
- cls,
2801
- scope: _constructs_77d1e7e8.Construct,
2802
- id: builtins.str,
2803
- arn: builtins.str,
2804
- ) -> IAgreementRef:
2805
- '''Creates a new IAgreementRef from an ARN.
2806
-
2807
- :param scope: -
2808
- :param id: -
2809
- :param arn: -
2810
- '''
2811
- if __debug__:
2812
- type_hints = typing.get_type_hints(_typecheckingstub__49865972fac7cf97b37625ebb0dab09d88b56b9f2dd79d90fc649828bfc624ff)
2813
- check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
2814
- check_type(argname="argument id", value=id, expected_type=type_hints["id"])
2815
- check_type(argname="argument arn", value=arn, expected_type=type_hints["arn"])
2816
- return typing.cast(IAgreementRef, jsii.sinvoke(cls, "fromAgreementArn", [scope, id, arn]))
2817
-
2818
2799
  @jsii.member(jsii_name="inspect")
2819
2800
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
2820
2801
  '''Examines the CloudFormation resource and discloses attributes.
@@ -3573,7 +3554,7 @@ class CfnConnector(
3573
3554
  :param scope: Scope in which this resource is defined.
3574
3555
  :param id: Construct identifier for this resource (unique in its scope).
3575
3556
  :param access_role: Connectors are used to send files using either the AS2 or SFTP protocol. For the access role, provide the Amazon Resource Name (ARN) of the AWS Identity and Access Management role to use. *For AS2 connectors* With AS2, you can send files by calling ``StartFileTransfer`` and specifying the file paths in the request parameter, ``SendFilePaths`` . We use the file’s parent directory (for example, for ``--send-file-paths /bucket/dir/file.txt`` , parent directory is ``/bucket/dir/`` ) to temporarily store a processed AS2 message file, store the MDN when we receive them from the partner, and write a final JSON file containing relevant metadata of the transmission. So, the ``AccessRole`` needs to provide read and write access to the parent directory of the file location used in the ``StartFileTransfer`` request. Additionally, you need to provide read and write access to the parent directory of the files that you intend to send with ``StartFileTransfer`` . If you are using Basic authentication for your AS2 connector, the access role requires the ``secretsmanager:GetSecretValue`` permission for the secret. If the secret is encrypted using a customer-managed key instead of the AWS managed key in Secrets Manager, then the role also needs the ``kms:Decrypt`` permission for that key. *For SFTP connectors* Make sure that the access role provides read and write access to the parent directory of the file location that's used in the ``StartFileTransfer`` request. Additionally, make sure that the role provides ``secretsmanager:GetSecretValue`` permission to AWS Secrets Manager .
3576
- :param url: The URL of the partner's AS2 or SFTP endpoint.
3557
+ :param url: The URL of the partner's AS2 or SFTP endpoint. When creating AS2 connectors or service-managed SFTP connectors (connectors without egress configuration), you must provide a URL to specify the remote server endpoint. For VPC Lattice type connectors, the URL must be null.
3577
3558
  :param as2_config: A structure that contains the parameters for an AS2 connector object.
3578
3559
  :param logging_role: The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that allows a connector to turn on CloudWatch logging for Amazon S3 events. When set, you can view connector activity in your CloudWatch logs.
3579
3560
  :param security_policy_name: The text name of the security policy for the specified connector.
@@ -4064,7 +4045,7 @@ class CfnConnector(
4064
4045
  '''A structure that contains the parameters for an SFTP connector object.
4065
4046
 
4066
4047
  :param max_concurrent_connections: Specify the number of concurrent connections that your connector creates to the remote server. The default value is ``1`` . The maximum values is ``5`` . .. epigraph:: If you are using the AWS Management Console , the default value is ``5`` . This parameter specifies the number of active connections that your connector can establish with the remote server at the same time. Increasing this value can enhance connector performance when transferring large file batches by enabling parallel operations. Default: - 1
4067
- :param trusted_host_keys: The public portion of the host key, or keys, that are used to identify the external server to which you are connecting. You can use the ``ssh-keyscan`` command against the SFTP server to retrieve the necessary key. .. epigraph:: ``TrustedHostKeys`` is optional for ``CreateConnector`` . If not provided, you can use ``TestConnection`` to retrieve the server host key during the initial connection attempt, and subsequently update the connector with the observed host key. The three standard SSH public key format elements are ``<key type>`` , ``<body base64>`` , and an optional ``<comment>`` , with spaces between each element. Specify only the ``<key type>`` and ``<body base64>`` : do not enter the ``<comment>`` portion of the key. For the trusted host key, AWS Transfer Family accepts RSA and ECDSA keys. - For RSA keys, the ``<key type>`` string is ``ssh-rsa`` . - For ECDSA keys, the ``<key type>`` string is either ``ecdsa-sha2-nistp256`` , ``ecdsa-sha2-nistp384`` , or ``ecdsa-sha2-nistp521`` , depending on the size of the key you generated. Run this command to retrieve the SFTP server host key, where your SFTP server name is ``ftp.host.com`` . ``ssh-keyscan ftp.host.com`` This prints the public host key to standard output. ``ftp.host.com ssh-rsa AAAAB3Nza...<long-string-for-public-key`` Copy and paste this string into the ``TrustedHostKeys`` field for the ``create-connector`` command or into the *Trusted host keys* field in the console.
4048
+ :param trusted_host_keys: The public portion of the host key, or keys, that are used to identify the external server to which you are connecting. You can use the ``ssh-keyscan`` command against the SFTP server to retrieve the necessary key. .. epigraph:: ``TrustedHostKeys`` is optional for ``CreateConnector`` . If not provided, you can use ``TestConnection`` to retrieve the server host key during the initial connection attempt, and subsequently update the connector with the observed host key. When creating connectors with egress config (VPC_LATTICE type connectors), since host name is not something we can verify, the only accepted trusted host key format is ``key-type key-body`` without the host name. For example: ``ssh-rsa AAAAB3Nza...<long-string-for-public-key>`` The three standard SSH public key format elements are ``<key type>`` , ``<body base64>`` , and an optional ``<comment>`` , with spaces between each element. Specify only the ``<key type>`` and ``<body base64>`` : do not enter the ``<comment>`` portion of the key. For the trusted host key, AWS Transfer Family accepts RSA and ECDSA keys. - For RSA keys, the ``<key type>`` string is ``ssh-rsa`` . - For ECDSA keys, the ``<key type>`` string is either ``ecdsa-sha2-nistp256`` , ``ecdsa-sha2-nistp384`` , or ``ecdsa-sha2-nistp521`` , depending on the size of the key you generated. Run this command to retrieve the SFTP server host key, where your SFTP server name is ``ftp.host.com`` . ``ssh-keyscan ftp.host.com`` This prints the public host key to standard output. ``ftp.host.com ssh-rsa AAAAB3Nza...<long-string-for-public-key>`` Copy and paste this string into the ``TrustedHostKeys`` field for the ``create-connector`` command or into the *Trusted host keys* field in the console. For VPC Lattice type connectors (VPC_LATTICE), remove the hostname from the key and use only the ``key-type key-body`` format. In this example, it should be: ``ssh-rsa AAAAB3Nza...<long-string-for-public-key>``
4068
4049
  :param user_secret_id: The identifier for the secret (in AWS Secrets Manager) that contains the SFTP user's private key, password, or both. The identifier must be the Amazon Resource Name (ARN) of the secret. .. epigraph:: - Required when creating an SFTP connector - Optional when updating an existing SFTP connector
4069
4050
 
4070
4051
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-connector-sftpconfig.html
@@ -4122,6 +4103,8 @@ class CfnConnector(
4122
4103
 
4123
4104
  ``TrustedHostKeys`` is optional for ``CreateConnector`` . If not provided, you can use ``TestConnection`` to retrieve the server host key during the initial connection attempt, and subsequently update the connector with the observed host key.
4124
4105
 
4106
+ When creating connectors with egress config (VPC_LATTICE type connectors), since host name is not something we can verify, the only accepted trusted host key format is ``key-type key-body`` without the host name. For example: ``ssh-rsa AAAAB3Nza...<long-string-for-public-key>``
4107
+
4125
4108
  The three standard SSH public key format elements are ``<key type>`` , ``<body base64>`` , and an optional ``<comment>`` , with spaces between each element. Specify only the ``<key type>`` and ``<body base64>`` : do not enter the ``<comment>`` portion of the key.
4126
4109
 
4127
4110
  For the trusted host key, AWS Transfer Family accepts RSA and ECDSA keys.
@@ -4135,10 +4118,12 @@ class CfnConnector(
4135
4118
 
4136
4119
  This prints the public host key to standard output.
4137
4120
 
4138
- ``ftp.host.com ssh-rsa AAAAB3Nza...<long-string-for-public-key``
4121
+ ``ftp.host.com ssh-rsa AAAAB3Nza...<long-string-for-public-key>``
4139
4122
 
4140
4123
  Copy and paste this string into the ``TrustedHostKeys`` field for the ``create-connector`` command or into the *Trusted host keys* field in the console.
4141
4124
 
4125
+ For VPC Lattice type connectors (VPC_LATTICE), remove the hostname from the key and use only the ``key-type key-body`` format. In this example, it should be: ``ssh-rsa AAAAB3Nza...<long-string-for-public-key>``
4126
+
4142
4127
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-connector-sftpconfig.html#cfn-transfer-connector-sftpconfig-trustedhostkeys
4143
4128
  '''
4144
4129
  result = self._values.get("trusted_host_keys")
@@ -5199,13 +5184,17 @@ class CfnServer(
5199
5184
  ) -> None:
5200
5185
  '''The protocol settings that are configured for your server.
5201
5186
 
5187
+ .. epigraph::
5188
+
5189
+ Avoid placing Network Load Balancers (NLBs) or NAT gateways in front of AWS Transfer Family servers, as this increases costs and can cause performance issues, including reduced connection limits for FTPS. For more details, see `Avoid placing NLBs and NATs in front of AWS Transfer Family <https://docs.aws.amazon.com/transfer/latest/userguide/infrastructure-security.html#nlb-considerations>`_ .
5190
+
5202
5191
  - To indicate passive mode (for FTP and FTPS protocols), use the ``PassiveIp`` parameter. Enter a single dotted-quad IPv4 address, such as the external IP address of a firewall, router, or load balancer.
5203
5192
  - To ignore the error that is generated when the client attempts to use the ``SETSTAT`` command on a file that you are uploading to an Amazon S3 bucket, use the ``SetStatOption`` parameter. To have the AWS Transfer Family server ignore the ``SETSTAT`` command and upload files without needing to make any changes to your SFTP client, set the value to ``ENABLE_NO_OP`` . If you set the ``SetStatOption`` parameter to ``ENABLE_NO_OP`` , Transfer Family generates a log entry to Amazon CloudWatch Logs, so that you can determine when the client is making a ``SETSTAT`` call.
5204
5193
  - To determine whether your AWS Transfer Family server resumes recent, negotiated sessions through a unique session ID, use the ``TlsSessionResumptionMode`` parameter.
5205
5194
  - ``As2Transports`` indicates the transport method for the AS2 messages. Currently, only HTTP is supported.
5206
5195
 
5207
5196
  :param as2_transports: List of ``As2Transport`` objects.
5208
- :param passive_ip: Indicates passive mode, for FTP and FTPS protocols. Enter a single IPv4 address, such as the public IP address of a firewall, router, or load balancer. For example: ``aws transfer update-server --protocol-details PassiveIp=0.0.0.0`` Replace ``0.0.0.0`` in the example above with the actual IP address you want to use. .. epigraph:: If you change the ``PassiveIp`` value, you must stop and then restart your Transfer Family server for the change to take effect. For details on using passive mode (PASV) in a NAT environment, see `Configuring your FTPS server behind a firewall or NAT with AWS Transfer Family <https://docs.aws.amazon.com/storage/configuring-your-ftps-server-behind-a-firewall-or-nat-with-aws-transfer-family/>`_ . *Special values* The ``AUTO`` and ``0.0.0.0`` are special values for the ``PassiveIp`` parameter. The value ``PassiveIp=AUTO`` is assigned by default to FTP and FTPS type servers. In this case, the server automatically responds with one of the endpoint IPs within the PASV response. ``PassiveIp=0.0.0.0`` has a more unique application for its usage. For example, if you have a High Availability (HA) Network Load Balancer (NLB) environment, where you have 3 subnets, you can only specify a single IP address using the ``PassiveIp`` parameter. This reduces the effectiveness of having High Availability. In this case, you can specify ``PassiveIp=0.0.0.0`` . This tells the client to use the same IP address as the Control connection and utilize all AZs for their connections. Note, however, that not all FTP clients support the ``PassiveIp=0.0.0.0`` response. FileZilla and WinSCP do support it. If you are using other clients, check to see if your client supports the ``PassiveIp=0.0.0.0`` response.
5197
+ :param passive_ip: Indicates passive mode, for FTP and FTPS protocols. Enter a single IPv4 address, such as the public IP address of a firewall, router, or load balancer. For example: ``aws transfer update-server --protocol-details PassiveIp=0.0.0.0`` Replace ``0.0.0.0`` in the example above with the actual IP address you want to use. .. epigraph:: If you change the ``PassiveIp`` value, you must stop and then restart your Transfer Family server for the change to take effect. For details on using passive mode (PASV) in a NAT environment, see `Configuring your FTPS server behind a firewall or NAT with AWS Transfer Family <https://docs.aws.amazon.com/storage/configuring-your-ftps-server-behind-a-firewall-or-nat-with-aws-transfer-family/>`_ . Additionally, avoid placing Network Load Balancers (NLBs) or NAT gateways in front of AWS Transfer Family servers. This configuration increases costs and can cause performance issues. When NLBs or NATs are in the communication path, Transfer Family cannot accurately recognize client IP addresses, which impacts connection sharding and limits FTPS servers to only 300 simultaneous connections instead of 10,000. If you must use an NLB, use port 21 for health checks and enable TLS session resumption by setting ``TlsSessionResumptionMode = ENFORCED`` . For optimal performance, migrate to VPC endpoints with Elastic IP addresses instead of using NLBs. For more details, see `Avoid placing NLBs and NATs in front of AWS Transfer Family <https://docs.aws.amazon.com/transfer/latest/userguide/infrastructure-security.html#nlb-considerations>`_ . *Special values* The ``AUTO`` and ``0.0.0.0`` are special values for the ``PassiveIp`` parameter. The value ``PassiveIp=AUTO`` is assigned by default to FTP and FTPS type servers. In this case, the server automatically responds with one of the endpoint IPs within the PASV response. ``PassiveIp=0.0.0.0`` has a more unique application for its usage. For example, if you have a High Availability (HA) Network Load Balancer (NLB) environment, where you have 3 subnets, you can only specify a single IP address using the ``PassiveIp`` parameter. This reduces the effectiveness of having High Availability. In this case, you can specify ``PassiveIp=0.0.0.0`` . This tells the client to use the same IP address as the Control connection and utilize all AZs for their connections. Note, however, that not all FTP clients support the ``PassiveIp=0.0.0.0`` response. FileZilla and WinSCP do support it. If you are using other clients, check to see if your client supports the ``PassiveIp=0.0.0.0`` response.
5209
5198
  :param set_stat_option: Use the ``SetStatOption`` to ignore the error that is generated when the client attempts to use ``SETSTAT`` on a file you are uploading to an S3 bucket. Some SFTP file transfer clients can attempt to change the attributes of remote files, including timestamp and permissions, using commands, such as ``SETSTAT`` when uploading the file. However, these commands are not compatible with object storage systems, such as Amazon S3. Due to this incompatibility, file uploads from these clients can result in errors even when the file is otherwise successfully uploaded. Set the value to ``ENABLE_NO_OP`` to have the Transfer Family server ignore the ``SETSTAT`` command, and upload files without needing to make any changes to your SFTP client. While the ``SetStatOption`` ``ENABLE_NO_OP`` setting ignores the error, it does generate a log entry in Amazon CloudWatch Logs, so you can determine when the client is making a ``SETSTAT`` call. .. epigraph:: If you want to preserve the original timestamp for your file, and modify other file attributes using ``SETSTAT`` , you can use Amazon EFS as backend storage with Transfer Family.
5210
5199
  :param tls_session_resumption_mode: A property used with Transfer Family servers that use the FTPS protocol. TLS Session Resumption provides a mechanism to resume or share a negotiated secret key between the control and data connection for an FTPS session. ``TlsSessionResumptionMode`` determines whether or not the server resumes recent, negotiated sessions through a unique session ID. This property is available during ``CreateServer`` and ``UpdateServer`` calls. If a ``TlsSessionResumptionMode`` value is not specified during ``CreateServer`` , it is set to ``ENFORCED`` by default. - ``DISABLED`` : the server does not process TLS session resumption client requests and creates a new TLS session for each request. - ``ENABLED`` : the server processes and accepts clients that are performing TLS session resumption. The server doesn't reject client data connections that do not perform the TLS session resumption client processing. - ``ENFORCED`` : the server processes and accepts clients that are performing TLS session resumption. The server rejects client data connections that do not perform the TLS session resumption client processing. Before you set the value to ``ENFORCED`` , test your clients. .. epigraph:: Not all FTPS clients perform TLS session resumption. So, if you choose to enforce TLS session resumption, you prevent any connections from FTPS clients that don't perform the protocol negotiation. To determine whether or not you can use the ``ENFORCED`` value, you need to test your clients.
5211
5200
 
@@ -5263,6 +5252,8 @@ class CfnServer(
5263
5252
 
5264
5253
  If you change the ``PassiveIp`` value, you must stop and then restart your Transfer Family server for the change to take effect. For details on using passive mode (PASV) in a NAT environment, see `Configuring your FTPS server behind a firewall or NAT with AWS Transfer Family <https://docs.aws.amazon.com/storage/configuring-your-ftps-server-behind-a-firewall-or-nat-with-aws-transfer-family/>`_ .
5265
5254
 
5255
+ Additionally, avoid placing Network Load Balancers (NLBs) or NAT gateways in front of AWS Transfer Family servers. This configuration increases costs and can cause performance issues. When NLBs or NATs are in the communication path, Transfer Family cannot accurately recognize client IP addresses, which impacts connection sharding and limits FTPS servers to only 300 simultaneous connections instead of 10,000. If you must use an NLB, use port 21 for health checks and enable TLS session resumption by setting ``TlsSessionResumptionMode = ENFORCED`` . For optimal performance, migrate to VPC endpoints with Elastic IP addresses instead of using NLBs. For more details, see `Avoid placing NLBs and NATs in front of AWS Transfer Family <https://docs.aws.amazon.com/transfer/latest/userguide/infrastructure-security.html#nlb-considerations>`_ .
5256
+
5266
5257
  *Special values*
5267
5258
 
5268
5259
  The ``AUTO`` and ``0.0.0.0`` are special values for the ``PassiveIp`` parameter. The value ``PassiveIp=AUTO`` is assigned by default to FTP and FTPS type servers. In this case, the server automatically responds with one of the endpoint IPs within the PASV response. ``PassiveIp=0.0.0.0`` has a more unique application for its usage. For example, if you have a High Availability (HA) Network Load Balancer (NLB) environment, where you have 3 subnets, you can only specify a single IP address using the ``PassiveIp`` parameter. This reduces the effectiveness of having High Availability. In this case, you can specify ``PassiveIp=0.0.0.0`` . This tells the client to use the same IP address as the Control connection and utilize all AZs for their connections. Note, however, that not all FTP clients support the ``PassiveIp=0.0.0.0`` response. FileZilla and WinSCP do support it. If you are using other clients, check to see if your client supports the ``PassiveIp=0.0.0.0`` response.
@@ -8179,14 +8170,6 @@ def _typecheckingstub__f95ec07e6c4ee624e4f9374f7db0e66b46af64fa8c86e2e41aa290c72
8179
8170
  """Type checking stubs"""
8180
8171
  pass
8181
8172
 
8182
- def _typecheckingstub__49865972fac7cf97b37625ebb0dab09d88b56b9f2dd79d90fc649828bfc624ff(
8183
- scope: _constructs_77d1e7e8.Construct,
8184
- id: builtins.str,
8185
- arn: builtins.str,
8186
- ) -> None:
8187
- """Type checking stubs"""
8188
- pass
8189
-
8190
8173
  def _typecheckingstub__228db9cea00437d476e4860ef1214693d948e861477e0b0435205c3df9bf79f1(
8191
8174
  inspector: _TreeInspector_488e0dd5,
8192
8175
  ) -> None:
@@ -9093,3 +9076,6 @@ def _typecheckingstub__b548edb0a5fb9cfebb89a31ba69695395ed26d4793bbaa01e670bb558
9093
9076
  ) -> None:
9094
9077
  """Type checking stubs"""
9095
9078
  pass
9079
+
9080
+ for cls in [IAgreementRef, ICertificateRef, IConnectorRef, IProfileRef, IServerRef, IUserRef, IWebAppRef, IWorkflowRef]:
9081
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])
@@ -3594,3 +3594,6 @@ def _typecheckingstub__c58edfa87a5f12d9679dc9e906de042ce6fb26dbf1811d4fbdfc9c7e8
3594
3594
  ) -> None:
3595
3595
  """Type checking stubs"""
3596
3596
  pass
3597
+
3598
+ for cls in [IIdentitySourceRef, IPolicyRef, IPolicyStoreRef, IPolicyTemplateRef]:
3599
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])
@@ -627,3 +627,6 @@ def _typecheckingstub__026258552a46cefb8caa670ab5034652c3e2c257df5858a178b076195
627
627
  ) -> None:
628
628
  """Type checking stubs"""
629
629
  pass
630
+
631
+ for cls in [IDomainRef]:
632
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])