aws-cdk-lib 2.207.0__py3-none-any.whl → 2.209.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 (41) hide show
  1. aws_cdk/__init__.py +31 -3
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.207.0.jsii.tgz → aws-cdk-lib@2.209.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_aiops/__init__.py +16 -12
  5. aws_cdk/aws_amazonmq/__init__.py +8 -18
  6. aws_cdk/aws_appstream/__init__.py +36 -4
  7. aws_cdk/aws_bedrock/__init__.py +227 -102
  8. aws_cdk/aws_certificatemanager/__init__.py +45 -0
  9. aws_cdk/aws_cloudfront/__init__.py +12 -2
  10. aws_cdk/aws_connect/__init__.py +107 -3
  11. aws_cdk/aws_customerprofiles/__init__.py +27 -22
  12. aws_cdk/aws_docdb/__init__.py +5 -3
  13. aws_cdk/aws_ec2/__init__.py +58 -16
  14. aws_cdk/aws_ecs/__init__.py +1554 -78
  15. aws_cdk/aws_elasticloadbalancingv2/__init__.py +27 -15
  16. aws_cdk/aws_events/__init__.py +142 -0
  17. aws_cdk/aws_gamelift/__init__.py +2 -2
  18. aws_cdk/aws_guardduty/__init__.py +86 -0
  19. aws_cdk/aws_kinesisfirehose/__init__.py +377 -4
  20. aws_cdk/aws_lambda/__init__.py +76 -67
  21. aws_cdk/aws_logs/__init__.py +53 -4
  22. aws_cdk/aws_mediapackagev2/__init__.py +881 -0
  23. aws_cdk/aws_omics/__init__.py +13 -10
  24. aws_cdk/aws_quicksight/__init__.py +111 -4
  25. aws_cdk/aws_rds/__init__.py +214 -10
  26. aws_cdk/aws_route53/__init__.py +97 -41
  27. aws_cdk/aws_s3/__init__.py +775 -5
  28. aws_cdk/aws_s3express/__init__.py +61 -3
  29. aws_cdk/aws_s3tables/__init__.py +254 -0
  30. aws_cdk/aws_sagemaker/__init__.py +524 -137
  31. aws_cdk/aws_ssm/__init__.py +48 -0
  32. aws_cdk/aws_transfer/__init__.py +49 -0
  33. aws_cdk/aws_wisdom/__init__.py +1185 -100
  34. aws_cdk/cloud_assembly_schema/__init__.py +28 -2
  35. aws_cdk/custom_resources/__init__.py +1 -1
  36. {aws_cdk_lib-2.207.0.dist-info → aws_cdk_lib-2.209.0.dist-info}/METADATA +2 -2
  37. {aws_cdk_lib-2.207.0.dist-info → aws_cdk_lib-2.209.0.dist-info}/RECORD +41 -41
  38. {aws_cdk_lib-2.207.0.dist-info → aws_cdk_lib-2.209.0.dist-info}/LICENSE +0 -0
  39. {aws_cdk_lib-2.207.0.dist-info → aws_cdk_lib-2.209.0.dist-info}/NOTICE +0 -0
  40. {aws_cdk_lib-2.207.0.dist-info → aws_cdk_lib-2.209.0.dist-info}/WHEEL +0 -0
  41. {aws_cdk_lib-2.207.0.dist-info → aws_cdk_lib-2.209.0.dist-info}/top_level.txt +0 -0
@@ -5245,6 +5245,7 @@ class CfnPatchBaseline(
5245
5245
  approved_patches=["approvedPatches"],
5246
5246
  approved_patches_compliance_level="approvedPatchesComplianceLevel",
5247
5247
  approved_patches_enable_non_security=False,
5248
+ available_security_updates_compliance_status="availableSecurityUpdatesComplianceStatus",
5248
5249
  default_baseline=False,
5249
5250
  description="description",
5250
5251
  global_filters=ssm.CfnPatchBaseline.PatchFilterGroupProperty(
@@ -5279,6 +5280,7 @@ class CfnPatchBaseline(
5279
5280
  approved_patches: typing.Optional[typing.Sequence[builtins.str]] = None,
5280
5281
  approved_patches_compliance_level: typing.Optional[builtins.str] = None,
5281
5282
  approved_patches_enable_non_security: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
5283
+ available_security_updates_compliance_status: typing.Optional[builtins.str] = None,
5282
5284
  default_baseline: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
5283
5285
  description: typing.Optional[builtins.str] = None,
5284
5286
  global_filters: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnPatchBaseline.PatchFilterGroupProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -5297,6 +5299,7 @@ class CfnPatchBaseline(
5297
5299
  :param approved_patches: A list of explicitly approved patches for the baseline. For information about accepted formats for lists of approved patches and rejected patches, see `Package name formats for approved and rejected patch lists <https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html>`_ in the *AWS Systems Manager User Guide* .
5298
5300
  :param approved_patches_compliance_level: Defines the compliance level for approved patches. When an approved patch is reported as missing, this value describes the severity of the compliance violation. The default value is ``UNSPECIFIED`` . Default: - "UNSPECIFIED"
5299
5301
  :param approved_patches_enable_non_security: Indicates whether the list of approved patches includes non-security updates that should be applied to the managed nodes. The default value is ``false`` . Applies to Linux managed nodes only. Default: - false
5302
+ :param available_security_updates_compliance_status: The compliance status for vendor recommended security updates that are not approved by this patch baseline.
5300
5303
  :param default_baseline: Indicates whether this is the default baseline. AWS Systems Manager supports creating multiple default patch baselines. For example, you can create a default patch baseline for each operating system. Default: - false
5301
5304
  :param description: A description of the patch baseline.
5302
5305
  :param global_filters: A set of global filters used to include patches in the baseline. .. epigraph:: The ``GlobalFilters`` parameter can be configured only by using the AWS CLI or an AWS SDK. It can't be configured from the Patch Manager console, and its value isn't displayed in the console.
@@ -5317,6 +5320,7 @@ class CfnPatchBaseline(
5317
5320
  approved_patches=approved_patches,
5318
5321
  approved_patches_compliance_level=approved_patches_compliance_level,
5319
5322
  approved_patches_enable_non_security=approved_patches_enable_non_security,
5323
+ available_security_updates_compliance_status=available_security_updates_compliance_status,
5320
5324
  default_baseline=default_baseline,
5321
5325
  description=description,
5322
5326
  global_filters=global_filters,
@@ -5461,6 +5465,24 @@ class CfnPatchBaseline(
5461
5465
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5462
5466
  jsii.set(self, "approvedPatchesEnableNonSecurity", value) # pyright: ignore[reportArgumentType]
5463
5467
 
5468
+ @builtins.property
5469
+ @jsii.member(jsii_name="availableSecurityUpdatesComplianceStatus")
5470
+ def available_security_updates_compliance_status(
5471
+ self,
5472
+ ) -> typing.Optional[builtins.str]:
5473
+ '''The compliance status for vendor recommended security updates that are not approved by this patch baseline.'''
5474
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "availableSecurityUpdatesComplianceStatus"))
5475
+
5476
+ @available_security_updates_compliance_status.setter
5477
+ def available_security_updates_compliance_status(
5478
+ self,
5479
+ value: typing.Optional[builtins.str],
5480
+ ) -> None:
5481
+ if __debug__:
5482
+ type_hints = typing.get_type_hints(_typecheckingstub__b3d22bb7723ec324262f77916922eeca45b414ed52032b18a9facc597e01c7c3)
5483
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5484
+ jsii.set(self, "availableSecurityUpdatesComplianceStatus", value) # pyright: ignore[reportArgumentType]
5485
+
5464
5486
  @builtins.property
5465
5487
  @jsii.member(jsii_name="defaultBaseline")
5466
5488
  def default_baseline(
@@ -6085,6 +6107,7 @@ class CfnPatchBaseline(
6085
6107
  "approved_patches": "approvedPatches",
6086
6108
  "approved_patches_compliance_level": "approvedPatchesComplianceLevel",
6087
6109
  "approved_patches_enable_non_security": "approvedPatchesEnableNonSecurity",
6110
+ "available_security_updates_compliance_status": "availableSecurityUpdatesComplianceStatus",
6088
6111
  "default_baseline": "defaultBaseline",
6089
6112
  "description": "description",
6090
6113
  "global_filters": "globalFilters",
@@ -6105,6 +6128,7 @@ class CfnPatchBaselineProps:
6105
6128
  approved_patches: typing.Optional[typing.Sequence[builtins.str]] = None,
6106
6129
  approved_patches_compliance_level: typing.Optional[builtins.str] = None,
6107
6130
  approved_patches_enable_non_security: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
6131
+ available_security_updates_compliance_status: typing.Optional[builtins.str] = None,
6108
6132
  default_baseline: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
6109
6133
  description: typing.Optional[builtins.str] = None,
6110
6134
  global_filters: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPatchBaseline.PatchFilterGroupProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -6122,6 +6146,7 @@ class CfnPatchBaselineProps:
6122
6146
  :param approved_patches: A list of explicitly approved patches for the baseline. For information about accepted formats for lists of approved patches and rejected patches, see `Package name formats for approved and rejected patch lists <https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-approved-rejected-package-name-formats.html>`_ in the *AWS Systems Manager User Guide* .
6123
6147
  :param approved_patches_compliance_level: Defines the compliance level for approved patches. When an approved patch is reported as missing, this value describes the severity of the compliance violation. The default value is ``UNSPECIFIED`` . Default: - "UNSPECIFIED"
6124
6148
  :param approved_patches_enable_non_security: Indicates whether the list of approved patches includes non-security updates that should be applied to the managed nodes. The default value is ``false`` . Applies to Linux managed nodes only. Default: - false
6149
+ :param available_security_updates_compliance_status: The compliance status for vendor recommended security updates that are not approved by this patch baseline.
6125
6150
  :param default_baseline: Indicates whether this is the default baseline. AWS Systems Manager supports creating multiple default patch baselines. For example, you can create a default patch baseline for each operating system. Default: - false
6126
6151
  :param description: A description of the patch baseline.
6127
6152
  :param global_filters: A set of global filters used to include patches in the baseline. .. epigraph:: The ``GlobalFilters`` parameter can be configured only by using the AWS CLI or an AWS SDK. It can't be configured from the Patch Manager console, and its value isn't displayed in the console.
@@ -6162,6 +6187,7 @@ class CfnPatchBaselineProps:
6162
6187
  approved_patches=["approvedPatches"],
6163
6188
  approved_patches_compliance_level="approvedPatchesComplianceLevel",
6164
6189
  approved_patches_enable_non_security=False,
6190
+ available_security_updates_compliance_status="availableSecurityUpdatesComplianceStatus",
6165
6191
  default_baseline=False,
6166
6192
  description="description",
6167
6193
  global_filters=ssm.CfnPatchBaseline.PatchFilterGroupProperty(
@@ -6192,6 +6218,7 @@ class CfnPatchBaselineProps:
6192
6218
  check_type(argname="argument approved_patches", value=approved_patches, expected_type=type_hints["approved_patches"])
6193
6219
  check_type(argname="argument approved_patches_compliance_level", value=approved_patches_compliance_level, expected_type=type_hints["approved_patches_compliance_level"])
6194
6220
  check_type(argname="argument approved_patches_enable_non_security", value=approved_patches_enable_non_security, expected_type=type_hints["approved_patches_enable_non_security"])
6221
+ check_type(argname="argument available_security_updates_compliance_status", value=available_security_updates_compliance_status, expected_type=type_hints["available_security_updates_compliance_status"])
6195
6222
  check_type(argname="argument default_baseline", value=default_baseline, expected_type=type_hints["default_baseline"])
6196
6223
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
6197
6224
  check_type(argname="argument global_filters", value=global_filters, expected_type=type_hints["global_filters"])
@@ -6212,6 +6239,8 @@ class CfnPatchBaselineProps:
6212
6239
  self._values["approved_patches_compliance_level"] = approved_patches_compliance_level
6213
6240
  if approved_patches_enable_non_security is not None:
6214
6241
  self._values["approved_patches_enable_non_security"] = approved_patches_enable_non_security
6242
+ if available_security_updates_compliance_status is not None:
6243
+ self._values["available_security_updates_compliance_status"] = available_security_updates_compliance_status
6215
6244
  if default_baseline is not None:
6216
6245
  self._values["default_baseline"] = default_baseline
6217
6246
  if description is not None:
@@ -6291,6 +6320,17 @@ class CfnPatchBaselineProps:
6291
6320
  result = self._values.get("approved_patches_enable_non_security")
6292
6321
  return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
6293
6322
 
6323
+ @builtins.property
6324
+ def available_security_updates_compliance_status(
6325
+ self,
6326
+ ) -> typing.Optional[builtins.str]:
6327
+ '''The compliance status for vendor recommended security updates that are not approved by this patch baseline.
6328
+
6329
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html#cfn-ssm-patchbaseline-availablesecurityupdatescompliancestatus
6330
+ '''
6331
+ result = self._values.get("available_security_updates_compliance_status")
6332
+ return typing.cast(typing.Optional[builtins.str], result)
6333
+
6294
6334
  @builtins.property
6295
6335
  def default_baseline(
6296
6336
  self,
@@ -10266,6 +10306,7 @@ def _typecheckingstub__5b87565e6649bbe5a503013adf6ae874b3dc918c05cd6b120b99a77e8
10266
10306
  approved_patches: typing.Optional[typing.Sequence[builtins.str]] = None,
10267
10307
  approved_patches_compliance_level: typing.Optional[builtins.str] = None,
10268
10308
  approved_patches_enable_non_security: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
10309
+ available_security_updates_compliance_status: typing.Optional[builtins.str] = None,
10269
10310
  default_baseline: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
10270
10311
  description: typing.Optional[builtins.str] = None,
10271
10312
  global_filters: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPatchBaseline.PatchFilterGroupProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -10321,6 +10362,12 @@ def _typecheckingstub__596ca4adbe9b66ae96ac84884c609e25720aab40b7f9d665e6ea16808
10321
10362
  """Type checking stubs"""
10322
10363
  pass
10323
10364
 
10365
+ def _typecheckingstub__b3d22bb7723ec324262f77916922eeca45b414ed52032b18a9facc597e01c7c3(
10366
+ value: typing.Optional[builtins.str],
10367
+ ) -> None:
10368
+ """Type checking stubs"""
10369
+ pass
10370
+
10324
10371
  def _typecheckingstub__a82f38addd776fccd7d2225bc356d9a6e4dc42b938cbf56c083c34cd4994c239(
10325
10372
  value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
10326
10373
  ) -> None:
@@ -10424,6 +10471,7 @@ def _typecheckingstub__ff6666a30d275f2a85d64de631c940fb83198b8b5a376b87a3a684f4a
10424
10471
  approved_patches: typing.Optional[typing.Sequence[builtins.str]] = None,
10425
10472
  approved_patches_compliance_level: typing.Optional[builtins.str] = None,
10426
10473
  approved_patches_enable_non_security: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
10474
+ available_security_updates_compliance_status: typing.Optional[builtins.str] = None,
10427
10475
  default_baseline: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
10428
10476
  description: typing.Optional[builtins.str] = None,
10429
10477
  global_filters: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnPatchBaseline.PatchFilterGroupProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -2374,6 +2374,7 @@ class CfnServer(
2374
2374
  url="url"
2375
2375
  ),
2376
2376
  identity_provider_type="identityProviderType",
2377
+ ip_address_type="ipAddressType",
2377
2378
  logging_role="loggingRole",
2378
2379
  post_authentication_login_banner="postAuthenticationLoginBanner",
2379
2380
  pre_authentication_login_banner="preAuthenticationLoginBanner",
@@ -2417,6 +2418,7 @@ class CfnServer(
2417
2418
  endpoint_type: typing.Optional[builtins.str] = None,
2418
2419
  identity_provider_details: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnServer.IdentityProviderDetailsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2419
2420
  identity_provider_type: typing.Optional[builtins.str] = None,
2421
+ ip_address_type: typing.Optional[builtins.str] = None,
2420
2422
  logging_role: typing.Optional[builtins.str] = None,
2421
2423
  post_authentication_login_banner: typing.Optional[builtins.str] = None,
2422
2424
  pre_authentication_login_banner: typing.Optional[builtins.str] = None,
@@ -2437,6 +2439,7 @@ class CfnServer(
2437
2439
  :param endpoint_type: The type of endpoint that you want your server to use. You can choose to make your server's endpoint publicly accessible (PUBLIC) or host it inside your VPC. With an endpoint that is hosted in a VPC, you can restrict access to your server and resources only within your VPC or choose to make it internet facing by attaching Elastic IP addresses directly to it. .. epigraph:: After May 19, 2021, you won't be able to create a server using ``EndpointType=VPC_ENDPOINT`` in your AWS account if your account hasn't already done so before May 19, 2021. If you have already created servers with ``EndpointType=VPC_ENDPOINT`` in your AWS account on or before May 19, 2021, you will not be affected. After this date, use ``EndpointType`` = ``VPC`` . For more information, see `Discontinuing the use of VPC_ENDPOINT <https://docs.aws.amazon.com//transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint>`_ . It is recommended that you use ``VPC`` as the ``EndpointType`` . With this endpoint type, you have the option to directly associate up to three Elastic IPv4 addresses (BYO IP included) with your server's endpoint and use VPC security groups to restrict traffic by the client's public IP address. This is not possible with ``EndpointType`` set to ``VPC_ENDPOINT`` .
2438
2440
  :param identity_provider_details: Required when ``IdentityProviderType`` is set to ``AWS_DIRECTORY_SERVICE`` , ``AWS _LAMBDA`` or ``API_GATEWAY`` . Accepts an array containing all of the information required to use a directory in ``AWS_DIRECTORY_SERVICE`` or invoke a customer-supplied authentication API, including the API Gateway URL. Cannot be specified when ``IdentityProviderType`` is set to ``SERVICE_MANAGED`` .
2439
2441
  :param identity_provider_type: The mode of authentication for a server. The default value is ``SERVICE_MANAGED`` , which allows you to store and access user credentials within the AWS Transfer Family service. Use ``AWS_DIRECTORY_SERVICE`` to provide access to Active Directory groups in AWS Directory Service for Microsoft Active Directory or Microsoft Active Directory in your on-premises environment or in AWS using AD Connector. This option also requires you to provide a Directory ID by using the ``IdentityProviderDetails`` parameter. Use the ``API_GATEWAY`` value to integrate with an identity provider of your choosing. The ``API_GATEWAY`` setting requires you to provide an Amazon API Gateway endpoint URL to call for authentication by using the ``IdentityProviderDetails`` parameter. Use the ``AWS_LAMBDA`` value to directly use an AWS Lambda function as your identity provider. If you choose this value, you must specify the ARN for the Lambda function in the ``Function`` parameter for the ``IdentityProviderDetails`` data type.
2442
+ :param ip_address_type: Specifies whether to use IPv4 only, or to use dual-stack (IPv4 and IPv6) for your AWS Transfer Family endpoint. The default value is ``IPV4`` . .. epigraph:: The ``IpAddressType`` parameter has the following limitations: - It cannot be changed while the server is online. You must stop the server before modifying this parameter. - It cannot be updated to ``DUALSTACK`` if the server has ``AddressAllocationIds`` specified. > When using ``DUALSTACK`` as the ``IpAddressType`` , you cannot set the ``AddressAllocationIds`` parameter for the `EndpointDetails <https://docs.aws.amazon.com/transfer/latest/APIReference/API_EndpointDetails.html>`_ for the server.
2440
2443
  :param logging_role: The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFS events. When set, you can view user activity in your CloudWatch logs.
2441
2444
  :param post_authentication_login_banner: Specifies a string to display when users connect to a server. This string is displayed after the user authenticates. .. epigraph:: The SFTP protocol does not support post-authentication display banners.
2442
2445
  :param pre_authentication_login_banner: Specifies a string to display when users connect to a server. This string is displayed before the user authenticates. For example, the following banner displays details about using the system: ``This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.``
@@ -2459,6 +2462,7 @@ class CfnServer(
2459
2462
  endpoint_type=endpoint_type,
2460
2463
  identity_provider_details=identity_provider_details,
2461
2464
  identity_provider_type=identity_provider_type,
2465
+ ip_address_type=ip_address_type,
2462
2466
  logging_role=logging_role,
2463
2467
  post_authentication_login_banner=post_authentication_login_banner,
2464
2468
  pre_authentication_login_banner=pre_authentication_login_banner,
@@ -2646,6 +2650,19 @@ class CfnServer(
2646
2650
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2647
2651
  jsii.set(self, "identityProviderType", value) # pyright: ignore[reportArgumentType]
2648
2652
 
2653
+ @builtins.property
2654
+ @jsii.member(jsii_name="ipAddressType")
2655
+ def ip_address_type(self) -> typing.Optional[builtins.str]:
2656
+ '''Specifies whether to use IPv4 only, or to use dual-stack (IPv4 and IPv6) for your AWS Transfer Family endpoint.'''
2657
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "ipAddressType"))
2658
+
2659
+ @ip_address_type.setter
2660
+ def ip_address_type(self, value: typing.Optional[builtins.str]) -> None:
2661
+ if __debug__:
2662
+ type_hints = typing.get_type_hints(_typecheckingstub__8cfe7d7f7218e63daf2394f025140f03c85b4b448857853b83b58f4e59a3eee0)
2663
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2664
+ jsii.set(self, "ipAddressType", value) # pyright: ignore[reportArgumentType]
2665
+
2649
2666
  @builtins.property
2650
2667
  @jsii.member(jsii_name="loggingRole")
2651
2668
  def logging_role(self) -> typing.Optional[builtins.str]:
@@ -3471,6 +3488,7 @@ class CfnServer(
3471
3488
  "endpoint_type": "endpointType",
3472
3489
  "identity_provider_details": "identityProviderDetails",
3473
3490
  "identity_provider_type": "identityProviderType",
3491
+ "ip_address_type": "ipAddressType",
3474
3492
  "logging_role": "loggingRole",
3475
3493
  "post_authentication_login_banner": "postAuthenticationLoginBanner",
3476
3494
  "pre_authentication_login_banner": "preAuthenticationLoginBanner",
@@ -3493,6 +3511,7 @@ class CfnServerProps:
3493
3511
  endpoint_type: typing.Optional[builtins.str] = None,
3494
3512
  identity_provider_details: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServer.IdentityProviderDetailsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3495
3513
  identity_provider_type: typing.Optional[builtins.str] = None,
3514
+ ip_address_type: typing.Optional[builtins.str] = None,
3496
3515
  logging_role: typing.Optional[builtins.str] = None,
3497
3516
  post_authentication_login_banner: typing.Optional[builtins.str] = None,
3498
3517
  pre_authentication_login_banner: typing.Optional[builtins.str] = None,
@@ -3512,6 +3531,7 @@ class CfnServerProps:
3512
3531
  :param endpoint_type: The type of endpoint that you want your server to use. You can choose to make your server's endpoint publicly accessible (PUBLIC) or host it inside your VPC. With an endpoint that is hosted in a VPC, you can restrict access to your server and resources only within your VPC or choose to make it internet facing by attaching Elastic IP addresses directly to it. .. epigraph:: After May 19, 2021, you won't be able to create a server using ``EndpointType=VPC_ENDPOINT`` in your AWS account if your account hasn't already done so before May 19, 2021. If you have already created servers with ``EndpointType=VPC_ENDPOINT`` in your AWS account on or before May 19, 2021, you will not be affected. After this date, use ``EndpointType`` = ``VPC`` . For more information, see `Discontinuing the use of VPC_ENDPOINT <https://docs.aws.amazon.com//transfer/latest/userguide/create-server-in-vpc.html#deprecate-vpc-endpoint>`_ . It is recommended that you use ``VPC`` as the ``EndpointType`` . With this endpoint type, you have the option to directly associate up to three Elastic IPv4 addresses (BYO IP included) with your server's endpoint and use VPC security groups to restrict traffic by the client's public IP address. This is not possible with ``EndpointType`` set to ``VPC_ENDPOINT`` .
3513
3532
  :param identity_provider_details: Required when ``IdentityProviderType`` is set to ``AWS_DIRECTORY_SERVICE`` , ``AWS _LAMBDA`` or ``API_GATEWAY`` . Accepts an array containing all of the information required to use a directory in ``AWS_DIRECTORY_SERVICE`` or invoke a customer-supplied authentication API, including the API Gateway URL. Cannot be specified when ``IdentityProviderType`` is set to ``SERVICE_MANAGED`` .
3514
3533
  :param identity_provider_type: The mode of authentication for a server. The default value is ``SERVICE_MANAGED`` , which allows you to store and access user credentials within the AWS Transfer Family service. Use ``AWS_DIRECTORY_SERVICE`` to provide access to Active Directory groups in AWS Directory Service for Microsoft Active Directory or Microsoft Active Directory in your on-premises environment or in AWS using AD Connector. This option also requires you to provide a Directory ID by using the ``IdentityProviderDetails`` parameter. Use the ``API_GATEWAY`` value to integrate with an identity provider of your choosing. The ``API_GATEWAY`` setting requires you to provide an Amazon API Gateway endpoint URL to call for authentication by using the ``IdentityProviderDetails`` parameter. Use the ``AWS_LAMBDA`` value to directly use an AWS Lambda function as your identity provider. If you choose this value, you must specify the ARN for the Lambda function in the ``Function`` parameter for the ``IdentityProviderDetails`` data type.
3534
+ :param ip_address_type: Specifies whether to use IPv4 only, or to use dual-stack (IPv4 and IPv6) for your AWS Transfer Family endpoint. The default value is ``IPV4`` . .. epigraph:: The ``IpAddressType`` parameter has the following limitations: - It cannot be changed while the server is online. You must stop the server before modifying this parameter. - It cannot be updated to ``DUALSTACK`` if the server has ``AddressAllocationIds`` specified. > When using ``DUALSTACK`` as the ``IpAddressType`` , you cannot set the ``AddressAllocationIds`` parameter for the `EndpointDetails <https://docs.aws.amazon.com/transfer/latest/APIReference/API_EndpointDetails.html>`_ for the server.
3515
3535
  :param logging_role: The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFS events. When set, you can view user activity in your CloudWatch logs.
3516
3536
  :param post_authentication_login_banner: Specifies a string to display when users connect to a server. This string is displayed after the user authenticates. .. epigraph:: The SFTP protocol does not support post-authentication display banners.
3517
3537
  :param pre_authentication_login_banner: Specifies a string to display when users connect to a server. This string is displayed before the user authenticates. For example, the following banner displays details about using the system: ``This system is for the use of authorized users only. Individuals using this computer system without authority, or in excess of their authority, are subject to having all of their activities on this system monitored and recorded by system personnel.``
@@ -3551,6 +3571,7 @@ class CfnServerProps:
3551
3571
  url="url"
3552
3572
  ),
3553
3573
  identity_provider_type="identityProviderType",
3574
+ ip_address_type="ipAddressType",
3554
3575
  logging_role="loggingRole",
3555
3576
  post_authentication_login_banner="postAuthenticationLoginBanner",
3556
3577
  pre_authentication_login_banner="preAuthenticationLoginBanner",
@@ -3590,6 +3611,7 @@ class CfnServerProps:
3590
3611
  check_type(argname="argument endpoint_type", value=endpoint_type, expected_type=type_hints["endpoint_type"])
3591
3612
  check_type(argname="argument identity_provider_details", value=identity_provider_details, expected_type=type_hints["identity_provider_details"])
3592
3613
  check_type(argname="argument identity_provider_type", value=identity_provider_type, expected_type=type_hints["identity_provider_type"])
3614
+ check_type(argname="argument ip_address_type", value=ip_address_type, expected_type=type_hints["ip_address_type"])
3593
3615
  check_type(argname="argument logging_role", value=logging_role, expected_type=type_hints["logging_role"])
3594
3616
  check_type(argname="argument post_authentication_login_banner", value=post_authentication_login_banner, expected_type=type_hints["post_authentication_login_banner"])
3595
3617
  check_type(argname="argument pre_authentication_login_banner", value=pre_authentication_login_banner, expected_type=type_hints["pre_authentication_login_banner"])
@@ -3613,6 +3635,8 @@ class CfnServerProps:
3613
3635
  self._values["identity_provider_details"] = identity_provider_details
3614
3636
  if identity_provider_type is not None:
3615
3637
  self._values["identity_provider_type"] = identity_provider_type
3638
+ if ip_address_type is not None:
3639
+ self._values["ip_address_type"] = ip_address_type
3616
3640
  if logging_role is not None:
3617
3641
  self._values["logging_role"] = logging_role
3618
3642
  if post_authentication_login_banner is not None:
@@ -3735,6 +3759,23 @@ class CfnServerProps:
3735
3759
  result = self._values.get("identity_provider_type")
3736
3760
  return typing.cast(typing.Optional[builtins.str], result)
3737
3761
 
3762
+ @builtins.property
3763
+ def ip_address_type(self) -> typing.Optional[builtins.str]:
3764
+ '''Specifies whether to use IPv4 only, or to use dual-stack (IPv4 and IPv6) for your AWS Transfer Family endpoint.
3765
+
3766
+ The default value is ``IPV4`` .
3767
+ .. epigraph::
3768
+
3769
+ The ``IpAddressType`` parameter has the following limitations:
3770
+
3771
+ - It cannot be changed while the server is online. You must stop the server before modifying this parameter.
3772
+ - It cannot be updated to ``DUALSTACK`` if the server has ``AddressAllocationIds`` specified. > When using ``DUALSTACK`` as the ``IpAddressType`` , you cannot set the ``AddressAllocationIds`` parameter for the `EndpointDetails <https://docs.aws.amazon.com/transfer/latest/APIReference/API_EndpointDetails.html>`_ for the server.
3773
+
3774
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html#cfn-transfer-server-ipaddresstype
3775
+ '''
3776
+ result = self._values.get("ip_address_type")
3777
+ return typing.cast(typing.Optional[builtins.str], result)
3778
+
3738
3779
  @builtins.property
3739
3780
  def logging_role(self) -> typing.Optional[builtins.str]:
3740
3781
  '''The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that allows a server to turn on Amazon CloudWatch logging for Amazon S3 or Amazon EFS events.
@@ -7259,6 +7300,7 @@ def _typecheckingstub__bf4192baa4fd5a52c9092a6bab5b78398f0e5f14bdad138f58e799069
7259
7300
  endpoint_type: typing.Optional[builtins.str] = None,
7260
7301
  identity_provider_details: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServer.IdentityProviderDetailsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7261
7302
  identity_provider_type: typing.Optional[builtins.str] = None,
7303
+ ip_address_type: typing.Optional[builtins.str] = None,
7262
7304
  logging_role: typing.Optional[builtins.str] = None,
7263
7305
  post_authentication_login_banner: typing.Optional[builtins.str] = None,
7264
7306
  pre_authentication_login_banner: typing.Optional[builtins.str] = None,
@@ -7321,6 +7363,12 @@ def _typecheckingstub__08a6cb2bcf7a55379e6b89fa02d0735271e11fc131bf9d9b0693cea39
7321
7363
  """Type checking stubs"""
7322
7364
  pass
7323
7365
 
7366
+ def _typecheckingstub__8cfe7d7f7218e63daf2394f025140f03c85b4b448857853b83b58f4e59a3eee0(
7367
+ value: typing.Optional[builtins.str],
7368
+ ) -> None:
7369
+ """Type checking stubs"""
7370
+ pass
7371
+
7324
7372
  def _typecheckingstub__85db09859b7fcfcae20f45283fb5e74d7f731e8583b8055856472647123250d9(
7325
7373
  value: typing.Optional[builtins.str],
7326
7374
  ) -> None:
@@ -7444,6 +7492,7 @@ def _typecheckingstub__755735299782e941527b817551c61582134dc6f25d12aff5d9120aeeb
7444
7492
  endpoint_type: typing.Optional[builtins.str] = None,
7445
7493
  identity_provider_details: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServer.IdentityProviderDetailsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7446
7494
  identity_provider_type: typing.Optional[builtins.str] = None,
7495
+ ip_address_type: typing.Optional[builtins.str] = None,
7447
7496
  logging_role: typing.Optional[builtins.str] = None,
7448
7497
  post_authentication_login_banner: typing.Optional[builtins.str] = None,
7449
7498
  pre_authentication_login_banner: typing.Optional[builtins.str] = None,