aws-cdk-lib 2.206.0__py3-none-any.whl → 2.208.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 (44) hide show
  1. aws_cdk/__init__.py +96 -15
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.206.0.jsii.tgz → aws-cdk-lib@2.208.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_aiops/__init__.py +70 -76
  5. aws_cdk/aws_amazonmq/__init__.py +8 -18
  6. aws_cdk/aws_appstream/__init__.py +36 -4
  7. aws_cdk/aws_autoscaling/__init__.py +20 -0
  8. aws_cdk/aws_bedrock/__init__.py +317 -142
  9. aws_cdk/aws_certificatemanager/__init__.py +48 -3
  10. aws_cdk/aws_cleanrooms/__init__.py +6 -2
  11. aws_cdk/aws_cloudformation/__init__.py +28 -15
  12. aws_cdk/aws_cloudfront/__init__.py +12 -2
  13. aws_cdk/aws_cloudwatch/__init__.py +574 -33
  14. aws_cdk/aws_connect/__init__.py +107 -3
  15. aws_cdk/aws_customerprofiles/__init__.py +27 -22
  16. aws_cdk/aws_datasync/__init__.py +14 -15
  17. aws_cdk/aws_docdb/__init__.py +5 -3
  18. aws_cdk/aws_ec2/__init__.py +59 -13
  19. aws_cdk/aws_ecs/__init__.py +185 -47
  20. aws_cdk/aws_events/__init__.py +142 -0
  21. aws_cdk/aws_gamelift/__init__.py +2 -2
  22. aws_cdk/aws_guardduty/__init__.py +86 -0
  23. aws_cdk/aws_iotsitewise/__init__.py +13 -9
  24. aws_cdk/aws_kinesisfirehose/__init__.py +377 -4
  25. aws_cdk/aws_kms/__init__.py +19 -17
  26. aws_cdk/aws_logs/__init__.py +4775 -764
  27. aws_cdk/aws_mediapackagev2/__init__.py +950 -48
  28. aws_cdk/aws_omics/__init__.py +13 -10
  29. aws_cdk/aws_opsworkscm/__init__.py +2 -4
  30. aws_cdk/aws_quicksight/__init__.py +111 -4
  31. aws_cdk/aws_rds/__init__.py +358 -27
  32. aws_cdk/aws_s3/__init__.py +781 -8
  33. aws_cdk/aws_s3express/__init__.py +61 -3
  34. aws_cdk/aws_s3tables/__init__.py +254 -0
  35. aws_cdk/aws_sagemaker/__init__.py +527 -140
  36. aws_cdk/aws_ssm/__init__.py +106 -33
  37. aws_cdk/aws_transfer/__init__.py +70 -11
  38. aws_cdk/aws_wisdom/__init__.py +1185 -100
  39. {aws_cdk_lib-2.206.0.dist-info → aws_cdk_lib-2.208.0.dist-info}/METADATA +2 -2
  40. {aws_cdk_lib-2.206.0.dist-info → aws_cdk_lib-2.208.0.dist-info}/RECORD +44 -44
  41. {aws_cdk_lib-2.206.0.dist-info → aws_cdk_lib-2.208.0.dist-info}/LICENSE +0 -0
  42. {aws_cdk_lib-2.206.0.dist-info → aws_cdk_lib-2.208.0.dist-info}/NOTICE +0 -0
  43. {aws_cdk_lib-2.206.0.dist-info → aws_cdk_lib-2.208.0.dist-info}/WHEEL +0 -0
  44. {aws_cdk_lib-2.206.0.dist-info → aws_cdk_lib-2.208.0.dist-info}/top_level.txt +0 -0
@@ -1752,7 +1752,7 @@ class CfnConnector(
1752
1752
  ) -> None:
1753
1753
  '''A structure that contains the parameters for an SFTP connector object.
1754
1754
 
1755
- :param max_concurrent_connections: Specifies the number of active connections that your connector can establish with the remote server at the same time. Default: - 1
1755
+ :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
1756
1756
  :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.
1757
1757
  :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
1758
1758
 
@@ -1786,7 +1786,14 @@ class CfnConnector(
1786
1786
 
1787
1787
  @builtins.property
1788
1788
  def max_concurrent_connections(self) -> typing.Optional[jsii.Number]:
1789
- '''Specifies the number of active connections that your connector can establish with the remote server at the same time.
1789
+ '''Specify the number of concurrent connections that your connector creates to the remote server.
1790
+
1791
+ The default value is ``1`` . The maximum values is ``5`` .
1792
+ .. epigraph::
1793
+
1794
+ If you are using the AWS Management Console , the default value is ``5`` .
1795
+
1796
+ 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.
1790
1797
 
1791
1798
  :default: - 1
1792
1799
 
@@ -2367,6 +2374,7 @@ class CfnServer(
2367
2374
  url="url"
2368
2375
  ),
2369
2376
  identity_provider_type="identityProviderType",
2377
+ ip_address_type="ipAddressType",
2370
2378
  logging_role="loggingRole",
2371
2379
  post_authentication_login_banner="postAuthenticationLoginBanner",
2372
2380
  pre_authentication_login_banner="preAuthenticationLoginBanner",
@@ -2410,6 +2418,7 @@ class CfnServer(
2410
2418
  endpoint_type: typing.Optional[builtins.str] = None,
2411
2419
  identity_provider_details: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnServer.IdentityProviderDetailsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2412
2420
  identity_provider_type: typing.Optional[builtins.str] = None,
2421
+ ip_address_type: typing.Optional[builtins.str] = None,
2413
2422
  logging_role: typing.Optional[builtins.str] = None,
2414
2423
  post_authentication_login_banner: typing.Optional[builtins.str] = None,
2415
2424
  pre_authentication_login_banner: typing.Optional[builtins.str] = None,
@@ -2430,12 +2439,13 @@ class CfnServer(
2430
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`` .
2431
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`` .
2432
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.
2433
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.
2434
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.
2435
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.``
2436
2446
  :param protocol_details: The protocol settings that are configured for your server. - 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. - 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. - To determine whether your AWS Transfer Family server resumes recent, negotiated sessions through a unique session ID, use the ``TlsSessionResumptionMode`` parameter. - ``As2Transports`` indicates the transport method for the AS2 messages. Currently, only HTTP is supported. The ``Protocols`` parameter is an array of strings. *Allowed values* : One or more of ``SFTP`` , ``FTPS`` , ``FTP`` , ``AS2``
2437
2447
  :param protocols: Specifies the file transfer protocol or protocols over which your file transfer protocol client can connect to your server's endpoint. The available protocols are: - ``SFTP`` (Secure Shell (SSH) File Transfer Protocol): File transfer over SSH - ``FTPS`` (File Transfer Protocol Secure): File transfer with TLS encryption - ``FTP`` (File Transfer Protocol): Unencrypted file transfer - ``AS2`` (Applicability Statement 2): used for transporting structured business-to-business data .. epigraph:: - If you select ``FTPS`` , you must choose a certificate stored in AWS Certificate Manager (ACM) which is used to identify your server when clients connect to it over FTPS. - If ``Protocol`` includes either ``FTP`` or ``FTPS`` , then the ``EndpointType`` must be ``VPC`` and the ``IdentityProviderType`` must be either ``AWS_DIRECTORY_SERVICE`` , ``AWS_LAMBDA`` , or ``API_GATEWAY`` . - If ``Protocol`` includes ``FTP`` , then ``AddressAllocationIds`` cannot be associated. - If ``Protocol`` is set only to ``SFTP`` , the ``EndpointType`` can be set to ``PUBLIC`` and the ``IdentityProviderType`` can be set any of the supported identity types: ``SERVICE_MANAGED`` , ``AWS_DIRECTORY_SERVICE`` , ``AWS_LAMBDA`` , or ``API_GATEWAY`` . - If ``Protocol`` includes ``AS2`` , then the ``EndpointType`` must be ``VPC`` , and domain must be Amazon S3. The ``Protocols`` parameter is an array of strings. *Allowed values* : One or more of ``SFTP`` , ``FTPS`` , ``FTP`` , ``AS2``
2438
- :param s3_storage_options: Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default. By default, home directory mappings have a ``TYPE`` of ``DIRECTORY`` . If you enable this option, you would then need to explicitly set the ``HomeDirectoryMapEntry`` ``Type`` to ``FILE`` if you want a mapping to have a file target.
2448
+ :param s3_storage_options: Specifies whether or not performance for your Amazon S3 directories is optimized. - If using the console, this is enabled by default. - If using the API or CLI, this is disabled by default. By default, home directory mappings have a ``TYPE`` of ``DIRECTORY`` . If you enable this option, you would then need to explicitly set the ``HomeDirectoryMapEntry`` ``Type`` to ``FILE`` if you want a mapping to have a file target.
2439
2449
  :param security_policy_name: Specifies the name of the security policy for the server.
2440
2450
  :param structured_log_destinations: Specifies the log groups to which your server logs are sent. To specify a log group, you must provide the ARN for an existing log group. In this case, the format of the log group is as follows: ``arn:aws:logs:region-name:amazon-account-id:log-group:log-group-name:*`` For example, ``arn:aws:logs:us-east-1:111122223333:log-group:mytestgroup:*`` If you have previously specified a log group for a server, you can clear it, and in effect turn off structured logging, by providing an empty value for this parameter in an ``update-server`` call. For example: ``update-server --server-id s-1234567890abcdef0 --structured-log-destinations``
2441
2451
  :param tags: Key-value pairs that can be used to group and search for servers.
@@ -2452,6 +2462,7 @@ class CfnServer(
2452
2462
  endpoint_type=endpoint_type,
2453
2463
  identity_provider_details=identity_provider_details,
2454
2464
  identity_provider_type=identity_provider_type,
2465
+ ip_address_type=ip_address_type,
2455
2466
  logging_role=logging_role,
2456
2467
  post_authentication_login_banner=post_authentication_login_banner,
2457
2468
  pre_authentication_login_banner=pre_authentication_login_banner,
@@ -2639,6 +2650,19 @@ class CfnServer(
2639
2650
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2640
2651
  jsii.set(self, "identityProviderType", value) # pyright: ignore[reportArgumentType]
2641
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
+
2642
2666
  @builtins.property
2643
2667
  @jsii.member(jsii_name="loggingRole")
2644
2668
  def logging_role(self) -> typing.Optional[builtins.str]:
@@ -2723,10 +2747,7 @@ class CfnServer(
2723
2747
  def s3_storage_options(
2724
2748
  self,
2725
2749
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnServer.S3StorageOptionsProperty"]]:
2726
- '''Specifies whether or not performance for your Amazon S3 directories is optimized.
2727
-
2728
- This is disabled by default.
2729
- '''
2750
+ '''Specifies whether or not performance for your Amazon S3 directories is optimized.'''
2730
2751
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnServer.S3StorageOptionsProperty"]], jsii.get(self, "s3StorageOptions"))
2731
2752
 
2732
2753
  @s3_storage_options.setter
@@ -3240,7 +3261,7 @@ class CfnServer(
3240
3261
  ) -> None:
3241
3262
  '''The Amazon S3 storage options that are configured for your server.
3242
3263
 
3243
- :param directory_listing_optimization: Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default. By default, home directory mappings have a ``TYPE`` of ``DIRECTORY`` . If you enable this option, you would then need to explicitly set the ``HomeDirectoryMapEntry`` ``Type`` to ``FILE`` if you want a mapping to have a file target.
3264
+ :param directory_listing_optimization: Specifies whether or not performance for your Amazon S3 directories is optimized. - If using the console, this is enabled by default. - If using the API or CLI, this is disabled by default. By default, home directory mappings have a ``TYPE`` of ``DIRECTORY`` . If you enable this option, you would then need to explicitly set the ``HomeDirectoryMapEntry`` ``Type`` to ``FILE`` if you want a mapping to have a file target.
3244
3265
 
3245
3266
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-transfer-server-s3storageoptions.html
3246
3267
  :exampleMetadata: fixture=_generated
@@ -3264,7 +3285,10 @@ class CfnServer(
3264
3285
 
3265
3286
  @builtins.property
3266
3287
  def directory_listing_optimization(self) -> typing.Optional[builtins.str]:
3267
- '''Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.
3288
+ '''Specifies whether or not performance for your Amazon S3 directories is optimized.
3289
+
3290
+ - If using the console, this is enabled by default.
3291
+ - If using the API or CLI, this is disabled by default.
3268
3292
 
3269
3293
  By default, home directory mappings have a ``TYPE`` of ``DIRECTORY`` . If you enable this option, you would then need to explicitly set the ``HomeDirectoryMapEntry`` ``Type`` to ``FILE`` if you want a mapping to have a file target.
3270
3294
 
@@ -3464,6 +3488,7 @@ class CfnServer(
3464
3488
  "endpoint_type": "endpointType",
3465
3489
  "identity_provider_details": "identityProviderDetails",
3466
3490
  "identity_provider_type": "identityProviderType",
3491
+ "ip_address_type": "ipAddressType",
3467
3492
  "logging_role": "loggingRole",
3468
3493
  "post_authentication_login_banner": "postAuthenticationLoginBanner",
3469
3494
  "pre_authentication_login_banner": "preAuthenticationLoginBanner",
@@ -3486,6 +3511,7 @@ class CfnServerProps:
3486
3511
  endpoint_type: typing.Optional[builtins.str] = None,
3487
3512
  identity_provider_details: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServer.IdentityProviderDetailsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3488
3513
  identity_provider_type: typing.Optional[builtins.str] = None,
3514
+ ip_address_type: typing.Optional[builtins.str] = None,
3489
3515
  logging_role: typing.Optional[builtins.str] = None,
3490
3516
  post_authentication_login_banner: typing.Optional[builtins.str] = None,
3491
3517
  pre_authentication_login_banner: typing.Optional[builtins.str] = None,
@@ -3505,12 +3531,13 @@ class CfnServerProps:
3505
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`` .
3506
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`` .
3507
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.
3508
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.
3509
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.
3510
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.``
3511
3538
  :param protocol_details: The protocol settings that are configured for your server. - 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. - 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. - To determine whether your AWS Transfer Family server resumes recent, negotiated sessions through a unique session ID, use the ``TlsSessionResumptionMode`` parameter. - ``As2Transports`` indicates the transport method for the AS2 messages. Currently, only HTTP is supported. The ``Protocols`` parameter is an array of strings. *Allowed values* : One or more of ``SFTP`` , ``FTPS`` , ``FTP`` , ``AS2``
3512
3539
  :param protocols: Specifies the file transfer protocol or protocols over which your file transfer protocol client can connect to your server's endpoint. The available protocols are: - ``SFTP`` (Secure Shell (SSH) File Transfer Protocol): File transfer over SSH - ``FTPS`` (File Transfer Protocol Secure): File transfer with TLS encryption - ``FTP`` (File Transfer Protocol): Unencrypted file transfer - ``AS2`` (Applicability Statement 2): used for transporting structured business-to-business data .. epigraph:: - If you select ``FTPS`` , you must choose a certificate stored in AWS Certificate Manager (ACM) which is used to identify your server when clients connect to it over FTPS. - If ``Protocol`` includes either ``FTP`` or ``FTPS`` , then the ``EndpointType`` must be ``VPC`` and the ``IdentityProviderType`` must be either ``AWS_DIRECTORY_SERVICE`` , ``AWS_LAMBDA`` , or ``API_GATEWAY`` . - If ``Protocol`` includes ``FTP`` , then ``AddressAllocationIds`` cannot be associated. - If ``Protocol`` is set only to ``SFTP`` , the ``EndpointType`` can be set to ``PUBLIC`` and the ``IdentityProviderType`` can be set any of the supported identity types: ``SERVICE_MANAGED`` , ``AWS_DIRECTORY_SERVICE`` , ``AWS_LAMBDA`` , or ``API_GATEWAY`` . - If ``Protocol`` includes ``AS2`` , then the ``EndpointType`` must be ``VPC`` , and domain must be Amazon S3. The ``Protocols`` parameter is an array of strings. *Allowed values* : One or more of ``SFTP`` , ``FTPS`` , ``FTP`` , ``AS2``
3513
- :param s3_storage_options: Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default. By default, home directory mappings have a ``TYPE`` of ``DIRECTORY`` . If you enable this option, you would then need to explicitly set the ``HomeDirectoryMapEntry`` ``Type`` to ``FILE`` if you want a mapping to have a file target.
3540
+ :param s3_storage_options: Specifies whether or not performance for your Amazon S3 directories is optimized. - If using the console, this is enabled by default. - If using the API or CLI, this is disabled by default. By default, home directory mappings have a ``TYPE`` of ``DIRECTORY`` . If you enable this option, you would then need to explicitly set the ``HomeDirectoryMapEntry`` ``Type`` to ``FILE`` if you want a mapping to have a file target.
3514
3541
  :param security_policy_name: Specifies the name of the security policy for the server.
3515
3542
  :param structured_log_destinations: Specifies the log groups to which your server logs are sent. To specify a log group, you must provide the ARN for an existing log group. In this case, the format of the log group is as follows: ``arn:aws:logs:region-name:amazon-account-id:log-group:log-group-name:*`` For example, ``arn:aws:logs:us-east-1:111122223333:log-group:mytestgroup:*`` If you have previously specified a log group for a server, you can clear it, and in effect turn off structured logging, by providing an empty value for this parameter in an ``update-server`` call. For example: ``update-server --server-id s-1234567890abcdef0 --structured-log-destinations``
3516
3543
  :param tags: Key-value pairs that can be used to group and search for servers.
@@ -3544,6 +3571,7 @@ class CfnServerProps:
3544
3571
  url="url"
3545
3572
  ),
3546
3573
  identity_provider_type="identityProviderType",
3574
+ ip_address_type="ipAddressType",
3547
3575
  logging_role="loggingRole",
3548
3576
  post_authentication_login_banner="postAuthenticationLoginBanner",
3549
3577
  pre_authentication_login_banner="preAuthenticationLoginBanner",
@@ -3583,6 +3611,7 @@ class CfnServerProps:
3583
3611
  check_type(argname="argument endpoint_type", value=endpoint_type, expected_type=type_hints["endpoint_type"])
3584
3612
  check_type(argname="argument identity_provider_details", value=identity_provider_details, expected_type=type_hints["identity_provider_details"])
3585
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"])
3586
3615
  check_type(argname="argument logging_role", value=logging_role, expected_type=type_hints["logging_role"])
3587
3616
  check_type(argname="argument post_authentication_login_banner", value=post_authentication_login_banner, expected_type=type_hints["post_authentication_login_banner"])
3588
3617
  check_type(argname="argument pre_authentication_login_banner", value=pre_authentication_login_banner, expected_type=type_hints["pre_authentication_login_banner"])
@@ -3606,6 +3635,8 @@ class CfnServerProps:
3606
3635
  self._values["identity_provider_details"] = identity_provider_details
3607
3636
  if identity_provider_type is not None:
3608
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
3609
3640
  if logging_role is not None:
3610
3641
  self._values["logging_role"] = logging_role
3611
3642
  if post_authentication_login_banner is not None:
@@ -3728,6 +3759,23 @@ class CfnServerProps:
3728
3759
  result = self._values.get("identity_provider_type")
3729
3760
  return typing.cast(typing.Optional[builtins.str], result)
3730
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
+
3731
3779
  @builtins.property
3732
3780
  def logging_role(self) -> typing.Optional[builtins.str]:
3733
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.
@@ -3817,7 +3865,10 @@ class CfnServerProps:
3817
3865
  def s3_storage_options(
3818
3866
  self,
3819
3867
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnServer.S3StorageOptionsProperty]]:
3820
- '''Specifies whether or not performance for your Amazon S3 directories is optimized. This is disabled by default.
3868
+ '''Specifies whether or not performance for your Amazon S3 directories is optimized.
3869
+
3870
+ - If using the console, this is enabled by default.
3871
+ - If using the API or CLI, this is disabled by default.
3821
3872
 
3822
3873
  By default, home directory mappings have a ``TYPE`` of ``DIRECTORY`` . If you enable this option, you would then need to explicitly set the ``HomeDirectoryMapEntry`` ``Type`` to ``FILE`` if you want a mapping to have a file target.
3823
3874
 
@@ -7249,6 +7300,7 @@ def _typecheckingstub__bf4192baa4fd5a52c9092a6bab5b78398f0e5f14bdad138f58e799069
7249
7300
  endpoint_type: typing.Optional[builtins.str] = None,
7250
7301
  identity_provider_details: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServer.IdentityProviderDetailsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7251
7302
  identity_provider_type: typing.Optional[builtins.str] = None,
7303
+ ip_address_type: typing.Optional[builtins.str] = None,
7252
7304
  logging_role: typing.Optional[builtins.str] = None,
7253
7305
  post_authentication_login_banner: typing.Optional[builtins.str] = None,
7254
7306
  pre_authentication_login_banner: typing.Optional[builtins.str] = None,
@@ -7311,6 +7363,12 @@ def _typecheckingstub__08a6cb2bcf7a55379e6b89fa02d0735271e11fc131bf9d9b0693cea39
7311
7363
  """Type checking stubs"""
7312
7364
  pass
7313
7365
 
7366
+ def _typecheckingstub__8cfe7d7f7218e63daf2394f025140f03c85b4b448857853b83b58f4e59a3eee0(
7367
+ value: typing.Optional[builtins.str],
7368
+ ) -> None:
7369
+ """Type checking stubs"""
7370
+ pass
7371
+
7314
7372
  def _typecheckingstub__85db09859b7fcfcae20f45283fb5e74d7f731e8583b8055856472647123250d9(
7315
7373
  value: typing.Optional[builtins.str],
7316
7374
  ) -> None:
@@ -7434,6 +7492,7 @@ def _typecheckingstub__755735299782e941527b817551c61582134dc6f25d12aff5d9120aeeb
7434
7492
  endpoint_type: typing.Optional[builtins.str] = None,
7435
7493
  identity_provider_details: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServer.IdentityProviderDetailsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7436
7494
  identity_provider_type: typing.Optional[builtins.str] = None,
7495
+ ip_address_type: typing.Optional[builtins.str] = None,
7437
7496
  logging_role: typing.Optional[builtins.str] = None,
7438
7497
  post_authentication_login_banner: typing.Optional[builtins.str] = None,
7439
7498
  pre_authentication_login_banner: typing.Optional[builtins.str] = None,