aws-cdk-lib 2.173.4__py3-none-any.whl → 2.174.1__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 (91) hide show
  1. aws_cdk/__init__.py +210 -181
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.173.4.jsii.tgz → aws-cdk-lib@2.174.1.jsii.tgz} +0 -0
  4. aws_cdk/aws_amazonmq/__init__.py +18 -0
  5. aws_cdk/aws_apigateway/__init__.py +127 -168
  6. aws_cdk/aws_appconfig/__init__.py +498 -1
  7. aws_cdk/aws_applicationautoscaling/__init__.py +4 -1
  8. aws_cdk/aws_appsync/__init__.py +4 -0
  9. aws_cdk/aws_autoscaling/__init__.py +96 -0
  10. aws_cdk/aws_batch/__init__.py +662 -237
  11. aws_cdk/aws_bedrock/__init__.py +2122 -181
  12. aws_cdk/aws_cassandra/__init__.py +476 -4
  13. aws_cdk/aws_cleanrooms/__init__.py +1227 -20
  14. aws_cdk/aws_cloudformation/__init__.py +172 -169
  15. aws_cdk/aws_cloudfront/__init__.py +773 -26
  16. aws_cdk/aws_cloudtrail/__init__.py +8 -2
  17. aws_cdk/aws_codebuild/__init__.py +83 -0
  18. aws_cdk/aws_codepipeline/__init__.py +2 -1
  19. aws_cdk/aws_cognito/__init__.py +232 -200
  20. aws_cdk/aws_connect/__init__.py +187 -36
  21. aws_cdk/aws_connectcampaignsv2/__init__.py +106 -12
  22. aws_cdk/aws_databrew/__init__.py +69 -1
  23. aws_cdk/aws_datasync/__init__.py +33 -28
  24. aws_cdk/aws_datazone/__init__.py +141 -41
  25. aws_cdk/aws_dlm/__init__.py +20 -10
  26. aws_cdk/aws_dms/__init__.py +736 -22
  27. aws_cdk/aws_docdb/__init__.py +134 -0
  28. aws_cdk/aws_dynamodb/__init__.py +76 -4
  29. aws_cdk/aws_ec2/__init__.py +1233 -65
  30. aws_cdk/aws_ecr/__init__.py +31 -0
  31. aws_cdk/aws_ecr_assets/__init__.py +5 -0
  32. aws_cdk/aws_ecs/__init__.py +88 -11
  33. aws_cdk/aws_efs/__init__.py +15 -8
  34. aws_cdk/aws_eks/__init__.py +114 -45
  35. aws_cdk/aws_elasticloadbalancingv2/__init__.py +2 -2
  36. aws_cdk/aws_emrserverless/__init__.py +143 -0
  37. aws_cdk/aws_events/__init__.py +50 -30
  38. aws_cdk/aws_fis/__init__.py +33 -33
  39. aws_cdk/aws_fsx/__init__.py +20 -10
  40. aws_cdk/aws_glue/__init__.py +34 -11
  41. aws_cdk/aws_greengrass/__init__.py +8 -8
  42. aws_cdk/aws_guardduty/__init__.py +1 -1
  43. aws_cdk/aws_imagebuilder/__init__.py +45 -47
  44. aws_cdk/aws_internetmonitor/__init__.py +3 -3
  45. aws_cdk/aws_invoicing/__init__.py +55 -30
  46. aws_cdk/aws_iot/__init__.py +1117 -4
  47. aws_cdk/aws_iot1click/__init__.py +17 -7
  48. aws_cdk/aws_kendra/__init__.py +4 -6
  49. aws_cdk/aws_lambda/__init__.py +15 -1
  50. aws_cdk/aws_logs/__init__.py +4011 -86
  51. aws_cdk/aws_m2/__init__.py +41 -0
  52. aws_cdk/aws_mediaconnect/__init__.py +202 -7
  53. aws_cdk/aws_mediaconvert/__init__.py +39 -0
  54. aws_cdk/aws_memorydb/__init__.py +22 -22
  55. aws_cdk/aws_networkmanager/__init__.py +758 -0
  56. aws_cdk/aws_opensearchservice/__init__.py +222 -0
  57. aws_cdk/aws_organizations/__init__.py +5 -3
  58. aws_cdk/aws_pcs/__init__.py +3038 -0
  59. aws_cdk/aws_pipes/__init__.py +10 -10
  60. aws_cdk/aws_qbusiness/__init__.py +415 -140
  61. aws_cdk/aws_quicksight/__init__.py +59795 -49748
  62. aws_cdk/aws_ram/__init__.py +5 -11
  63. aws_cdk/aws_rbin/__init__.py +28 -16
  64. aws_cdk/aws_rds/__init__.py +186 -31
  65. aws_cdk/aws_redshiftserverless/__init__.py +156 -0
  66. aws_cdk/aws_resiliencehub/__init__.py +2 -1
  67. aws_cdk/aws_route53_targets/__init__.py +5 -5
  68. aws_cdk/aws_s3/__init__.py +25 -15
  69. aws_cdk/aws_s3express/__init__.py +7 -7
  70. aws_cdk/aws_s3tables/__init__.py +683 -0
  71. aws_cdk/aws_sagemaker/__init__.py +580 -195
  72. aws_cdk/aws_secretsmanager/__init__.py +2 -0
  73. aws_cdk/aws_securityhub/__init__.py +41 -165
  74. aws_cdk/aws_servicediscovery/__init__.py +10 -3
  75. aws_cdk/aws_ses/__init__.py +190 -5
  76. aws_cdk/aws_sns/__init__.py +7 -3
  77. aws_cdk/aws_synthetics/__init__.py +29 -4
  78. aws_cdk/aws_transfer/__init__.py +8 -0
  79. aws_cdk/aws_vpclattice/__init__.py +147 -77
  80. aws_cdk/aws_wafv2/__init__.py +20 -8
  81. aws_cdk/aws_wisdom/__init__.py +162 -111
  82. aws_cdk/aws_workspaces/__init__.py +10 -4
  83. aws_cdk/cloud_assembly_schema/__init__.py +22 -0
  84. aws_cdk/custom_resources/__init__.py +31 -0
  85. aws_cdk/cx_api/__init__.py +19 -0
  86. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/LICENSE +1 -1
  87. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/METADATA +2 -2
  88. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/NOTICE +1 -1
  89. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/RECORD +91 -89
  90. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/WHEEL +0 -0
  91. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/top_level.txt +0 -0
@@ -84,7 +84,7 @@ user_pool.grant(role, "cognito-idp:AdminCreateUser")
84
84
  ### User pool feature plans
85
85
 
86
86
  Amazon Cognito has feature plans for user pools. Each plan has a set of features and a monthly cost per active user. Each feature plan unlocks access to more features than the one before it.
87
- Lean more aboug [feature plans here](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html).
87
+ Learn more about [feature plans here](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html).
88
88
 
89
89
  * *Lite* - a low-cost feature plan for user pools with lower numbers of monthly active users.
90
90
  * *Essentials* - all of the latest user pool authentication features.
@@ -3761,9 +3761,9 @@ class CfnLogDeliveryConfiguration(
3761
3761
  This data type is a request parameter of `SetLogDeliveryConfiguration <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_SetLogDeliveryConfiguration.html>`_ and a response parameter of `GetLogDeliveryConfiguration <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_GetLogDeliveryConfiguration.html>`_ .
3762
3762
 
3763
3763
  :param cloud_watch_logs_configuration: Configuration for the CloudWatch log group destination of user pool detailed activity logging, or of user activity log export with advanced security features. This data type is a request parameter of `SetLogDeliveryConfiguration <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_SetLogDeliveryConfiguration.html>`_ and a response parameter of `GetLogDeliveryConfiguration <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_GetLogDeliveryConfiguration.html>`_ .
3764
- :param event_source: The source of events that your user pool sends for logging. To send error-level logs about user notification activity, set to ``userNotification`` . To send info-level logs about advanced security features user activity, set to ``userAuthEvents`` .
3764
+ :param event_source: The source of events that your user pool sends for logging. To send error-level logs about user notification activity, set to ``userNotification`` . To send info-level logs about threat-protection user activity in user pools with the Plus feature plan, set to ``userAuthEvents`` .
3765
3765
  :param firehose_configuration: Configuration for the Amazon Data Firehose stream destination of user activity log export with advanced security features.
3766
- :param log_level: The ``errorlevel`` selection of logs that a user pool sends for detailed activity logging. To send ``userNotification`` activity with `information about message delivery <https://docs.aws.amazon.com/cognito/latest/developerguide/tracking-quotas-and-usage-in-cloud-watch-logs.html>`_ , choose ``ERROR`` with ``CloudWatchLogsConfiguration`` . To send ``userAuthEvents`` activity with user logs from advanced security features, choose ``INFO`` with one of ``CloudWatchLogsConfiguration`` , ``FirehoseConfiguration`` , or ``S3Configuration`` .
3766
+ :param log_level: The ``errorlevel`` selection of logs that a user pool sends for detailed activity logging. To send ``userNotification`` activity with `information about message delivery <https://docs.aws.amazon.com/cognito/latest/developerguide/exporting-quotas-and-usage.html>`_ , choose ``ERROR`` with ``CloudWatchLogsConfiguration`` . To send ``userAuthEvents`` activity with user logs from threat protection with the Plus feature plan, choose ``INFO`` with one of ``CloudWatchLogsConfiguration`` , ``FirehoseConfiguration`` , or ``S3Configuration`` .
3767
3767
  :param s3_configuration: Configuration for the Amazon S3 bucket destination of user activity log export with advanced security features.
3768
3768
 
3769
3769
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-logdeliveryconfiguration-logconfiguration.html
@@ -3825,7 +3825,7 @@ class CfnLogDeliveryConfiguration(
3825
3825
  def event_source(self) -> typing.Optional[builtins.str]:
3826
3826
  '''The source of events that your user pool sends for logging.
3827
3827
 
3828
- To send error-level logs about user notification activity, set to ``userNotification`` . To send info-level logs about advanced security features user activity, set to ``userAuthEvents`` .
3828
+ To send error-level logs about user notification activity, set to ``userNotification`` . To send info-level logs about threat-protection user activity in user pools with the Plus feature plan, set to ``userAuthEvents`` .
3829
3829
 
3830
3830
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-logdeliveryconfiguration-logconfiguration.html#cfn-cognito-logdeliveryconfiguration-logconfiguration-eventsource
3831
3831
  '''
@@ -3847,7 +3847,7 @@ class CfnLogDeliveryConfiguration(
3847
3847
  def log_level(self) -> typing.Optional[builtins.str]:
3848
3848
  '''The ``errorlevel`` selection of logs that a user pool sends for detailed activity logging.
3849
3849
 
3850
- To send ``userNotification`` activity with `information about message delivery <https://docs.aws.amazon.com/cognito/latest/developerguide/tracking-quotas-and-usage-in-cloud-watch-logs.html>`_ , choose ``ERROR`` with ``CloudWatchLogsConfiguration`` . To send ``userAuthEvents`` activity with user logs from advanced security features, choose ``INFO`` with one of ``CloudWatchLogsConfiguration`` , ``FirehoseConfiguration`` , or ``S3Configuration`` .
3850
+ To send ``userNotification`` activity with `information about message delivery <https://docs.aws.amazon.com/cognito/latest/developerguide/exporting-quotas-and-usage.html>`_ , choose ``ERROR`` with ``CloudWatchLogsConfiguration`` . To send ``userAuthEvents`` activity with user logs from threat protection with the Plus feature plan, choose ``INFO`` with one of ``CloudWatchLogsConfiguration`` , ``FirehoseConfiguration`` , or ``S3Configuration`` .
3851
3851
 
3852
3852
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-logdeliveryconfiguration-logconfiguration.html#cfn-cognito-logdeliveryconfiguration-logconfiguration-loglevel
3853
3853
  '''
@@ -4036,13 +4036,6 @@ class CfnManagedLoginBranding(
4036
4036
  This operation has a 2-megabyte request-size limit and include the CSS settings and image assets for your app client. Your branding settings might exceed 2MB in size. Amazon Cognito doesn't require that you pass all parameters in one request and preserves existing style settings that you don't specify. If your request is larger than 2MB, separate it into multiple requests, each with a size smaller than the limit.
4037
4037
 
4038
4038
  As a best practice, modify the output of `DescribeManagedLoginBrandingByClient <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DescribeManagedLoginBrandingByClient.html>`_ into the request parameters for this operation. To get all settings, set ``ReturnMergedResources`` to ``true`` . For more information, see `API and SDK operations for managed login branding <https://docs.aws.amazon.com/cognito/latest/developerguide/managed-login-brandingdesigner.html#branding-designer-api>`_
4039
- .. epigraph::
4040
-
4041
- Amazon Cognito evaluates AWS Identity and Access Management (IAM) policies in requests for this API operation. For this operation, you must use IAM credentials to authorize requests, and you must grant yourself the corresponding IAM permission in a policy.
4042
-
4043
- **Learn more** - `Signing AWS API Requests <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-signing.html>`_
4044
-
4045
- - `Using the Amazon Cognito user pools API and user pool endpoints <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pools-API-operations.html>`_
4046
4039
 
4047
4040
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-managedloginbranding.html
4048
4041
  :cloudformationResource: AWS::Cognito::ManagedLoginBranding
@@ -4093,10 +4086,10 @@ class CfnManagedLoginBranding(
4093
4086
  :param id: Construct identifier for this resource (unique in its scope).
4094
4087
  :param user_pool_id: The user pool where the branding style is assigned.
4095
4088
  :param assets: An array of image files that you want to apply to roles like backgrounds, logos, and icons. Each object must also indicate whether it is for dark mode, light mode, or browser-adaptive mode.
4096
- :param client_id:
4097
- :param return_merged_resources:
4089
+ :param client_id: The app client that's assigned to the branding style that you want more information about.
4090
+ :param return_merged_resources: When ``true`` , returns values for branding options that are unchanged from Amazon Cognito defaults. When ``false`` or when you omit this parameter, returns only values that you customized in your branding style.
4098
4091
  :param settings: A JSON file, encoded as a ``Document`` type, with the the settings that you want to apply to your style.
4099
- :param use_cognito_provided_values: When true, applies the default branding style options. This option reverts to a "blank" style that you can modify later in the branding designer.
4092
+ :param use_cognito_provided_values: When true, applies the default branding style options. This option reverts to default style options that are managed by Amazon Cognito. You can modify them later in the branding designer. When you specify ``true`` for this option, you must also omit values for ``Settings`` and ``Assets`` in the request.
4100
4093
  '''
4101
4094
  if __debug__:
4102
4095
  type_hints = typing.get_type_hints(_typecheckingstub__478f8899894ffccc3f20b06ae18c36beb41bf5c5c9aa65a99dbdbf95ce00be03)
@@ -4191,6 +4184,7 @@ class CfnManagedLoginBranding(
4191
4184
  @builtins.property
4192
4185
  @jsii.member(jsii_name="clientId")
4193
4186
  def client_id(self) -> typing.Optional[builtins.str]:
4187
+ '''The app client that's assigned to the branding style that you want more information about.'''
4194
4188
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "clientId"))
4195
4189
 
4196
4190
  @client_id.setter
@@ -4205,6 +4199,7 @@ class CfnManagedLoginBranding(
4205
4199
  def return_merged_resources(
4206
4200
  self,
4207
4201
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
4202
+ '''When ``true`` , returns values for branding options that are unchanged from Amazon Cognito defaults.'''
4208
4203
  return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "returnMergedResources"))
4209
4204
 
4210
4205
  @return_merged_resources.setter
@@ -4406,10 +4401,10 @@ class CfnManagedLoginBrandingProps:
4406
4401
 
4407
4402
  :param user_pool_id: The user pool where the branding style is assigned.
4408
4403
  :param assets: An array of image files that you want to apply to roles like backgrounds, logos, and icons. Each object must also indicate whether it is for dark mode, light mode, or browser-adaptive mode.
4409
- :param client_id:
4410
- :param return_merged_resources:
4404
+ :param client_id: The app client that's assigned to the branding style that you want more information about.
4405
+ :param return_merged_resources: When ``true`` , returns values for branding options that are unchanged from Amazon Cognito defaults. When ``false`` or when you omit this parameter, returns only values that you customized in your branding style.
4411
4406
  :param settings: A JSON file, encoded as a ``Document`` type, with the the settings that you want to apply to your style.
4412
- :param use_cognito_provided_values: When true, applies the default branding style options. This option reverts to a "blank" style that you can modify later in the branding designer.
4407
+ :param use_cognito_provided_values: When true, applies the default branding style options. This option reverts to default style options that are managed by Amazon Cognito. You can modify them later in the branding designer. When you specify ``true`` for this option, you must also omit values for ``Settings`` and ``Assets`` in the request.
4413
4408
 
4414
4409
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-managedloginbranding.html
4415
4410
  :exampleMetadata: fixture=_generated
@@ -4488,7 +4483,8 @@ class CfnManagedLoginBrandingProps:
4488
4483
 
4489
4484
  @builtins.property
4490
4485
  def client_id(self) -> typing.Optional[builtins.str]:
4491
- '''
4486
+ '''The app client that's assigned to the branding style that you want more information about.
4487
+
4492
4488
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-managedloginbranding.html#cfn-cognito-managedloginbranding-clientid
4493
4489
  '''
4494
4490
  result = self._values.get("client_id")
@@ -4498,7 +4494,10 @@ class CfnManagedLoginBrandingProps:
4498
4494
  def return_merged_resources(
4499
4495
  self,
4500
4496
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
4501
- '''
4497
+ '''When ``true`` , returns values for branding options that are unchanged from Amazon Cognito defaults.
4498
+
4499
+ When ``false`` or when you omit this parameter, returns only values that you customized in your branding style.
4500
+
4502
4501
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-managedloginbranding.html#cfn-cognito-managedloginbranding-returnmergedresources
4503
4502
  '''
4504
4503
  result = self._values.get("return_merged_resources")
@@ -4519,7 +4518,9 @@ class CfnManagedLoginBrandingProps:
4519
4518
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
4520
4519
  '''When true, applies the default branding style options.
4521
4520
 
4522
- This option reverts to a "blank" style that you can modify later in the branding designer.
4521
+ This option reverts to default style options that are managed by Amazon Cognito. You can modify them later in the branding designer.
4522
+
4523
+ When you specify ``true`` for this option, you must also omit values for ``Settings`` and ``Assets`` in the request.
4523
4524
 
4524
4525
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-managedloginbranding.html#cfn-cognito-managedloginbranding-usecognitoprovidedvalues
4525
4526
  '''
@@ -4729,10 +4730,10 @@ class CfnUserPool(
4729
4730
  :param id: Construct identifier for this resource (unique in its scope).
4730
4731
  :param account_recovery_setting: The available verified method a user can use to recover their password when they call ``ForgotPassword`` . You can use this setting to define a preferred method when a user has more than one method available. With this setting, SMS doesn't qualify for a valid password recovery mechanism if the user also has SMS multi-factor authentication (MFA) activated. In the absence of this setting, Amazon Cognito uses the legacy behavior to determine the recovery method where SMS is preferred through email.
4731
4732
  :param admin_create_user_config: The settings for administrator creation of users in a user pool. Contains settings for allowing user sign-up, customizing invitation messages to new users, and the amount of time before temporary passwords expire. This data type is a request and response parameter of `CreateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateUserPool.html>`_ and `UpdateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateUserPool.html>`_ , and a response parameter of `DescribeUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DescribeUserPool.html>`_ .
4732
- :param alias_attributes: Attributes supported as an alias for this user pool. Possible values: *phone_number* , *email* , or *preferred_username* .
4733
- :param auto_verified_attributes: The attributes to be auto-verified. Possible values: *email* , *phone_number* .
4733
+ :param alias_attributes: Attributes supported as an alias for this user pool. Possible values: *phone_number* , *email* , or *preferred_username* . For more information about alias attributes, see `Customizing sign-in attributes <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#user-pool-settings-aliases>`_ .
4734
+ :param auto_verified_attributes: The attributes that you want your user pool to automatically verify. Possible values: *email* , *phone_number* . For more information see `Verifying contact information at sign-up <https://docs.aws.amazon.com/cognito/latest/developerguide/signing-up-users-in-your-app.html#allowing-users-to-sign-up-and-confirm-themselves>`_ .
4734
4735
  :param deletion_protection: When active, ``DeletionProtection`` prevents accidental deletion of your user pool. Before you can delete a user pool that you have protected against deletion, you must deactivate this feature. When you try to delete a protected user pool in a ``DeleteUserPool`` API request, Amazon Cognito returns an ``InvalidParameterException`` error. To delete a protected user pool, send a new ``DeleteUserPool`` request after you deactivate deletion protection in an ``UpdateUserPool`` API request.
4735
- :param device_configuration: The device-remembering configuration for a user pool. A null value indicates that you have deactivated device remembering in your user pool. .. epigraph:: When you provide a value for any ``DeviceConfiguration`` field, you activate the Amazon Cognito device-remembering feature.
4736
+ :param device_configuration: The device-remembering configuration for a user pool. Device remembering or device tracking is a "Remember me on this device" option for user pools that perform authentication with the device key of a trusted device in the back end, instead of a user-provided MFA code. For more information about device authentication, see `Working with user devices in your user pool <https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-device-tracking.html>`_ . A null value indicates that you have deactivated device remembering in your user pool. .. epigraph:: When you provide a value for any ``DeviceConfiguration`` field, you activate the Amazon Cognito device-remembering feature. For more infor
4736
4737
  :param email_authentication_message:
4737
4738
  :param email_authentication_subject:
4738
4739
  :param email_configuration: The email configuration of your user pool. The email configuration type sets your preferred sending method, AWS Region, and sender for messages from your user pool.
@@ -4742,20 +4743,20 @@ class CfnUserPool(
4742
4743
  :param lambda_config: A collection of user pool Lambda triggers. Amazon Cognito invokes triggers at several possible stages of authentication operations. Triggers can modify the outcome of the operations that invoked them.
4743
4744
  :param mfa_configuration: The multi-factor authentication (MFA) configuration. Valid values include:. - ``OFF`` MFA won't be used for any users. - ``ON`` MFA is required for all users to sign in. - ``OPTIONAL`` MFA will be required only for individual users who have an MFA factor activated.
4744
4745
  :param policies: A list of user pool policies. Contains the policy that sets password-complexity requirements. This data type is a request and response parameter of `CreateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateUserPool.html>`_ and `UpdateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateUserPool.html>`_ , and a response parameter of `DescribeUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DescribeUserPool.html>`_ .
4745
- :param schema: An array of schema attributes for the new user pool. These attributes can be standard or custom attributes.
4746
+ :param schema: An array of attributes for the new user pool. You can add custom attributes and modify the properties of default attributes. The specifications in this parameter set the required attributes in your user pool. For more information, see `Working with user attributes <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html>`_ .
4746
4747
  :param sms_authentication_message: The contents of the SMS authentication message.
4747
- :param sms_configuration: The SMS configuration with the settings that your Amazon Cognito user pool must use to send an SMS message from your AWS account through Amazon Simple Notification Service. To send SMS messages with Amazon SNS in the AWS Region that you want, the Amazon Cognito user pool uses an AWS Identity and Access Management (IAM) role in your AWS account .
4748
+ :param sms_configuration: The SMS configuration with the settings that your Amazon Cognito user pool must use to send an SMS message from your AWS account through Amazon Simple Notification Service. To send SMS messages with Amazon SNS in the AWS Region that you want, the Amazon Cognito user pool uses an AWS Identity and Access Management (IAM) role in your AWS account . For more information see `SMS message settings <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-sms-settings.html>`_ .
4748
4749
  :param sms_verification_message: This parameter is no longer used. See `VerificationMessageTemplateType <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html>`_ .
4749
4750
  :param user_attribute_update_settings: The settings for updates to user attributes. These settings include the property ``AttributesRequireVerificationBeforeUpdate`` , a user-pool setting that tells Amazon Cognito how to handle changes to the value of your users' email address and phone number attributes. For more information, see `Verifying updates to email addresses and phone numbers <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-email-phone-verification.html#user-pool-settings-verifications-verify-attribute-updates>`_ .
4750
4751
  :param username_attributes: Specifies whether a user can use an email address or phone number as a username when they sign up.
4751
- :param username_configuration: Case sensitivity on the username input for the selected sign-in option. When case sensitivity is set to ``False`` (case insensitive), users can sign in with any combination of capital and lowercase letters. For example, ``username`` , ``USERNAME`` , or ``UserName`` , or for email, ``email@example.com`` or ``EMaiL@eXamplE.Com`` . For most use cases, set case sensitivity to ``False`` (case insensitive) as a best practice. When usernames and email addresses are case insensitive, Amazon Cognito treats any variation in case as the same user, and prevents a case variation from being assigned to the same attribute for a different user. This configuration is immutable after you set it. For more information, see `UsernameConfigurationType <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UsernameConfigurationType.html>`_ .
4752
- :param user_pool_add_ons: User pool add-ons. Contains settings for activation of advanced security features. To log user security information but take no action, set to ``AUDIT`` . To configure automatic security responses to risky traffic to your user pool, set to ``ENFORCED`` . For more information, see `Adding advanced security to a user pool <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-advanced-security.html>`_ .
4753
- :param user_pool_name: A string used to name the user pool.
4752
+ :param username_configuration: Sets the case sensitivity option for sign-in usernames. When ``CaseSensitive`` is ``false`` (case insensitive), users can sign in with any combination of capital and lowercase letters. For example, ``username`` , ``USERNAME`` , or ``UserName`` , or for email, ``email@example.com`` or ``EMaiL@eXamplE.Com`` . For most use cases, set case sensitivity to ``false`` as a best practice. When usernames and email addresses are case insensitive, Amazon Cognito treats any variation in case as the same user, and prevents a case variation from being assigned to the same attribute for a different user. When ``CaseSensitive`` is ``true`` (case sensitive), Amazon Cognito interprets ``USERNAME`` and ``UserName`` as distinct users. This configuration is immutable after you set it.
4753
+ :param user_pool_add_ons: User pool add-ons. Contains settings for activation of threat protection. To log user security information but take no action, set to ``AUDIT`` . To configure automatic security responses to risky traffic to your user pool, set to ``ENFORCED`` . For more information, see `Adding advanced security to a user pool <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-advanced-security.html>`_ . To activate this setting, your user pool must be on the `Plus tier <https://docs.aws.amazon.com/cognito/latest/developerguide/feature-plans-features-plus.html>`_ .
4754
+ :param user_pool_name: A friendlhy name for your user pool.
4754
4755
  :param user_pool_tags: The tag keys and values to assign to the user pool. A tag is a label that you can use to categorize and manage user pools in different ways, such as by purpose, owner, environment, or other criteria.
4755
4756
  :param user_pool_tier: The user pool `feature plan <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html>`_ , or tier. This parameter determines the eligibility of the user pool for features like managed login, access-token customization, and threat protection. Defaults to ``ESSENTIALS`` .
4756
4757
  :param verification_message_template: The template for the verification message that your user pool delivers to users who set an email address or phone number attribute. Set the email message type that corresponds to your ``DefaultEmailOption`` selection. For ``CONFIRM_WITH_LINK`` , specify an ``EmailMessageByLink`` and leave ``EmailMessage`` blank. For ``CONFIRM_WITH_CODE`` , specify an ``EmailMessage`` and leave ``EmailMessageByLink`` blank. When you supply both parameters with either choice, Amazon Cognito returns an error.
4757
- :param web_authn_relying_party_id:
4758
- :param web_authn_user_verification:
4758
+ :param web_authn_relying_party_id: Sets or displays the authentication domain, typically your user pool domain, that passkey providers must use as a relying party (RP) in their configuration. Under the following conditions, the passkey relying party ID must be the fully-qualified domain name of your custom domain: - The user pool is configured for passkey authentication. - The user pool has a custom domain, whether or not it also has a prefix domain. - Your application performs authentication with managed login or the classic hosted UI.
4759
+ :param web_authn_user_verification: When ``required`` , users can only register and sign in users with passkeys that are capable of `user verification <https://docs.aws.amazon.com/https://www.w3.org/TR/webauthn-2/#enum-userVerificationRequirement>`_ . When ``preferred`` , your user pool doesn't require the use of authenticators with user verification but encourages it.
4759
4760
  '''
4760
4761
  if __debug__:
4761
4762
  type_hints = typing.get_type_hints(_typecheckingstub__32d20f28e2758f9a461380e2ed5d06233baf0f45541047ba837f26ebc37ee551)
@@ -4927,7 +4928,7 @@ class CfnUserPool(
4927
4928
  @builtins.property
4928
4929
  @jsii.member(jsii_name="autoVerifiedAttributes")
4929
4930
  def auto_verified_attributes(self) -> typing.Optional[typing.List[builtins.str]]:
4930
- '''The attributes to be auto-verified.'''
4931
+ '''The attributes that you want your user pool to automatically verify.'''
4931
4932
  return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "autoVerifiedAttributes"))
4932
4933
 
4933
4934
  @auto_verified_attributes.setter
@@ -5118,7 +5119,7 @@ class CfnUserPool(
5118
5119
  def schema(
5119
5120
  self,
5120
5121
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnUserPool.SchemaAttributeProperty"]]]]:
5121
- '''An array of schema attributes for the new user pool.'''
5122
+ '''An array of attributes for the new user pool.'''
5122
5123
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnUserPool.SchemaAttributeProperty"]]]], jsii.get(self, "schema"))
5123
5124
 
5124
5125
  @schema.setter
@@ -5214,7 +5215,7 @@ class CfnUserPool(
5214
5215
  def username_configuration(
5215
5216
  self,
5216
5217
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnUserPool.UsernameConfigurationProperty"]]:
5217
- '''Case sensitivity on the username input for the selected sign-in option.'''
5218
+ '''Sets the case sensitivity option for sign-in usernames.'''
5218
5219
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnUserPool.UsernameConfigurationProperty"]], jsii.get(self, "usernameConfiguration"))
5219
5220
 
5220
5221
  @username_configuration.setter
@@ -5248,7 +5249,7 @@ class CfnUserPool(
5248
5249
  @builtins.property
5249
5250
  @jsii.member(jsii_name="userPoolName")
5250
5251
  def user_pool_name(self) -> typing.Optional[builtins.str]:
5251
- '''A string used to name the user pool.'''
5252
+ '''A friendlhy name for your user pool.'''
5252
5253
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "userPoolName"))
5253
5254
 
5254
5255
  @user_pool_name.setter
@@ -5305,6 +5306,7 @@ class CfnUserPool(
5305
5306
  @builtins.property
5306
5307
  @jsii.member(jsii_name="webAuthnRelyingPartyId")
5307
5308
  def web_authn_relying_party_id(self) -> typing.Optional[builtins.str]:
5309
+ '''Sets or displays the authentication domain, typically your user pool domain, that passkey providers must use as a relying party (RP) in their configuration.'''
5308
5310
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "webAuthnRelyingPartyId"))
5309
5311
 
5310
5312
  @web_authn_relying_party_id.setter
@@ -5317,6 +5319,7 @@ class CfnUserPool(
5317
5319
  @builtins.property
5318
5320
  @jsii.member(jsii_name="webAuthnUserVerification")
5319
5321
  def web_authn_user_verification(self) -> typing.Optional[builtins.str]:
5322
+ '''When ``required`` , users can only register and sign in users with passkeys that are capable of `user verification <https://docs.aws.amazon.com/https://www.w3.org/TR/webauthn-2/#enum-userVerificationRequirement>`_ . When ``preferred`` , your user pool doesn't require the use of authenticators with user verification but encourages it.'''
5320
5323
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "webAuthnUserVerification"))
5321
5324
 
5322
5325
  @web_authn_user_verification.setter
@@ -5514,8 +5517,9 @@ class CfnUserPool(
5514
5517
  *,
5515
5518
  custom_auth_mode: typing.Optional[builtins.str] = None,
5516
5519
  ) -> None:
5517
- '''
5518
- :param custom_auth_mode:
5520
+ '''Advanced security configuration options for additional authentication types in your user pool, including custom authentication.
5521
+
5522
+ :param custom_auth_mode: The operating mode of advanced security features in custom authentication with `Custom authentication challenge Lambda triggers <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-lambda-challenge.html>`_ .
5519
5523
 
5520
5524
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-advancedsecurityadditionalflows.html
5521
5525
  :exampleMetadata: fixture=_generated
@@ -5539,7 +5543,8 @@ class CfnUserPool(
5539
5543
 
5540
5544
  @builtins.property
5541
5545
  def custom_auth_mode(self) -> typing.Optional[builtins.str]:
5542
- '''
5546
+ '''The operating mode of advanced security features in custom authentication with `Custom authentication challenge Lambda triggers <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-lambda-challenge.html>`_ .
5547
+
5543
5548
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-advancedsecurityadditionalflows.html#cfn-cognito-userpool-advancedsecurityadditionalflows-customauthmode
5544
5549
  '''
5545
5550
  result = self._values.get("custom_auth_mode")
@@ -6444,7 +6449,7 @@ class CfnUserPool(
6444
6449
  This data type is a request and response parameter of `CreateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateUserPool.html>`_ and `UpdateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateUserPool.html>`_ , and a response parameter of `DescribeUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DescribeUserPool.html>`_ .
6445
6450
 
6446
6451
  :param minimum_length: The minimum length of the password in the policy that you have set. This value can't be less than 6.
6447
- :param password_history_size: The number of previous passwords that you want Amazon Cognito to restrict each user from reusing. Users can't set a password that matches any of ``n`` previous passwords, where ``n`` is the value of ``PasswordHistorySize`` . Password history isn't enforced and isn't displayed in `DescribeUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DescribeUserPool.html>`_ responses when you set this value to ``0`` or don't provide it. To activate this setting, `advanced security features <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-advanced-security.html>`_ must be active in your user pool.
6452
+ :param password_history_size: The number of previous passwords that you want Amazon Cognito to restrict each user from reusing. Users can't set a password that matches any of ``n`` previous passwords, where ``n`` is the value of ``PasswordHistorySize`` . Password history isn't enforced and isn't displayed in `DescribeUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DescribeUserPool.html>`_ responses when you set this value to ``0`` or don't provide it. To activate this setting, your user pool must be in the `Essentials tier <https://docs.aws.amazon.com/cognito/latest/developerguide/feature-plans-features-essentials.html>`_ or higher.
6448
6453
  :param require_lowercase: The requirement in a password policy that users must include at least one lowercase letter in their password.
6449
6454
  :param require_numbers: The requirement in a password policy that users must include at least one number in their password.
6450
6455
  :param require_symbols: The requirement in a password policy that users must include at least one symbol in their password.
@@ -6512,7 +6517,7 @@ class CfnUserPool(
6512
6517
 
6513
6518
  Users can't set a password that matches any of ``n`` previous passwords, where ``n`` is the value of ``PasswordHistorySize`` .
6514
6519
 
6515
- Password history isn't enforced and isn't displayed in `DescribeUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DescribeUserPool.html>`_ responses when you set this value to ``0`` or don't provide it. To activate this setting, `advanced security features <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-advanced-security.html>`_ must be active in your user pool.
6520
+ Password history isn't enforced and isn't displayed in `DescribeUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DescribeUserPool.html>`_ responses when you set this value to ``0`` or don't provide it. To activate this setting, your user pool must be in the `Essentials tier <https://docs.aws.amazon.com/cognito/latest/developerguide/feature-plans-features-essentials.html>`_ or higher.
6516
6521
 
6517
6522
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-passwordhistorysize
6518
6523
  '''
@@ -6608,7 +6613,7 @@ class CfnUserPool(
6608
6613
  This data type is a request and response parameter of `CreateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateUserPool.html>`_ and `UpdateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateUserPool.html>`_ , and a response parameter of `DescribeUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DescribeUserPool.html>`_ .
6609
6614
 
6610
6615
  :param password_policy: The password policy settings for a user pool, including complexity, history, and length requirements.
6611
- :param sign_in_policy:
6616
+ :param sign_in_policy: The policy for allowed types of authentication in a user pool. To activate this setting, your user pool must be in the `Essentials tier <https://docs.aws.amazon.com/cognito/latest/developerguide/feature-plans-features-essentials.html>`_ or higher. This data type is a request and response parameter of `CreateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateUserPool.html>`_ and `UpdateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateUserPool.html>`_ , and a response parameter of `DescribeUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DescribeUserPool.html>`_ .
6612
6617
 
6613
6618
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-policies.html
6614
6619
  :exampleMetadata: fixture=_generated
@@ -6659,7 +6664,12 @@ class CfnUserPool(
6659
6664
  def sign_in_policy(
6660
6665
  self,
6661
6666
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnUserPool.SignInPolicyProperty"]]:
6662
- '''
6667
+ '''The policy for allowed types of authentication in a user pool.
6668
+
6669
+ To activate this setting, your user pool must be in the `Essentials tier <https://docs.aws.amazon.com/cognito/latest/developerguide/feature-plans-features-essentials.html>`_ or higher.
6670
+
6671
+ This data type is a request and response parameter of `CreateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateUserPool.html>`_ and `UpdateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateUserPool.html>`_ , and a response parameter of `DescribeUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DescribeUserPool.html>`_ .
6672
+
6663
6673
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-policies.html#cfn-cognito-userpool-policies-signinpolicy
6664
6674
  '''
6665
6675
  result = self._values.get("sign_in_policy")
@@ -7028,8 +7038,13 @@ class CfnUserPool(
7028
7038
  *,
7029
7039
  allowed_first_auth_factors: typing.Optional[typing.Sequence[builtins.str]] = None,
7030
7040
  ) -> None:
7031
- '''
7032
- :param allowed_first_auth_factors:
7041
+ '''The policy for allowed types of authentication in a user pool.
7042
+
7043
+ To activate this setting, your user pool must be in the `Essentials tier <https://docs.aws.amazon.com/cognito/latest/developerguide/feature-plans-features-essentials.html>`_ or higher.
7044
+
7045
+ This data type is a request and response parameter of `CreateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateUserPool.html>`_ and `UpdateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateUserPool.html>`_ , and a response parameter of `DescribeUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DescribeUserPool.html>`_ .
7046
+
7047
+ :param allowed_first_auth_factors: The sign-in methods that a user pool supports as the first factor. You can permit users to start authentication with a standard username and password, or with other one-time password and hardware factors. Supports values of ``EMAIL_OTP`` , ``SMS_OTP`` , ``WEB_AUTHN`` and ``PASSWORD`` ,
7033
7048
 
7034
7049
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-signinpolicy.html
7035
7050
  :exampleMetadata: fixture=_generated
@@ -7055,7 +7070,12 @@ class CfnUserPool(
7055
7070
  def allowed_first_auth_factors(
7056
7071
  self,
7057
7072
  ) -> typing.Optional[typing.List[builtins.str]]:
7058
- '''
7073
+ '''The sign-in methods that a user pool supports as the first factor.
7074
+
7075
+ You can permit users to start authentication with a standard username and password, or with other one-time password and hardware factors.
7076
+
7077
+ Supports values of ``EMAIL_OTP`` , ``SMS_OTP`` , ``WEB_AUTHN`` and ``PASSWORD`` ,
7078
+
7059
7079
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-signinpolicy.html#cfn-cognito-userpool-signinpolicy-allowedfirstauthfactors
7060
7080
  '''
7061
7081
  result = self._values.get("allowed_first_auth_factors")
@@ -7336,13 +7356,13 @@ class CfnUserPool(
7336
7356
  ) -> None:
7337
7357
  '''User pool add-ons.
7338
7358
 
7339
- Contains settings for activation of advanced security features. To log user security information but take no action, set to ``AUDIT`` . To configure automatic security responses to risky traffic to your user pool, set to ``ENFORCED`` .
7359
+ Contains settings for activation of threat protection. To log user security information but take no action, set to ``AUDIT`` . To configure automatic security responses to risky traffic to your user pool, set to ``ENFORCED`` .
7340
7360
 
7341
- For more information, see `Adding advanced security to a user pool <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-advanced-security.html>`_ .
7361
+ For more information, see `Adding advanced security to a user pool <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-advanced-security.html>`_ . To activate this setting, your user pool must be on the `Plus tier <https://docs.aws.amazon.com/cognito/latest/developerguide/feature-plans-features-plus.html>`_ .
7342
7362
 
7343
7363
  This data type is a request and response parameter of `CreateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateUserPool.html>`_ and `UpdateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateUserPool.html>`_ , and a response parameter of `DescribeUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DescribeUserPool.html>`_ .
7344
7364
 
7345
- :param advanced_security_additional_flows:
7365
+ :param advanced_security_additional_flows: Advanced security configuration options for additional authentication types in your user pool, including custom authentication.
7346
7366
  :param advanced_security_mode: The operating mode of advanced security features for standard authentication types in your user pool, including username-password and secure remote password (SRP) authentication.
7347
7367
 
7348
7368
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-userpooladdons.html
@@ -7375,7 +7395,8 @@ class CfnUserPool(
7375
7395
  def advanced_security_additional_flows(
7376
7396
  self,
7377
7397
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnUserPool.AdvancedSecurityAdditionalFlowsProperty"]]:
7378
- '''
7398
+ '''Advanced security configuration options for additional authentication types in your user pool, including custom authentication.
7399
+
7379
7400
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-userpooladdons.html#cfn-cognito-userpool-userpooladdons-advancedsecurityadditionalflows
7380
7401
  '''
7381
7402
  result = self._values.get("advanced_security_additional_flows")
@@ -7727,27 +7748,27 @@ class CfnUserPoolClient(
7727
7748
  '''
7728
7749
  :param scope: Scope in which this resource is defined.
7729
7750
  :param id: Construct identifier for this resource (unique in its scope).
7730
- :param user_pool_id: The user pool ID for the user pool where you want to create a user pool client.
7751
+ :param user_pool_id: The ID of the user pool where you want to create an app client.
7731
7752
  :param access_token_validity: The access token time limit. After this limit expires, your user can't use their access token. To specify the time unit for ``AccessTokenValidity`` as ``seconds`` , ``minutes`` , ``hours`` , or ``days`` , set a ``TokenValidityUnits`` value in your API request. For example, when you set ``AccessTokenValidity`` to ``10`` and ``TokenValidityUnits`` to ``hours`` , your user can authorize access with their access token for 10 hours. The default time unit for ``AccessTokenValidity`` in an API request is hours. *Valid range* is displayed below in seconds. If you don't specify otherwise in the configuration of your app client, your access tokens are valid for one hour.
7732
7753
  :param allowed_o_auth_flows: The OAuth grant types that you want your app client to generate. To create an app client that generates client credentials grants, you must add ``client_credentials`` as the only allowed OAuth flow. - **code** - Use a code grant flow, which provides an authorization code as the response. This code can be exchanged for access tokens with the ``/oauth2/token`` endpoint. - **implicit** - Issue the access token (and, optionally, ID token, based on scopes) directly to your user. - **client_credentials** - Issue the access token from the ``/oauth2/token`` endpoint directly to a non-person user using a combination of the client ID and client secret.
7733
7754
  :param allowed_o_auth_flows_user_pool_client: Set to ``true`` to use OAuth 2.0 features in your user pool app client. ``AllowedOAuthFlowsUserPoolClient`` must be ``true`` before you can configure the following features in your app client. - ``CallBackURLs`` : Callback URLs. - ``LogoutURLs`` : Sign-out redirect URLs. - ``AllowedOAuthScopes`` : OAuth 2.0 scopes. - ``AllowedOAuthFlows`` : Support for authorization code, implicit, and client credentials OAuth 2.0 grants. To use OAuth 2.0 features, configure one of these features in the Amazon Cognito console or set ``AllowedOAuthFlowsUserPoolClient`` to ``true`` in a ``CreateUserPoolClient`` or ``UpdateUserPoolClient`` API request. If you don't set a value for ``AllowedOAuthFlowsUserPoolClient`` in a request with the AWS CLI or SDKs, it defaults to ``false`` .
7734
- :param allowed_o_auth_scopes: The allowed OAuth scopes. Possible values provided by OAuth are ``phone`` , ``email`` , ``openid`` , and ``profile`` . Possible values provided by AWS are ``aws.cognito.signin.user.admin`` . Custom scopes created in Resource Servers are also supported.
7735
- :param analytics_configuration: The user pool analytics configuration for collecting metrics and sending them to your Amazon Pinpoint campaign. .. epigraph:: In AWS Regions where Amazon Pinpoint isn't available, user pools only support sending events to Amazon Pinpoint projects in AWS Region us-east-1. In Regions where Amazon Pinpoint is available, user pools support sending events to Amazon Pinpoint projects within that same Region.
7755
+ :param allowed_o_auth_scopes: The OAuth 2.0 scopes that you want to permit your app client to authorize. Scopes govern access control to user pool self-service API operations, user data from the ``userInfo`` endpoint, and third-party APIs. Possible values provided by OAuth are ``phone`` , ``email`` , ``openid`` , and ``profile`` . Possible values provided by AWS are ``aws.cognito.signin.user.admin`` . Custom scopes created in Resource Servers are also supported.
7756
+ :param analytics_configuration: The user pool analytics configuration for collecting metrics and sending them to your Amazon Pinpoint campaign. In AWS Regions where Amazon Pinpoint isn't available, user pools might not have access to analytics or might be configurable with campaigns in the US East (N. Virginia) Region. For more information, see `Using Amazon Pinpoint analytics <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-pinpoint-integration.html>`_ .
7736
7757
  :param auth_session_validity: Amazon Cognito creates a session token for each API request in an authentication flow. ``AuthSessionValidity`` is the duration, in minutes, of that session token. Your user pool native user must respond to each authentication challenge before the session expires.
7737
- :param callback_ur_ls: A list of allowed redirect (callback) URLs for the IdPs. A redirect URI must: - Be an absolute URI. - Be registered with the authorization server. - Not include a fragment component. See `OAuth 2.0 - Redirection Endpoint <https://docs.aws.amazon.com/https://tools.ietf.org/html/rfc6749#section-3.1.2>`_ . Amazon Cognito requires HTTPS over HTTP except for http://localhost for testing purposes only. App callback URLs such as myapp://example are also supported.
7738
- :param client_name: The client name for the user pool client you would like to create.
7739
- :param default_redirect_uri: The default redirect URI. In app clients with one assigned IdP, replaces ``redirect_uri`` in authentication requests. Must be in the ``CallbackURLs`` list. A redirect URI must: - Be an absolute URI. - Be registered with the authorization server. - Not include a fragment component. For more information, see `Default redirect URI <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-client-apps.html#cognito-user-pools-app-idp-settings-about>`_ . Amazon Cognito requires HTTPS over HTTP except for http://localhost for testing purposes only. App callback URLs such as myapp://example are also supported.
7758
+ :param callback_ur_ls: A list of allowed redirect (callback) URLs for the IdPs. A redirect URI must: - Be an absolute URI. - Be registered with the authorization server. Amazon Cognito doesn't accept authorization requests with ``redirect_uri`` values that aren't in the list of ``CallbackURLs`` that you provide in this parameter. - Not include a fragment component. See `OAuth 2.0 - Redirection Endpoint <https://docs.aws.amazon.com/https://tools.ietf.org/html/rfc6749#section-3.1.2>`_ . Amazon Cognito requires HTTPS over HTTP except for http://localhost for testing purposes only. App callback URLs such as myapp://example are also supported.
7759
+ :param client_name: A friendly name for the app client that you want to create.
7760
+ :param default_redirect_uri: The default redirect URI. In app clients with one assigned IdP, replaces ``redirect_uri`` in authentication requests. Must be in the ``CallbackURLs`` list.
7740
7761
  :param enable_propagate_additional_user_context_data: Activates the propagation of additional user context data. For more information about propagation of user context data, see `Adding advanced security to a user pool <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-threat-protection.html>`_ . If you don’t include this parameter, you can't send device fingerprint information, including source IP address, to Amazon Cognito advanced security. You can only activate ``EnablePropagateAdditionalUserContextData`` in an app client that has a client secret.
7741
7762
  :param enable_token_revocation: Activates or deactivates token revocation. For more information about revoking tokens, see `RevokeToken <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_RevokeToken.html>`_ . If you don't include this parameter, token revocation is automatically activated for the new user pool client.
7742
- :param explicit_auth_flows: The authentication flows that you want your user pool client to support. For each app client in your user pool, you can sign in your users with any combination of one or more flows, including with a user name and Secure Remote Password (SRP), a user name and password, or a custom authentication process that you define with Lambda functions. .. epigraph:: If you don't specify a value for ``ExplicitAuthFlows`` , your user client supports ``ALLOW_REFRESH_TOKEN_AUTH`` , ``ALLOW_USER_SRP_AUTH`` , and ``ALLOW_CUSTOM_AUTH`` . Valid values include: - ``ALLOW_USER_AUTH`` : Enable selection-based sign-in with ``USER_AUTH`` . This setting covers username-password, secure remote password (SRP), passwordless, and passkey authentication. This authentiation flow can do username-password and SRP authentication without other ``ExplicitAuthFlows`` permitting them. For example users can complete an SRP challenge through ``USER_AUTH`` without the flow ``USER_SRP_AUTH`` being active for the app client. This flow doesn't include ``CUSTOM_AUTH`` . - ``ALLOW_ADMIN_USER_PASSWORD_AUTH`` : Enable admin based user password authentication flow ``ADMIN_USER_PASSWORD_AUTH`` . This setting replaces the ``ADMIN_NO_SRP_AUTH`` setting. With this authentication flow, your app passes a user name and password to Amazon Cognito in the request, instead of using the Secure Remote Password (SRP) protocol to securely transmit the password. - ``ALLOW_CUSTOM_AUTH`` : Enable Lambda trigger based authentication. - ``ALLOW_USER_PASSWORD_AUTH`` : Enable user password-based authentication. In this flow, Amazon Cognito receives the password in the request instead of using the SRP protocol to verify passwords. - ``ALLOW_USER_SRP_AUTH`` : Enable SRP-based authentication. - ``ALLOW_REFRESH_TOKEN_AUTH`` : Enable authflow to refresh tokens. In some environments, you will see the values ``ADMIN_NO_SRP_AUTH`` , ``CUSTOM_AUTH_FLOW_ONLY`` , or ``USER_PASSWORD_AUTH`` . You can't assign these legacy ``ExplicitAuthFlows`` values to user pool clients at the same time as values that begin with ``ALLOW_`` , like ``ALLOW_USER_SRP_AUTH`` .
7743
- :param generate_secret: Boolean to specify whether you want to generate a secret for the user pool client being created.
7763
+ :param explicit_auth_flows: The authentication flows that you want your user pool client to support. For each app client in your user pool, you can sign in your users with any combination of one or more flows, including with a user name and Secure Remote Password (SRP), a user name and password, or a custom authentication process that you define with Lambda functions. .. epigraph:: If you don't specify a value for ``ExplicitAuthFlows`` , your user client supports ``ALLOW_REFRESH_TOKEN_AUTH`` , ``ALLOW_USER_SRP_AUTH`` , and ``ALLOW_CUSTOM_AUTH`` . Valid values include: - ``ALLOW_USER_AUTH`` : Enable selection-based sign-in with ``USER_AUTH`` . This setting covers username-password, secure remote password (SRP), passwordless, and passkey authentication. This authentiation flow can do username-password and SRP authentication without other ``ExplicitAuthFlows`` permitting them. For example users can complete an SRP challenge through ``USER_AUTH`` without the flow ``USER_SRP_AUTH`` being active for the app client. This flow doesn't include ``CUSTOM_AUTH`` . To activate this setting, your user pool must be in the `Essentials tier <https://docs.aws.amazon.com/cognito/latest/developerguide/feature-plans-features-essentials.html>`_ or higher. - ``ALLOW_ADMIN_USER_PASSWORD_AUTH`` : Enable admin based user password authentication flow ``ADMIN_USER_PASSWORD_AUTH`` . This setting replaces the ``ADMIN_NO_SRP_AUTH`` setting. With this authentication flow, your app passes a user name and password to Amazon Cognito in the request, instead of using the Secure Remote Password (SRP) protocol to securely transmit the password. - ``ALLOW_CUSTOM_AUTH`` : Enable Lambda trigger based authentication. - ``ALLOW_USER_PASSWORD_AUTH`` : Enable user password-based authentication. In this flow, Amazon Cognito receives the password in the request instead of using the SRP protocol to verify passwords. - ``ALLOW_USER_SRP_AUTH`` : Enable SRP-based authentication. - ``ALLOW_REFRESH_TOKEN_AUTH`` : Enable authflow to refresh tokens. In some environments, you will see the values ``ADMIN_NO_SRP_AUTH`` , ``CUSTOM_AUTH_FLOW_ONLY`` , or ``USER_PASSWORD_AUTH`` . You can't assign these legacy ``ExplicitAuthFlows`` values to user pool clients at the same time as values that begin with ``ALLOW_`` , like ``ALLOW_USER_SRP_AUTH`` .
7764
+ :param generate_secret: When ``true`` , generates a client secret for the app client. Client secrets are used with server-side and machine-to-machine applications. For more information, see `App client types <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-client-apps.html#user-pool-settings-client-app-client-types>`_ .
7744
7765
  :param id_token_validity: The ID token time limit. After this limit expires, your user can't use their ID token. To specify the time unit for ``IdTokenValidity`` as ``seconds`` , ``minutes`` , ``hours`` , or ``days`` , set a ``TokenValidityUnits`` value in your API request. For example, when you set ``IdTokenValidity`` as ``10`` and ``TokenValidityUnits`` as ``hours`` , your user can authenticate their session with their ID token for 10 hours. The default time unit for ``IdTokenValidity`` in an API request is hours. *Valid range* is displayed below in seconds. If you don't specify otherwise in the configuration of your app client, your ID tokens are valid for one hour.
7745
- :param logout_ur_ls: A list of allowed logout URLs for the IdPs.
7766
+ :param logout_ur_ls: A list of allowed logout URLs for managed login authentication. For more information, see `Logout endpoint <https://docs.aws.amazon.com/cognito/latest/developerguide/logout-endpoint.html>`_ .
7746
7767
  :param prevent_user_existence_errors: Errors and responses that you want Amazon Cognito APIs to return during authentication, account confirmation, and password recovery when the user doesn't exist in the user pool. When set to ``ENABLED`` and the user doesn't exist, authentication returns an error indicating either the username or password was incorrect. Account confirmation and password recovery return a response indicating a code was sent to a simulated destination. When set to ``LEGACY`` , those APIs return a ``UserNotFoundException`` exception if the user doesn't exist in the user pool. Valid values include: - ``ENABLED`` - This prevents user existence-related errors. - ``LEGACY`` - This represents the early behavior of Amazon Cognito where user existence related errors aren't prevented. Defaults to ``LEGACY`` when you don't provide a value.
7747
7768
  :param read_attributes: The list of user attributes that you want your app client to have read access to. After your user authenticates in your app, their access token authorizes them to read their own attribute value for any attribute in this list. An example of this kind of activity is when your user selects a link to view their profile information. Your app makes a `GetUser <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_GetUser.html>`_ API request to retrieve and display your user's profile data. When you don't specify the ``ReadAttributes`` for your app client, your app can read the values of ``email_verified`` , ``phone_number_verified`` , and the Standard attributes of your user pool. When your user pool app client has read access to these default attributes, ``ReadAttributes`` doesn't return any information. Amazon Cognito only populates ``ReadAttributes`` in the API response if you have specified your own custom set of read attributes.
7748
7769
  :param refresh_token_validity: The refresh token time limit. After this limit expires, your user can't use their refresh token. To specify the time unit for ``RefreshTokenValidity`` as ``seconds`` , ``minutes`` , ``hours`` , or ``days`` , set a ``TokenValidityUnits`` value in your API request. For example, when you set ``RefreshTokenValidity`` as ``10`` and ``TokenValidityUnits`` as ``days`` , your user can refresh their session and retrieve new access and ID tokens for 10 days. The default time unit for ``RefreshTokenValidity`` in an API request is days. You can't set ``RefreshTokenValidity`` to 0. If you do, Amazon Cognito overrides the value with the default value of 30 days. *Valid range* is displayed below in seconds. If you don't specify otherwise in the configuration of your app client, your refresh tokens are valid for 30 days.
7749
- :param supported_identity_providers: A list of provider names for the identity providers (IdPs) that are supported on this client. The following are supported: ``COGNITO`` , ``Facebook`` , ``Google`` , ``SignInWithApple`` , and ``LoginWithAmazon`` . You can also specify the names that you configured for the SAML and OIDC IdPs in your user pool, for example ``MySAMLIdP`` or ``MyOIDCIdP`` . This setting applies to providers that you can access with the `hosted UI and OAuth 2.0 authorization server <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-app-integration.html>`_ . The removal of ``COGNITO`` from this list doesn't prevent authentication operations for local users with the user pools API in an AWS SDK. The only way to prevent API-based authentication is to block access with a `AWS WAF rule <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-waf.html>`_ .
7750
- :param token_validity_units: The units in which the validity times are represented. The default unit for RefreshToken is days, and default for ID and access tokens are hours.
7770
+ :param supported_identity_providers: A list of provider names for the identity providers (IdPs) that are supported on this client. The following are supported: ``COGNITO`` , ``Facebook`` , ``Google`` , ``SignInWithApple`` , and ``LoginWithAmazon`` . You can also specify the names that you configured for the SAML and OIDC IdPs in your user pool, for example ``MySAMLIdP`` or ``MyOIDCIdP`` . This setting applies to providers that you can access with `managed login <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-managed-login.html>`_ . The removal of ``COGNITO`` from this list doesn't prevent authentication operations for local users with the user pools API in an AWS SDK. The only way to prevent API-based authentication is to block access with a `AWS WAF rule <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-waf.html>`_ .
7771
+ :param token_validity_units: The units that validity times are represented in. The default unit for refresh tokens is days, and the default for ID and access tokens are hours.
7751
7772
  :param write_attributes: The list of user attributes that you want your app client to have write access to. After your user authenticates in your app, their access token authorizes them to set or modify their own attribute value for any attribute in this list. An example of this kind of activity is when you present your user with a form to update their profile information and they change their last name. Your app then makes an `UpdateUserAttributes <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateUserAttributes.html>`_ API request and sets ``family_name`` to the new value. When you don't specify the ``WriteAttributes`` for your app client, your app can write the values of the Standard attributes of your user pool. When your user pool has write access to these default attributes, ``WriteAttributes`` doesn't return any information. Amazon Cognito only populates ``WriteAttributes`` in the API response if you have specified your own custom set of write attributes. If your app client allows users to sign in through an IdP, this array must include all attributes that you have mapped to IdP attributes. Amazon Cognito updates mapped attributes when users sign in to your application through an IdP. If your app client does not have write access to a mapped attribute, Amazon Cognito throws an error when it tries to update the attribute. For more information, see `Specifying IdP Attribute Mappings for Your user pool <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-specifying-attribute-mapping.html>`_ .
7752
7773
  '''
7753
7774
  if __debug__:
@@ -7844,7 +7865,7 @@ class CfnUserPoolClient(
7844
7865
  @builtins.property
7845
7866
  @jsii.member(jsii_name="userPoolId")
7846
7867
  def user_pool_id(self) -> builtins.str:
7847
- '''The user pool ID for the user pool where you want to create a user pool client.'''
7868
+ '''The ID of the user pool where you want to create an app client.'''
7848
7869
  return typing.cast(builtins.str, jsii.get(self, "userPoolId"))
7849
7870
 
7850
7871
  @user_pool_id.setter
@@ -7904,7 +7925,7 @@ class CfnUserPoolClient(
7904
7925
  @builtins.property
7905
7926
  @jsii.member(jsii_name="allowedOAuthScopes")
7906
7927
  def allowed_o_auth_scopes(self) -> typing.Optional[typing.List[builtins.str]]:
7907
- '''The allowed OAuth scopes.'''
7928
+ '''The OAuth 2.0 scopes that you want to permit your app client to authorize. Scopes govern access control to user pool self-service API operations, user data from the ``userInfo`` endpoint, and third-party APIs. Possible values provided by OAuth are ``phone`` , ``email`` , ``openid`` , and ``profile`` . Possible values provided by AWS are ``aws.cognito.signin.user.admin`` . Custom scopes created in Resource Servers are also supported.'''
7908
7929
  return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "allowedOAuthScopes"))
7909
7930
 
7910
7931
  @allowed_o_auth_scopes.setter
@@ -7964,7 +7985,7 @@ class CfnUserPoolClient(
7964
7985
  @builtins.property
7965
7986
  @jsii.member(jsii_name="clientName")
7966
7987
  def client_name(self) -> typing.Optional[builtins.str]:
7967
- '''The client name for the user pool client you would like to create.'''
7988
+ '''A friendly name for the app client that you want to create.'''
7968
7989
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "clientName"))
7969
7990
 
7970
7991
  @client_name.setter
@@ -8047,7 +8068,7 @@ class CfnUserPoolClient(
8047
8068
  def generate_secret(
8048
8069
  self,
8049
8070
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
8050
- '''Boolean to specify whether you want to generate a secret for the user pool client being created.'''
8071
+ '''When ``true`` , generates a client secret for the app client.'''
8051
8072
  return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "generateSecret"))
8052
8073
 
8053
8074
  @generate_secret.setter
@@ -8076,7 +8097,7 @@ class CfnUserPoolClient(
8076
8097
  @builtins.property
8077
8098
  @jsii.member(jsii_name="logoutUrLs")
8078
8099
  def logout_ur_ls(self) -> typing.Optional[typing.List[builtins.str]]:
8079
- '''A list of allowed logout URLs for the IdPs.'''
8100
+ '''A list of allowed logout URLs for managed login authentication.'''
8080
8101
  return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "logoutUrLs"))
8081
8102
 
8082
8103
  @logout_ur_ls.setter
@@ -8154,7 +8175,7 @@ class CfnUserPoolClient(
8154
8175
  def token_validity_units(
8155
8176
  self,
8156
8177
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnUserPoolClient.TokenValidityUnitsProperty"]]:
8157
- '''The units in which the validity times are represented.'''
8178
+ '''The units that validity times are represented in.'''
8158
8179
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnUserPoolClient.TokenValidityUnitsProperty"]], jsii.get(self, "tokenValidityUnits"))
8159
8180
 
8160
8181
  @token_validity_units.setter
@@ -8469,27 +8490,27 @@ class CfnUserPoolClientProps:
8469
8490
  ) -> None:
8470
8491
  '''Properties for defining a ``CfnUserPoolClient``.
8471
8492
 
8472
- :param user_pool_id: The user pool ID for the user pool where you want to create a user pool client.
8493
+ :param user_pool_id: The ID of the user pool where you want to create an app client.
8473
8494
  :param access_token_validity: The access token time limit. After this limit expires, your user can't use their access token. To specify the time unit for ``AccessTokenValidity`` as ``seconds`` , ``minutes`` , ``hours`` , or ``days`` , set a ``TokenValidityUnits`` value in your API request. For example, when you set ``AccessTokenValidity`` to ``10`` and ``TokenValidityUnits`` to ``hours`` , your user can authorize access with their access token for 10 hours. The default time unit for ``AccessTokenValidity`` in an API request is hours. *Valid range* is displayed below in seconds. If you don't specify otherwise in the configuration of your app client, your access tokens are valid for one hour.
8474
8495
  :param allowed_o_auth_flows: The OAuth grant types that you want your app client to generate. To create an app client that generates client credentials grants, you must add ``client_credentials`` as the only allowed OAuth flow. - **code** - Use a code grant flow, which provides an authorization code as the response. This code can be exchanged for access tokens with the ``/oauth2/token`` endpoint. - **implicit** - Issue the access token (and, optionally, ID token, based on scopes) directly to your user. - **client_credentials** - Issue the access token from the ``/oauth2/token`` endpoint directly to a non-person user using a combination of the client ID and client secret.
8475
8496
  :param allowed_o_auth_flows_user_pool_client: Set to ``true`` to use OAuth 2.0 features in your user pool app client. ``AllowedOAuthFlowsUserPoolClient`` must be ``true`` before you can configure the following features in your app client. - ``CallBackURLs`` : Callback URLs. - ``LogoutURLs`` : Sign-out redirect URLs. - ``AllowedOAuthScopes`` : OAuth 2.0 scopes. - ``AllowedOAuthFlows`` : Support for authorization code, implicit, and client credentials OAuth 2.0 grants. To use OAuth 2.0 features, configure one of these features in the Amazon Cognito console or set ``AllowedOAuthFlowsUserPoolClient`` to ``true`` in a ``CreateUserPoolClient`` or ``UpdateUserPoolClient`` API request. If you don't set a value for ``AllowedOAuthFlowsUserPoolClient`` in a request with the AWS CLI or SDKs, it defaults to ``false`` .
8476
- :param allowed_o_auth_scopes: The allowed OAuth scopes. Possible values provided by OAuth are ``phone`` , ``email`` , ``openid`` , and ``profile`` . Possible values provided by AWS are ``aws.cognito.signin.user.admin`` . Custom scopes created in Resource Servers are also supported.
8477
- :param analytics_configuration: The user pool analytics configuration for collecting metrics and sending them to your Amazon Pinpoint campaign. .. epigraph:: In AWS Regions where Amazon Pinpoint isn't available, user pools only support sending events to Amazon Pinpoint projects in AWS Region us-east-1. In Regions where Amazon Pinpoint is available, user pools support sending events to Amazon Pinpoint projects within that same Region.
8497
+ :param allowed_o_auth_scopes: The OAuth 2.0 scopes that you want to permit your app client to authorize. Scopes govern access control to user pool self-service API operations, user data from the ``userInfo`` endpoint, and third-party APIs. Possible values provided by OAuth are ``phone`` , ``email`` , ``openid`` , and ``profile`` . Possible values provided by AWS are ``aws.cognito.signin.user.admin`` . Custom scopes created in Resource Servers are also supported.
8498
+ :param analytics_configuration: The user pool analytics configuration for collecting metrics and sending them to your Amazon Pinpoint campaign. In AWS Regions where Amazon Pinpoint isn't available, user pools might not have access to analytics or might be configurable with campaigns in the US East (N. Virginia) Region. For more information, see `Using Amazon Pinpoint analytics <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-pinpoint-integration.html>`_ .
8478
8499
  :param auth_session_validity: Amazon Cognito creates a session token for each API request in an authentication flow. ``AuthSessionValidity`` is the duration, in minutes, of that session token. Your user pool native user must respond to each authentication challenge before the session expires.
8479
- :param callback_ur_ls: A list of allowed redirect (callback) URLs for the IdPs. A redirect URI must: - Be an absolute URI. - Be registered with the authorization server. - Not include a fragment component. See `OAuth 2.0 - Redirection Endpoint <https://docs.aws.amazon.com/https://tools.ietf.org/html/rfc6749#section-3.1.2>`_ . Amazon Cognito requires HTTPS over HTTP except for http://localhost for testing purposes only. App callback URLs such as myapp://example are also supported.
8480
- :param client_name: The client name for the user pool client you would like to create.
8481
- :param default_redirect_uri: The default redirect URI. In app clients with one assigned IdP, replaces ``redirect_uri`` in authentication requests. Must be in the ``CallbackURLs`` list. A redirect URI must: - Be an absolute URI. - Be registered with the authorization server. - Not include a fragment component. For more information, see `Default redirect URI <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-client-apps.html#cognito-user-pools-app-idp-settings-about>`_ . Amazon Cognito requires HTTPS over HTTP except for http://localhost for testing purposes only. App callback URLs such as myapp://example are also supported.
8500
+ :param callback_ur_ls: A list of allowed redirect (callback) URLs for the IdPs. A redirect URI must: - Be an absolute URI. - Be registered with the authorization server. Amazon Cognito doesn't accept authorization requests with ``redirect_uri`` values that aren't in the list of ``CallbackURLs`` that you provide in this parameter. - Not include a fragment component. See `OAuth 2.0 - Redirection Endpoint <https://docs.aws.amazon.com/https://tools.ietf.org/html/rfc6749#section-3.1.2>`_ . Amazon Cognito requires HTTPS over HTTP except for http://localhost for testing purposes only. App callback URLs such as myapp://example are also supported.
8501
+ :param client_name: A friendly name for the app client that you want to create.
8502
+ :param default_redirect_uri: The default redirect URI. In app clients with one assigned IdP, replaces ``redirect_uri`` in authentication requests. Must be in the ``CallbackURLs`` list.
8482
8503
  :param enable_propagate_additional_user_context_data: Activates the propagation of additional user context data. For more information about propagation of user context data, see `Adding advanced security to a user pool <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-threat-protection.html>`_ . If you don’t include this parameter, you can't send device fingerprint information, including source IP address, to Amazon Cognito advanced security. You can only activate ``EnablePropagateAdditionalUserContextData`` in an app client that has a client secret.
8483
8504
  :param enable_token_revocation: Activates or deactivates token revocation. For more information about revoking tokens, see `RevokeToken <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_RevokeToken.html>`_ . If you don't include this parameter, token revocation is automatically activated for the new user pool client.
8484
- :param explicit_auth_flows: The authentication flows that you want your user pool client to support. For each app client in your user pool, you can sign in your users with any combination of one or more flows, including with a user name and Secure Remote Password (SRP), a user name and password, or a custom authentication process that you define with Lambda functions. .. epigraph:: If you don't specify a value for ``ExplicitAuthFlows`` , your user client supports ``ALLOW_REFRESH_TOKEN_AUTH`` , ``ALLOW_USER_SRP_AUTH`` , and ``ALLOW_CUSTOM_AUTH`` . Valid values include: - ``ALLOW_USER_AUTH`` : Enable selection-based sign-in with ``USER_AUTH`` . This setting covers username-password, secure remote password (SRP), passwordless, and passkey authentication. This authentiation flow can do username-password and SRP authentication without other ``ExplicitAuthFlows`` permitting them. For example users can complete an SRP challenge through ``USER_AUTH`` without the flow ``USER_SRP_AUTH`` being active for the app client. This flow doesn't include ``CUSTOM_AUTH`` . - ``ALLOW_ADMIN_USER_PASSWORD_AUTH`` : Enable admin based user password authentication flow ``ADMIN_USER_PASSWORD_AUTH`` . This setting replaces the ``ADMIN_NO_SRP_AUTH`` setting. With this authentication flow, your app passes a user name and password to Amazon Cognito in the request, instead of using the Secure Remote Password (SRP) protocol to securely transmit the password. - ``ALLOW_CUSTOM_AUTH`` : Enable Lambda trigger based authentication. - ``ALLOW_USER_PASSWORD_AUTH`` : Enable user password-based authentication. In this flow, Amazon Cognito receives the password in the request instead of using the SRP protocol to verify passwords. - ``ALLOW_USER_SRP_AUTH`` : Enable SRP-based authentication. - ``ALLOW_REFRESH_TOKEN_AUTH`` : Enable authflow to refresh tokens. In some environments, you will see the values ``ADMIN_NO_SRP_AUTH`` , ``CUSTOM_AUTH_FLOW_ONLY`` , or ``USER_PASSWORD_AUTH`` . You can't assign these legacy ``ExplicitAuthFlows`` values to user pool clients at the same time as values that begin with ``ALLOW_`` , like ``ALLOW_USER_SRP_AUTH`` .
8485
- :param generate_secret: Boolean to specify whether you want to generate a secret for the user pool client being created.
8505
+ :param explicit_auth_flows: The authentication flows that you want your user pool client to support. For each app client in your user pool, you can sign in your users with any combination of one or more flows, including with a user name and Secure Remote Password (SRP), a user name and password, or a custom authentication process that you define with Lambda functions. .. epigraph:: If you don't specify a value for ``ExplicitAuthFlows`` , your user client supports ``ALLOW_REFRESH_TOKEN_AUTH`` , ``ALLOW_USER_SRP_AUTH`` , and ``ALLOW_CUSTOM_AUTH`` . Valid values include: - ``ALLOW_USER_AUTH`` : Enable selection-based sign-in with ``USER_AUTH`` . This setting covers username-password, secure remote password (SRP), passwordless, and passkey authentication. This authentiation flow can do username-password and SRP authentication without other ``ExplicitAuthFlows`` permitting them. For example users can complete an SRP challenge through ``USER_AUTH`` without the flow ``USER_SRP_AUTH`` being active for the app client. This flow doesn't include ``CUSTOM_AUTH`` . To activate this setting, your user pool must be in the `Essentials tier <https://docs.aws.amazon.com/cognito/latest/developerguide/feature-plans-features-essentials.html>`_ or higher. - ``ALLOW_ADMIN_USER_PASSWORD_AUTH`` : Enable admin based user password authentication flow ``ADMIN_USER_PASSWORD_AUTH`` . This setting replaces the ``ADMIN_NO_SRP_AUTH`` setting. With this authentication flow, your app passes a user name and password to Amazon Cognito in the request, instead of using the Secure Remote Password (SRP) protocol to securely transmit the password. - ``ALLOW_CUSTOM_AUTH`` : Enable Lambda trigger based authentication. - ``ALLOW_USER_PASSWORD_AUTH`` : Enable user password-based authentication. In this flow, Amazon Cognito receives the password in the request instead of using the SRP protocol to verify passwords. - ``ALLOW_USER_SRP_AUTH`` : Enable SRP-based authentication. - ``ALLOW_REFRESH_TOKEN_AUTH`` : Enable authflow to refresh tokens. In some environments, you will see the values ``ADMIN_NO_SRP_AUTH`` , ``CUSTOM_AUTH_FLOW_ONLY`` , or ``USER_PASSWORD_AUTH`` . You can't assign these legacy ``ExplicitAuthFlows`` values to user pool clients at the same time as values that begin with ``ALLOW_`` , like ``ALLOW_USER_SRP_AUTH`` .
8506
+ :param generate_secret: When ``true`` , generates a client secret for the app client. Client secrets are used with server-side and machine-to-machine applications. For more information, see `App client types <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-client-apps.html#user-pool-settings-client-app-client-types>`_ .
8486
8507
  :param id_token_validity: The ID token time limit. After this limit expires, your user can't use their ID token. To specify the time unit for ``IdTokenValidity`` as ``seconds`` , ``minutes`` , ``hours`` , or ``days`` , set a ``TokenValidityUnits`` value in your API request. For example, when you set ``IdTokenValidity`` as ``10`` and ``TokenValidityUnits`` as ``hours`` , your user can authenticate their session with their ID token for 10 hours. The default time unit for ``IdTokenValidity`` in an API request is hours. *Valid range* is displayed below in seconds. If you don't specify otherwise in the configuration of your app client, your ID tokens are valid for one hour.
8487
- :param logout_ur_ls: A list of allowed logout URLs for the IdPs.
8508
+ :param logout_ur_ls: A list of allowed logout URLs for managed login authentication. For more information, see `Logout endpoint <https://docs.aws.amazon.com/cognito/latest/developerguide/logout-endpoint.html>`_ .
8488
8509
  :param prevent_user_existence_errors: Errors and responses that you want Amazon Cognito APIs to return during authentication, account confirmation, and password recovery when the user doesn't exist in the user pool. When set to ``ENABLED`` and the user doesn't exist, authentication returns an error indicating either the username or password was incorrect. Account confirmation and password recovery return a response indicating a code was sent to a simulated destination. When set to ``LEGACY`` , those APIs return a ``UserNotFoundException`` exception if the user doesn't exist in the user pool. Valid values include: - ``ENABLED`` - This prevents user existence-related errors. - ``LEGACY`` - This represents the early behavior of Amazon Cognito where user existence related errors aren't prevented. Defaults to ``LEGACY`` when you don't provide a value.
8489
8510
  :param read_attributes: The list of user attributes that you want your app client to have read access to. After your user authenticates in your app, their access token authorizes them to read their own attribute value for any attribute in this list. An example of this kind of activity is when your user selects a link to view their profile information. Your app makes a `GetUser <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_GetUser.html>`_ API request to retrieve and display your user's profile data. When you don't specify the ``ReadAttributes`` for your app client, your app can read the values of ``email_verified`` , ``phone_number_verified`` , and the Standard attributes of your user pool. When your user pool app client has read access to these default attributes, ``ReadAttributes`` doesn't return any information. Amazon Cognito only populates ``ReadAttributes`` in the API response if you have specified your own custom set of read attributes.
8490
8511
  :param refresh_token_validity: The refresh token time limit. After this limit expires, your user can't use their refresh token. To specify the time unit for ``RefreshTokenValidity`` as ``seconds`` , ``minutes`` , ``hours`` , or ``days`` , set a ``TokenValidityUnits`` value in your API request. For example, when you set ``RefreshTokenValidity`` as ``10`` and ``TokenValidityUnits`` as ``days`` , your user can refresh their session and retrieve new access and ID tokens for 10 days. The default time unit for ``RefreshTokenValidity`` in an API request is days. You can't set ``RefreshTokenValidity`` to 0. If you do, Amazon Cognito overrides the value with the default value of 30 days. *Valid range* is displayed below in seconds. If you don't specify otherwise in the configuration of your app client, your refresh tokens are valid for 30 days.
8491
- :param supported_identity_providers: A list of provider names for the identity providers (IdPs) that are supported on this client. The following are supported: ``COGNITO`` , ``Facebook`` , ``Google`` , ``SignInWithApple`` , and ``LoginWithAmazon`` . You can also specify the names that you configured for the SAML and OIDC IdPs in your user pool, for example ``MySAMLIdP`` or ``MyOIDCIdP`` . This setting applies to providers that you can access with the `hosted UI and OAuth 2.0 authorization server <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-app-integration.html>`_ . The removal of ``COGNITO`` from this list doesn't prevent authentication operations for local users with the user pools API in an AWS SDK. The only way to prevent API-based authentication is to block access with a `AWS WAF rule <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-waf.html>`_ .
8492
- :param token_validity_units: The units in which the validity times are represented. The default unit for RefreshToken is days, and default for ID and access tokens are hours.
8512
+ :param supported_identity_providers: A list of provider names for the identity providers (IdPs) that are supported on this client. The following are supported: ``COGNITO`` , ``Facebook`` , ``Google`` , ``SignInWithApple`` , and ``LoginWithAmazon`` . You can also specify the names that you configured for the SAML and OIDC IdPs in your user pool, for example ``MySAMLIdP`` or ``MyOIDCIdP`` . This setting applies to providers that you can access with `managed login <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-managed-login.html>`_ . The removal of ``COGNITO`` from this list doesn't prevent authentication operations for local users with the user pools API in an AWS SDK. The only way to prevent API-based authentication is to block access with a `AWS WAF rule <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-waf.html>`_ .
8513
+ :param token_validity_units: The units that validity times are represented in. The default unit for refresh tokens is days, and the default for ID and access tokens are hours.
8493
8514
  :param write_attributes: The list of user attributes that you want your app client to have write access to. After your user authenticates in your app, their access token authorizes them to set or modify their own attribute value for any attribute in this list. An example of this kind of activity is when you present your user with a form to update their profile information and they change their last name. Your app then makes an `UpdateUserAttributes <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateUserAttributes.html>`_ API request and sets ``family_name`` to the new value. When you don't specify the ``WriteAttributes`` for your app client, your app can write the values of the Standard attributes of your user pool. When your user pool has write access to these default attributes, ``WriteAttributes`` doesn't return any information. Amazon Cognito only populates ``WriteAttributes`` in the API response if you have specified your own custom set of write attributes. If your app client allows users to sign in through an IdP, this array must include all attributes that you have mapped to IdP attributes. Amazon Cognito updates mapped attributes when users sign in to your application through an IdP. If your app client does not have write access to a mapped attribute, Amazon Cognito throws an error when it tries to update the attribute. For more information, see `Specifying IdP Attribute Mappings for Your user pool <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-specifying-attribute-mapping.html>`_ .
8494
8515
 
8495
8516
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html
@@ -8610,7 +8631,7 @@ class CfnUserPoolClientProps:
8610
8631
 
8611
8632
  @builtins.property
8612
8633
  def user_pool_id(self) -> builtins.str:
8613
- '''The user pool ID for the user pool where you want to create a user pool client.
8634
+ '''The ID of the user pool where you want to create an app client.
8614
8635
 
8615
8636
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-userpoolid
8616
8637
  '''
@@ -8674,9 +8695,7 @@ class CfnUserPoolClientProps:
8674
8695
 
8675
8696
  @builtins.property
8676
8697
  def allowed_o_auth_scopes(self) -> typing.Optional[typing.List[builtins.str]]:
8677
- '''The allowed OAuth scopes.
8678
-
8679
- Possible values provided by OAuth are ``phone`` , ``email`` , ``openid`` , and ``profile`` . Possible values provided by AWS are ``aws.cognito.signin.user.admin`` . Custom scopes created in Resource Servers are also supported.
8698
+ '''The OAuth 2.0 scopes that you want to permit your app client to authorize. Scopes govern access control to user pool self-service API operations, user data from the ``userInfo`` endpoint, and third-party APIs. Possible values provided by OAuth are ``phone`` , ``email`` , ``openid`` , and ``profile`` . Possible values provided by AWS are ``aws.cognito.signin.user.admin`` . Custom scopes created in Resource Servers are also supported.
8680
8699
 
8681
8700
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-allowedoauthscopes
8682
8701
  '''
@@ -8689,9 +8708,7 @@ class CfnUserPoolClientProps:
8689
8708
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnUserPoolClient.AnalyticsConfigurationProperty]]:
8690
8709
  '''The user pool analytics configuration for collecting metrics and sending them to your Amazon Pinpoint campaign.
8691
8710
 
8692
- .. epigraph::
8693
-
8694
- In AWS Regions where Amazon Pinpoint isn't available, user pools only support sending events to Amazon Pinpoint projects in AWS Region us-east-1. In Regions where Amazon Pinpoint is available, user pools support sending events to Amazon Pinpoint projects within that same Region.
8711
+ In AWS Regions where Amazon Pinpoint isn't available, user pools might not have access to analytics or might be configurable with campaigns in the US East (N. Virginia) Region. For more information, see `Using Amazon Pinpoint analytics <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-pinpoint-integration.html>`_ .
8695
8712
 
8696
8713
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-analyticsconfiguration
8697
8714
  '''
@@ -8716,7 +8733,7 @@ class CfnUserPoolClientProps:
8716
8733
  A redirect URI must:
8717
8734
 
8718
8735
  - Be an absolute URI.
8719
- - Be registered with the authorization server.
8736
+ - Be registered with the authorization server. Amazon Cognito doesn't accept authorization requests with ``redirect_uri`` values that aren't in the list of ``CallbackURLs`` that you provide in this parameter.
8720
8737
  - Not include a fragment component.
8721
8738
 
8722
8739
  See `OAuth 2.0 - Redirection Endpoint <https://docs.aws.amazon.com/https://tools.ietf.org/html/rfc6749#section-3.1.2>`_ .
@@ -8732,7 +8749,7 @@ class CfnUserPoolClientProps:
8732
8749
 
8733
8750
  @builtins.property
8734
8751
  def client_name(self) -> typing.Optional[builtins.str]:
8735
- '''The client name for the user pool client you would like to create.
8752
+ '''A friendly name for the app client that you want to create.
8736
8753
 
8737
8754
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-clientname
8738
8755
  '''
@@ -8745,18 +8762,6 @@ class CfnUserPoolClientProps:
8745
8762
 
8746
8763
  In app clients with one assigned IdP, replaces ``redirect_uri`` in authentication requests. Must be in the ``CallbackURLs`` list.
8747
8764
 
8748
- A redirect URI must:
8749
-
8750
- - Be an absolute URI.
8751
- - Be registered with the authorization server.
8752
- - Not include a fragment component.
8753
-
8754
- For more information, see `Default redirect URI <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-client-apps.html#cognito-user-pools-app-idp-settings-about>`_ .
8755
-
8756
- Amazon Cognito requires HTTPS over HTTP except for http://localhost for testing purposes only.
8757
-
8758
- App callback URLs such as myapp://example are also supported.
8759
-
8760
8765
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-defaultredirecturi
8761
8766
  '''
8762
8767
  result = self._values.get("default_redirect_uri")
@@ -8800,6 +8805,9 @@ class CfnUserPoolClientProps:
8800
8805
  Valid values include:
8801
8806
 
8802
8807
  - ``ALLOW_USER_AUTH`` : Enable selection-based sign-in with ``USER_AUTH`` . This setting covers username-password, secure remote password (SRP), passwordless, and passkey authentication. This authentiation flow can do username-password and SRP authentication without other ``ExplicitAuthFlows`` permitting them. For example users can complete an SRP challenge through ``USER_AUTH`` without the flow ``USER_SRP_AUTH`` being active for the app client. This flow doesn't include ``CUSTOM_AUTH`` .
8808
+
8809
+ To activate this setting, your user pool must be in the `Essentials tier <https://docs.aws.amazon.com/cognito/latest/developerguide/feature-plans-features-essentials.html>`_ or higher.
8810
+
8803
8811
  - ``ALLOW_ADMIN_USER_PASSWORD_AUTH`` : Enable admin based user password authentication flow ``ADMIN_USER_PASSWORD_AUTH`` . This setting replaces the ``ADMIN_NO_SRP_AUTH`` setting. With this authentication flow, your app passes a user name and password to Amazon Cognito in the request, instead of using the Secure Remote Password (SRP) protocol to securely transmit the password.
8804
8812
  - ``ALLOW_CUSTOM_AUTH`` : Enable Lambda trigger based authentication.
8805
8813
  - ``ALLOW_USER_PASSWORD_AUTH`` : Enable user password-based authentication. In this flow, Amazon Cognito receives the password in the request instead of using the SRP protocol to verify passwords.
@@ -8818,7 +8826,9 @@ class CfnUserPoolClientProps:
8818
8826
  def generate_secret(
8819
8827
  self,
8820
8828
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
8821
- '''Boolean to specify whether you want to generate a secret for the user pool client being created.
8829
+ '''When ``true`` , generates a client secret for the app client.
8830
+
8831
+ Client secrets are used with server-side and machine-to-machine applications. For more information, see `App client types <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-client-apps.html#user-pool-settings-client-app-client-types>`_ .
8822
8832
 
8823
8833
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-generatesecret
8824
8834
  '''
@@ -8845,7 +8855,9 @@ class CfnUserPoolClientProps:
8845
8855
 
8846
8856
  @builtins.property
8847
8857
  def logout_ur_ls(self) -> typing.Optional[typing.List[builtins.str]]:
8848
- '''A list of allowed logout URLs for the IdPs.
8858
+ '''A list of allowed logout URLs for managed login authentication.
8859
+
8860
+ For more information, see `Logout endpoint <https://docs.aws.amazon.com/cognito/latest/developerguide/logout-endpoint.html>`_ .
8849
8861
 
8850
8862
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-logouturls
8851
8863
  '''
@@ -8910,7 +8922,7 @@ class CfnUserPoolClientProps:
8910
8922
 
8911
8923
  The following are supported: ``COGNITO`` , ``Facebook`` , ``Google`` , ``SignInWithApple`` , and ``LoginWithAmazon`` . You can also specify the names that you configured for the SAML and OIDC IdPs in your user pool, for example ``MySAMLIdP`` or ``MyOIDCIdP`` .
8912
8924
 
8913
- This setting applies to providers that you can access with the `hosted UI and OAuth 2.0 authorization server <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-app-integration.html>`_ . The removal of ``COGNITO`` from this list doesn't prevent authentication operations for local users with the user pools API in an AWS SDK. The only way to prevent API-based authentication is to block access with a `AWS WAF rule <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-waf.html>`_ .
8925
+ This setting applies to providers that you can access with `managed login <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-managed-login.html>`_ . The removal of ``COGNITO`` from this list doesn't prevent authentication operations for local users with the user pools API in an AWS SDK. The only way to prevent API-based authentication is to block access with a `AWS WAF rule <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-waf.html>`_ .
8914
8926
 
8915
8927
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-supportedidentityproviders
8916
8928
  '''
@@ -8921,9 +8933,9 @@ class CfnUserPoolClientProps:
8921
8933
  def token_validity_units(
8922
8934
  self,
8923
8935
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnUserPoolClient.TokenValidityUnitsProperty]]:
8924
- '''The units in which the validity times are represented.
8936
+ '''The units that validity times are represented in.
8925
8937
 
8926
- The default unit for RefreshToken is days, and default for ID and access tokens are hours.
8938
+ The default unit for refresh tokens is days, and the default for ID and access tokens are hours.
8927
8939
 
8928
8940
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-tokenvalidityunits
8929
8941
  '''
@@ -9358,11 +9370,11 @@ class CfnUserPoolGroup(
9358
9370
  '''
9359
9371
  :param scope: Scope in which this resource is defined.
9360
9372
  :param id: Construct identifier for this resource (unique in its scope).
9361
- :param user_pool_id: The user pool ID for the user pool.
9362
- :param description: A string containing the description of the group.
9363
- :param group_name: The name of the group. Must be unique.
9373
+ :param user_pool_id: The ID of the user pool where you want to create a user group.
9374
+ :param description: A description of the group that you're creating.
9375
+ :param group_name: A name for the group. This name must be unique in your user pool.
9364
9376
  :param precedence: A non-negative integer value that specifies the precedence of this group relative to the other groups that a user can belong to in the user pool. Zero is the highest precedence value. Groups with lower ``Precedence`` values take precedence over groups with higher or null ``Precedence`` values. If a user belongs to two or more groups, it is the group with the lowest precedence value whose role ARN is given in the user's tokens for the ``cognito:roles`` and ``cognito:preferred_role`` claims. Two groups can have the same ``Precedence`` value. If this happens, neither group takes precedence over the other. If two groups with the same ``Precedence`` have the same role ARN, that role is used in the ``cognito:preferred_role`` claim in tokens for users in each group. If the two groups have different role ARNs, the ``cognito:preferred_role`` claim isn't set in users' tokens. The default ``Precedence`` value is null. The maximum ``Precedence`` value is ``2^31-1`` .
9365
- :param role_arn: The role Amazon Resource Name (ARN) for the group.
9377
+ :param role_arn: The Amazon Resource Name (ARN) for the IAM role that you want to associate with the group. A group role primarily declares a preferred role for the credentials that you get from an identity pool. Amazon Cognito ID tokens have a ``cognito:preferred_role`` claim that presents the highest-precedence group that a user belongs to. Both ID and access tokens also contain a ``cognito:groups`` claim that list all the groups that a user is a member of.
9366
9378
  '''
9367
9379
  if __debug__:
9368
9380
  type_hints = typing.get_type_hints(_typecheckingstub__64c0c3e44e677deced2e13e5ab4d3c7550518140bbe9dfaf681651d95cc8ab55)
@@ -9416,7 +9428,7 @@ class CfnUserPoolGroup(
9416
9428
  @builtins.property
9417
9429
  @jsii.member(jsii_name="userPoolId")
9418
9430
  def user_pool_id(self) -> builtins.str:
9419
- '''The user pool ID for the user pool.'''
9431
+ '''The ID of the user pool where you want to create a user group.'''
9420
9432
  return typing.cast(builtins.str, jsii.get(self, "userPoolId"))
9421
9433
 
9422
9434
  @user_pool_id.setter
@@ -9429,7 +9441,7 @@ class CfnUserPoolGroup(
9429
9441
  @builtins.property
9430
9442
  @jsii.member(jsii_name="description")
9431
9443
  def description(self) -> typing.Optional[builtins.str]:
9432
- '''A string containing the description of the group.'''
9444
+ '''A description of the group that you're creating.'''
9433
9445
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "description"))
9434
9446
 
9435
9447
  @description.setter
@@ -9442,7 +9454,7 @@ class CfnUserPoolGroup(
9442
9454
  @builtins.property
9443
9455
  @jsii.member(jsii_name="groupName")
9444
9456
  def group_name(self) -> typing.Optional[builtins.str]:
9445
- '''The name of the group.'''
9457
+ '''A name for the group.'''
9446
9458
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "groupName"))
9447
9459
 
9448
9460
  @group_name.setter
@@ -9468,7 +9480,7 @@ class CfnUserPoolGroup(
9468
9480
  @builtins.property
9469
9481
  @jsii.member(jsii_name="roleArn")
9470
9482
  def role_arn(self) -> typing.Optional[builtins.str]:
9471
- '''The role Amazon Resource Name (ARN) for the group.'''
9483
+ '''The Amazon Resource Name (ARN) for the IAM role that you want to associate with the group.'''
9472
9484
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "roleArn"))
9473
9485
 
9474
9486
  @role_arn.setter
@@ -9502,11 +9514,11 @@ class CfnUserPoolGroupProps:
9502
9514
  ) -> None:
9503
9515
  '''Properties for defining a ``CfnUserPoolGroup``.
9504
9516
 
9505
- :param user_pool_id: The user pool ID for the user pool.
9506
- :param description: A string containing the description of the group.
9507
- :param group_name: The name of the group. Must be unique.
9517
+ :param user_pool_id: The ID of the user pool where you want to create a user group.
9518
+ :param description: A description of the group that you're creating.
9519
+ :param group_name: A name for the group. This name must be unique in your user pool.
9508
9520
  :param precedence: A non-negative integer value that specifies the precedence of this group relative to the other groups that a user can belong to in the user pool. Zero is the highest precedence value. Groups with lower ``Precedence`` values take precedence over groups with higher or null ``Precedence`` values. If a user belongs to two or more groups, it is the group with the lowest precedence value whose role ARN is given in the user's tokens for the ``cognito:roles`` and ``cognito:preferred_role`` claims. Two groups can have the same ``Precedence`` value. If this happens, neither group takes precedence over the other. If two groups with the same ``Precedence`` have the same role ARN, that role is used in the ``cognito:preferred_role`` claim in tokens for users in each group. If the two groups have different role ARNs, the ``cognito:preferred_role`` claim isn't set in users' tokens. The default ``Precedence`` value is null. The maximum ``Precedence`` value is ``2^31-1`` .
9509
- :param role_arn: The role Amazon Resource Name (ARN) for the group.
9521
+ :param role_arn: The Amazon Resource Name (ARN) for the IAM role that you want to associate with the group. A group role primarily declares a preferred role for the credentials that you get from an identity pool. Amazon Cognito ID tokens have a ``cognito:preferred_role`` claim that presents the highest-precedence group that a user belongs to. Both ID and access tokens also contain a ``cognito:groups`` claim that list all the groups that a user is a member of.
9510
9522
 
9511
9523
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html
9512
9524
  :exampleMetadata: fixture=_generated
@@ -9548,7 +9560,7 @@ class CfnUserPoolGroupProps:
9548
9560
 
9549
9561
  @builtins.property
9550
9562
  def user_pool_id(self) -> builtins.str:
9551
- '''The user pool ID for the user pool.
9563
+ '''The ID of the user pool where you want to create a user group.
9552
9564
 
9553
9565
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-userpoolid
9554
9566
  '''
@@ -9558,7 +9570,7 @@ class CfnUserPoolGroupProps:
9558
9570
 
9559
9571
  @builtins.property
9560
9572
  def description(self) -> typing.Optional[builtins.str]:
9561
- '''A string containing the description of the group.
9573
+ '''A description of the group that you're creating.
9562
9574
 
9563
9575
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-description
9564
9576
  '''
@@ -9567,9 +9579,9 @@ class CfnUserPoolGroupProps:
9567
9579
 
9568
9580
  @builtins.property
9569
9581
  def group_name(self) -> typing.Optional[builtins.str]:
9570
- '''The name of the group.
9582
+ '''A name for the group.
9571
9583
 
9572
- Must be unique.
9584
+ This name must be unique in your user pool.
9573
9585
 
9574
9586
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-groupname
9575
9587
  '''
@@ -9593,7 +9605,9 @@ class CfnUserPoolGroupProps:
9593
9605
 
9594
9606
  @builtins.property
9595
9607
  def role_arn(self) -> typing.Optional[builtins.str]:
9596
- '''The role Amazon Resource Name (ARN) for the group.
9608
+ '''The Amazon Resource Name (ARN) for the IAM role that you want to associate with the group.
9609
+
9610
+ A group role primarily declares a preferred role for the credentials that you get from an identity pool. Amazon Cognito ID tokens have a ``cognito:preferred_role`` claim that presents the highest-precedence group that a user belongs to. Both ID and access tokens also contain a ``cognito:groups`` claim that list all the groups that a user is a member of.
9597
9611
 
9598
9612
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-rolearn
9599
9613
  '''
@@ -9661,11 +9675,11 @@ class CfnUserPoolIdentityProvider(
9661
9675
  :param scope: Scope in which this resource is defined.
9662
9676
  :param id: Construct identifier for this resource (unique in its scope).
9663
9677
  :param provider_details: The scopes, URLs, and identifiers for your external identity provider. The following examples describe the provider detail keys for each IdP type. These values and their schema are subject to change. Social IdP ``authorize_scopes`` values must match the values listed here. - **OpenID Connect (OIDC)** - Amazon Cognito accepts the following elements when it can't discover endpoint URLs from ``oidc_issuer`` : ``attributes_url`` , ``authorize_url`` , ``jwks_uri`` , ``token_url`` . Create or update request: ``"ProviderDetails": { "attributes_request_method": "GET", "attributes_url": "https://auth.example.com/userInfo", "authorize_scopes": "openid profile email", "authorize_url": "https://auth.example.com/authorize", "client_id": "1example23456789", "client_secret": "provider-app-client-secret", "jwks_uri": "https://auth.example.com/.well-known/jwks.json", "oidc_issuer": "https://auth.example.com", "token_url": "https://example.com/token" }`` Describe response: ``"ProviderDetails": { "attributes_request_method": "GET", "attributes_url": "https://auth.example.com/userInfo", "attributes_url_add_attributes": "false", "authorize_scopes": "openid profile email", "authorize_url": "https://auth.example.com/authorize", "client_id": "1example23456789", "client_secret": "provider-app-client-secret", "jwks_uri": "https://auth.example.com/.well-known/jwks.json", "oidc_issuer": "https://auth.example.com", "token_url": "https://example.com/token" }`` - **SAML** - Create or update request with Metadata URL: ``"ProviderDetails": { "IDPInit": "true", "IDPSignout": "true", "EncryptedResponses" : "true", "MetadataURL": "https://auth.example.com/sso/saml/metadata", "RequestSigningAlgorithm": "rsa-sha256" }`` Create or update request with Metadata file: ``"ProviderDetails": { "IDPInit": "true", "IDPSignout": "true", "EncryptedResponses" : "true", "MetadataFile": "[metadata XML]", "RequestSigningAlgorithm": "rsa-sha256" }`` The value of ``MetadataFile`` must be the plaintext metadata document with all quote (") characters escaped by backslashes. Describe response: ``"ProviderDetails": { "IDPInit": "true", "IDPSignout": "true", "EncryptedResponses" : "true", "ActiveEncryptionCertificate": "[certificate]", "MetadataURL": "https://auth.example.com/sso/saml/metadata", "RequestSigningAlgorithm": "rsa-sha256", "SLORedirectBindingURI": "https://auth.example.com/slo/saml", "SSORedirectBindingURI": "https://auth.example.com/sso/saml" }`` - **LoginWithAmazon** - Create or update request: ``"ProviderDetails": { "authorize_scopes": "profile postal_code", "client_id": "amzn1.application-oa2-client.1example23456789", "client_secret": "provider-app-client-secret"`` Describe response: ``"ProviderDetails": { "attributes_url": "https://api.amazon.com/user/profile", "attributes_url_add_attributes": "false", "authorize_scopes": "profile postal_code", "authorize_url": "https://www.amazon.com/ap/oa", "client_id": "amzn1.application-oa2-client.1example23456789", "client_secret": "provider-app-client-secret", "token_request_method": "POST", "token_url": "https://api.amazon.com/auth/o2/token" }`` - **Google** - Create or update request: ``"ProviderDetails": { "authorize_scopes": "email profile openid", "client_id": "1example23456789.apps.googleusercontent.com", "client_secret": "provider-app-client-secret" }`` Describe response: ``"ProviderDetails": { "attributes_url": "https://people.googleapis.com/v1/people/me?personFields=", "attributes_url_add_attributes": "true", "authorize_scopes": "email profile openid", "authorize_url": "https://accounts.google.com/o/oauth2/v2/auth", "client_id": "1example23456789.apps.googleusercontent.com", "client_secret": "provider-app-client-secret", "oidc_issuer": "https://accounts.google.com", "token_request_method": "POST", "token_url": "https://www.googleapis.com/oauth2/v4/token" }`` - **SignInWithApple** - Create or update request: ``"ProviderDetails": { "authorize_scopes": "email name", "client_id": "com.example.cognito", "private_key": "1EXAMPLE", "key_id": "2EXAMPLE", "team_id": "3EXAMPLE" }`` Describe response: ``"ProviderDetails": { "attributes_url_add_attributes": "false", "authorize_scopes": "email name", "authorize_url": "https://appleid.apple.com/auth/authorize", "client_id": "com.example.cognito", "key_id": "1EXAMPLE", "oidc_issuer": "https://appleid.apple.com", "team_id": "2EXAMPLE", "token_request_method": "POST", "token_url": "https://appleid.apple.com/auth/token" }`` - **Facebook** - Create or update request: ``"ProviderDetails": { "api_version": "v17.0", "authorize_scopes": "public_profile, email", "client_id": "1example23456789", "client_secret": "provider-app-client-secret" }`` Describe response: ``"ProviderDetails": { "api_version": "v17.0", "attributes_url": "https://graph.facebook.com/v17.0/me?fields=", "attributes_url_add_attributes": "true", "authorize_scopes": "public_profile, email", "authorize_url": "https://www.facebook.com/v17.0/dialog/oauth", "client_id": "1example23456789", "client_secret": "provider-app-client-secret", "token_request_method": "GET", "token_url": "https://graph.facebook.com/v17.0/oauth/access_token" }``
9664
- :param provider_name: The IdP name.
9665
- :param provider_type: The IdP type.
9666
- :param user_pool_id: The user pool ID.
9667
- :param attribute_mapping: A mapping of IdP attributes to standard and custom user pool attributes.
9668
- :param idp_identifiers: A list of IdP identifiers.
9678
+ :param provider_name: The name that you want to assign to the IdP. You can pass the identity provider name in the ``identity_provider`` query parameter of requests to the `Authorize endpoint <https://docs.aws.amazon.com/cognito/latest/developerguide/authorization-endpoint.html>`_ to silently redirect to sign-in with the associated IdP.
9679
+ :param provider_type: The type of IdP that you want to add. Amazon Cognito supports OIDC, SAML 2.0, Login With Amazon, Sign In With Apple, Google, and Facebook IdPs.
9680
+ :param user_pool_id: The Id of the user pool where you want to create an IdP.
9681
+ :param attribute_mapping: A mapping of IdP attributes to standard and custom user pool attributes. Specify a user pool attribute as the key of the key-value pair, and the IdP attribute claim name as the value.
9682
+ :param idp_identifiers: An array of IdP identifiers, for example ``"IdPIdentifiers": [ "MyIdP", "MyIdP2" ]`` . Identifiers are friendly names that you can pass in the ``idp_identifier`` query parameter of requests to the `Authorize endpoint <https://docs.aws.amazon.com/cognito/latest/developerguide/authorization-endpoint.html>`_ to silently redirect to sign-in with the associated IdP. Identifiers in a domain format also enable the use of `email-address matching with SAML providers <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-managing-saml-idp-naming.html>`_ .
9669
9683
  '''
9670
9684
  if __debug__:
9671
9685
  type_hints = typing.get_type_hints(_typecheckingstub__759e90505ceb64aa7002be11d4da4a87090102263927799f662a83f606483634)
@@ -9733,7 +9747,7 @@ class CfnUserPoolIdentityProvider(
9733
9747
  @builtins.property
9734
9748
  @jsii.member(jsii_name="providerName")
9735
9749
  def provider_name(self) -> builtins.str:
9736
- '''The IdP name.'''
9750
+ '''The name that you want to assign to the IdP.'''
9737
9751
  return typing.cast(builtins.str, jsii.get(self, "providerName"))
9738
9752
 
9739
9753
  @provider_name.setter
@@ -9746,7 +9760,7 @@ class CfnUserPoolIdentityProvider(
9746
9760
  @builtins.property
9747
9761
  @jsii.member(jsii_name="providerType")
9748
9762
  def provider_type(self) -> builtins.str:
9749
- '''The IdP type.'''
9763
+ '''The type of IdP that you want to add.'''
9750
9764
  return typing.cast(builtins.str, jsii.get(self, "providerType"))
9751
9765
 
9752
9766
  @provider_type.setter
@@ -9759,7 +9773,7 @@ class CfnUserPoolIdentityProvider(
9759
9773
  @builtins.property
9760
9774
  @jsii.member(jsii_name="userPoolId")
9761
9775
  def user_pool_id(self) -> builtins.str:
9762
- '''The user pool ID.'''
9776
+ '''The Id of the user pool where you want to create an IdP.'''
9763
9777
  return typing.cast(builtins.str, jsii.get(self, "userPoolId"))
9764
9778
 
9765
9779
  @user_pool_id.setter
@@ -9785,7 +9799,7 @@ class CfnUserPoolIdentityProvider(
9785
9799
  @builtins.property
9786
9800
  @jsii.member(jsii_name="idpIdentifiers")
9787
9801
  def idp_identifiers(self) -> typing.Optional[typing.List[builtins.str]]:
9788
- '''A list of IdP identifiers.'''
9802
+ '''An array of IdP identifiers, for example ``"IdPIdentifiers": [ "MyIdP", "MyIdP2" ]`` .'''
9789
9803
  return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "idpIdentifiers"))
9790
9804
 
9791
9805
  @idp_identifiers.setter
@@ -9825,11 +9839,11 @@ class CfnUserPoolIdentityProviderProps:
9825
9839
  '''Properties for defining a ``CfnUserPoolIdentityProvider``.
9826
9840
 
9827
9841
  :param provider_details: The scopes, URLs, and identifiers for your external identity provider. The following examples describe the provider detail keys for each IdP type. These values and their schema are subject to change. Social IdP ``authorize_scopes`` values must match the values listed here. - **OpenID Connect (OIDC)** - Amazon Cognito accepts the following elements when it can't discover endpoint URLs from ``oidc_issuer`` : ``attributes_url`` , ``authorize_url`` , ``jwks_uri`` , ``token_url`` . Create or update request: ``"ProviderDetails": { "attributes_request_method": "GET", "attributes_url": "https://auth.example.com/userInfo", "authorize_scopes": "openid profile email", "authorize_url": "https://auth.example.com/authorize", "client_id": "1example23456789", "client_secret": "provider-app-client-secret", "jwks_uri": "https://auth.example.com/.well-known/jwks.json", "oidc_issuer": "https://auth.example.com", "token_url": "https://example.com/token" }`` Describe response: ``"ProviderDetails": { "attributes_request_method": "GET", "attributes_url": "https://auth.example.com/userInfo", "attributes_url_add_attributes": "false", "authorize_scopes": "openid profile email", "authorize_url": "https://auth.example.com/authorize", "client_id": "1example23456789", "client_secret": "provider-app-client-secret", "jwks_uri": "https://auth.example.com/.well-known/jwks.json", "oidc_issuer": "https://auth.example.com", "token_url": "https://example.com/token" }`` - **SAML** - Create or update request with Metadata URL: ``"ProviderDetails": { "IDPInit": "true", "IDPSignout": "true", "EncryptedResponses" : "true", "MetadataURL": "https://auth.example.com/sso/saml/metadata", "RequestSigningAlgorithm": "rsa-sha256" }`` Create or update request with Metadata file: ``"ProviderDetails": { "IDPInit": "true", "IDPSignout": "true", "EncryptedResponses" : "true", "MetadataFile": "[metadata XML]", "RequestSigningAlgorithm": "rsa-sha256" }`` The value of ``MetadataFile`` must be the plaintext metadata document with all quote (") characters escaped by backslashes. Describe response: ``"ProviderDetails": { "IDPInit": "true", "IDPSignout": "true", "EncryptedResponses" : "true", "ActiveEncryptionCertificate": "[certificate]", "MetadataURL": "https://auth.example.com/sso/saml/metadata", "RequestSigningAlgorithm": "rsa-sha256", "SLORedirectBindingURI": "https://auth.example.com/slo/saml", "SSORedirectBindingURI": "https://auth.example.com/sso/saml" }`` - **LoginWithAmazon** - Create or update request: ``"ProviderDetails": { "authorize_scopes": "profile postal_code", "client_id": "amzn1.application-oa2-client.1example23456789", "client_secret": "provider-app-client-secret"`` Describe response: ``"ProviderDetails": { "attributes_url": "https://api.amazon.com/user/profile", "attributes_url_add_attributes": "false", "authorize_scopes": "profile postal_code", "authorize_url": "https://www.amazon.com/ap/oa", "client_id": "amzn1.application-oa2-client.1example23456789", "client_secret": "provider-app-client-secret", "token_request_method": "POST", "token_url": "https://api.amazon.com/auth/o2/token" }`` - **Google** - Create or update request: ``"ProviderDetails": { "authorize_scopes": "email profile openid", "client_id": "1example23456789.apps.googleusercontent.com", "client_secret": "provider-app-client-secret" }`` Describe response: ``"ProviderDetails": { "attributes_url": "https://people.googleapis.com/v1/people/me?personFields=", "attributes_url_add_attributes": "true", "authorize_scopes": "email profile openid", "authorize_url": "https://accounts.google.com/o/oauth2/v2/auth", "client_id": "1example23456789.apps.googleusercontent.com", "client_secret": "provider-app-client-secret", "oidc_issuer": "https://accounts.google.com", "token_request_method": "POST", "token_url": "https://www.googleapis.com/oauth2/v4/token" }`` - **SignInWithApple** - Create or update request: ``"ProviderDetails": { "authorize_scopes": "email name", "client_id": "com.example.cognito", "private_key": "1EXAMPLE", "key_id": "2EXAMPLE", "team_id": "3EXAMPLE" }`` Describe response: ``"ProviderDetails": { "attributes_url_add_attributes": "false", "authorize_scopes": "email name", "authorize_url": "https://appleid.apple.com/auth/authorize", "client_id": "com.example.cognito", "key_id": "1EXAMPLE", "oidc_issuer": "https://appleid.apple.com", "team_id": "2EXAMPLE", "token_request_method": "POST", "token_url": "https://appleid.apple.com/auth/token" }`` - **Facebook** - Create or update request: ``"ProviderDetails": { "api_version": "v17.0", "authorize_scopes": "public_profile, email", "client_id": "1example23456789", "client_secret": "provider-app-client-secret" }`` Describe response: ``"ProviderDetails": { "api_version": "v17.0", "attributes_url": "https://graph.facebook.com/v17.0/me?fields=", "attributes_url_add_attributes": "true", "authorize_scopes": "public_profile, email", "authorize_url": "https://www.facebook.com/v17.0/dialog/oauth", "client_id": "1example23456789", "client_secret": "provider-app-client-secret", "token_request_method": "GET", "token_url": "https://graph.facebook.com/v17.0/oauth/access_token" }``
9828
- :param provider_name: The IdP name.
9829
- :param provider_type: The IdP type.
9830
- :param user_pool_id: The user pool ID.
9831
- :param attribute_mapping: A mapping of IdP attributes to standard and custom user pool attributes.
9832
- :param idp_identifiers: A list of IdP identifiers.
9842
+ :param provider_name: The name that you want to assign to the IdP. You can pass the identity provider name in the ``identity_provider`` query parameter of requests to the `Authorize endpoint <https://docs.aws.amazon.com/cognito/latest/developerguide/authorization-endpoint.html>`_ to silently redirect to sign-in with the associated IdP.
9843
+ :param provider_type: The type of IdP that you want to add. Amazon Cognito supports OIDC, SAML 2.0, Login With Amazon, Sign In With Apple, Google, and Facebook IdPs.
9844
+ :param user_pool_id: The Id of the user pool where you want to create an IdP.
9845
+ :param attribute_mapping: A mapping of IdP attributes to standard and custom user pool attributes. Specify a user pool attribute as the key of the key-value pair, and the IdP attribute claim name as the value.
9846
+ :param idp_identifiers: An array of IdP identifiers, for example ``"IdPIdentifiers": [ "MyIdP", "MyIdP2" ]`` . Identifiers are friendly names that you can pass in the ``idp_identifier`` query parameter of requests to the `Authorize endpoint <https://docs.aws.amazon.com/cognito/latest/developerguide/authorization-endpoint.html>`_ to silently redirect to sign-in with the associated IdP. Identifiers in a domain format also enable the use of `email-address matching with SAML providers <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-managing-saml-idp-naming.html>`_ .
9833
9847
 
9834
9848
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html
9835
9849
  :exampleMetadata: fixture=_generated
@@ -9920,7 +9934,9 @@ class CfnUserPoolIdentityProviderProps:
9920
9934
 
9921
9935
  @builtins.property
9922
9936
  def provider_name(self) -> builtins.str:
9923
- '''The IdP name.
9937
+ '''The name that you want to assign to the IdP.
9938
+
9939
+ You can pass the identity provider name in the ``identity_provider`` query parameter of requests to the `Authorize endpoint <https://docs.aws.amazon.com/cognito/latest/developerguide/authorization-endpoint.html>`_ to silently redirect to sign-in with the associated IdP.
9924
9940
 
9925
9941
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-providername
9926
9942
  '''
@@ -9930,7 +9946,9 @@ class CfnUserPoolIdentityProviderProps:
9930
9946
 
9931
9947
  @builtins.property
9932
9948
  def provider_type(self) -> builtins.str:
9933
- '''The IdP type.
9949
+ '''The type of IdP that you want to add.
9950
+
9951
+ Amazon Cognito supports OIDC, SAML 2.0, Login With Amazon, Sign In With Apple, Google, and Facebook IdPs.
9934
9952
 
9935
9953
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-providertype
9936
9954
  '''
@@ -9940,7 +9958,7 @@ class CfnUserPoolIdentityProviderProps:
9940
9958
 
9941
9959
  @builtins.property
9942
9960
  def user_pool_id(self) -> builtins.str:
9943
- '''The user pool ID.
9961
+ '''The Id of the user pool where you want to create an IdP.
9944
9962
 
9945
9963
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-userpoolid
9946
9964
  '''
@@ -9952,6 +9970,8 @@ class CfnUserPoolIdentityProviderProps:
9952
9970
  def attribute_mapping(self) -> typing.Any:
9953
9971
  '''A mapping of IdP attributes to standard and custom user pool attributes.
9954
9972
 
9973
+ Specify a user pool attribute as the key of the key-value pair, and the IdP attribute claim name as the value.
9974
+
9955
9975
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-attributemapping
9956
9976
  '''
9957
9977
  result = self._values.get("attribute_mapping")
@@ -9959,7 +9979,9 @@ class CfnUserPoolIdentityProviderProps:
9959
9979
 
9960
9980
  @builtins.property
9961
9981
  def idp_identifiers(self) -> typing.Optional[typing.List[builtins.str]]:
9962
- '''A list of IdP identifiers.
9982
+ '''An array of IdP identifiers, for example ``"IdPIdentifiers": [ "MyIdP", "MyIdP2" ]`` .
9983
+
9984
+ Identifiers are friendly names that you can pass in the ``idp_identifier`` query parameter of requests to the `Authorize endpoint <https://docs.aws.amazon.com/cognito/latest/developerguide/authorization-endpoint.html>`_ to silently redirect to sign-in with the associated IdP. Identifiers in a domain format also enable the use of `email-address matching with SAML providers <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-managing-saml-idp-naming.html>`_ .
9963
9985
 
9964
9986
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html#cfn-cognito-userpoolidentityprovider-idpidentifiers
9965
9987
  '''
@@ -10051,10 +10073,10 @@ class CfnUserPoolProps:
10051
10073
 
10052
10074
  :param account_recovery_setting: The available verified method a user can use to recover their password when they call ``ForgotPassword`` . You can use this setting to define a preferred method when a user has more than one method available. With this setting, SMS doesn't qualify for a valid password recovery mechanism if the user also has SMS multi-factor authentication (MFA) activated. In the absence of this setting, Amazon Cognito uses the legacy behavior to determine the recovery method where SMS is preferred through email.
10053
10075
  :param admin_create_user_config: The settings for administrator creation of users in a user pool. Contains settings for allowing user sign-up, customizing invitation messages to new users, and the amount of time before temporary passwords expire. This data type is a request and response parameter of `CreateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateUserPool.html>`_ and `UpdateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateUserPool.html>`_ , and a response parameter of `DescribeUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DescribeUserPool.html>`_ .
10054
- :param alias_attributes: Attributes supported as an alias for this user pool. Possible values: *phone_number* , *email* , or *preferred_username* .
10055
- :param auto_verified_attributes: The attributes to be auto-verified. Possible values: *email* , *phone_number* .
10076
+ :param alias_attributes: Attributes supported as an alias for this user pool. Possible values: *phone_number* , *email* , or *preferred_username* . For more information about alias attributes, see `Customizing sign-in attributes <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#user-pool-settings-aliases>`_ .
10077
+ :param auto_verified_attributes: The attributes that you want your user pool to automatically verify. Possible values: *email* , *phone_number* . For more information see `Verifying contact information at sign-up <https://docs.aws.amazon.com/cognito/latest/developerguide/signing-up-users-in-your-app.html#allowing-users-to-sign-up-and-confirm-themselves>`_ .
10056
10078
  :param deletion_protection: When active, ``DeletionProtection`` prevents accidental deletion of your user pool. Before you can delete a user pool that you have protected against deletion, you must deactivate this feature. When you try to delete a protected user pool in a ``DeleteUserPool`` API request, Amazon Cognito returns an ``InvalidParameterException`` error. To delete a protected user pool, send a new ``DeleteUserPool`` request after you deactivate deletion protection in an ``UpdateUserPool`` API request.
10057
- :param device_configuration: The device-remembering configuration for a user pool. A null value indicates that you have deactivated device remembering in your user pool. .. epigraph:: When you provide a value for any ``DeviceConfiguration`` field, you activate the Amazon Cognito device-remembering feature.
10079
+ :param device_configuration: The device-remembering configuration for a user pool. Device remembering or device tracking is a "Remember me on this device" option for user pools that perform authentication with the device key of a trusted device in the back end, instead of a user-provided MFA code. For more information about device authentication, see `Working with user devices in your user pool <https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-device-tracking.html>`_ . A null value indicates that you have deactivated device remembering in your user pool. .. epigraph:: When you provide a value for any ``DeviceConfiguration`` field, you activate the Amazon Cognito device-remembering feature. For more infor
10058
10080
  :param email_authentication_message:
10059
10081
  :param email_authentication_subject:
10060
10082
  :param email_configuration: The email configuration of your user pool. The email configuration type sets your preferred sending method, AWS Region, and sender for messages from your user pool.
@@ -10064,20 +10086,20 @@ class CfnUserPoolProps:
10064
10086
  :param lambda_config: A collection of user pool Lambda triggers. Amazon Cognito invokes triggers at several possible stages of authentication operations. Triggers can modify the outcome of the operations that invoked them.
10065
10087
  :param mfa_configuration: The multi-factor authentication (MFA) configuration. Valid values include:. - ``OFF`` MFA won't be used for any users. - ``ON`` MFA is required for all users to sign in. - ``OPTIONAL`` MFA will be required only for individual users who have an MFA factor activated.
10066
10088
  :param policies: A list of user pool policies. Contains the policy that sets password-complexity requirements. This data type is a request and response parameter of `CreateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateUserPool.html>`_ and `UpdateUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateUserPool.html>`_ , and a response parameter of `DescribeUserPool <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_DescribeUserPool.html>`_ .
10067
- :param schema: An array of schema attributes for the new user pool. These attributes can be standard or custom attributes.
10089
+ :param schema: An array of attributes for the new user pool. You can add custom attributes and modify the properties of default attributes. The specifications in this parameter set the required attributes in your user pool. For more information, see `Working with user attributes <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html>`_ .
10068
10090
  :param sms_authentication_message: The contents of the SMS authentication message.
10069
- :param sms_configuration: The SMS configuration with the settings that your Amazon Cognito user pool must use to send an SMS message from your AWS account through Amazon Simple Notification Service. To send SMS messages with Amazon SNS in the AWS Region that you want, the Amazon Cognito user pool uses an AWS Identity and Access Management (IAM) role in your AWS account .
10091
+ :param sms_configuration: The SMS configuration with the settings that your Amazon Cognito user pool must use to send an SMS message from your AWS account through Amazon Simple Notification Service. To send SMS messages with Amazon SNS in the AWS Region that you want, the Amazon Cognito user pool uses an AWS Identity and Access Management (IAM) role in your AWS account . For more information see `SMS message settings <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-sms-settings.html>`_ .
10070
10092
  :param sms_verification_message: This parameter is no longer used. See `VerificationMessageTemplateType <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-verificationmessagetemplate.html>`_ .
10071
10093
  :param user_attribute_update_settings: The settings for updates to user attributes. These settings include the property ``AttributesRequireVerificationBeforeUpdate`` , a user-pool setting that tells Amazon Cognito how to handle changes to the value of your users' email address and phone number attributes. For more information, see `Verifying updates to email addresses and phone numbers <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-email-phone-verification.html#user-pool-settings-verifications-verify-attribute-updates>`_ .
10072
10094
  :param username_attributes: Specifies whether a user can use an email address or phone number as a username when they sign up.
10073
- :param username_configuration: Case sensitivity on the username input for the selected sign-in option. When case sensitivity is set to ``False`` (case insensitive), users can sign in with any combination of capital and lowercase letters. For example, ``username`` , ``USERNAME`` , or ``UserName`` , or for email, ``email@example.com`` or ``EMaiL@eXamplE.Com`` . For most use cases, set case sensitivity to ``False`` (case insensitive) as a best practice. When usernames and email addresses are case insensitive, Amazon Cognito treats any variation in case as the same user, and prevents a case variation from being assigned to the same attribute for a different user. This configuration is immutable after you set it. For more information, see `UsernameConfigurationType <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UsernameConfigurationType.html>`_ .
10074
- :param user_pool_add_ons: User pool add-ons. Contains settings for activation of advanced security features. To log user security information but take no action, set to ``AUDIT`` . To configure automatic security responses to risky traffic to your user pool, set to ``ENFORCED`` . For more information, see `Adding advanced security to a user pool <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-advanced-security.html>`_ .
10075
- :param user_pool_name: A string used to name the user pool.
10095
+ :param username_configuration: Sets the case sensitivity option for sign-in usernames. When ``CaseSensitive`` is ``false`` (case insensitive), users can sign in with any combination of capital and lowercase letters. For example, ``username`` , ``USERNAME`` , or ``UserName`` , or for email, ``email@example.com`` or ``EMaiL@eXamplE.Com`` . For most use cases, set case sensitivity to ``false`` as a best practice. When usernames and email addresses are case insensitive, Amazon Cognito treats any variation in case as the same user, and prevents a case variation from being assigned to the same attribute for a different user. When ``CaseSensitive`` is ``true`` (case sensitive), Amazon Cognito interprets ``USERNAME`` and ``UserName`` as distinct users. This configuration is immutable after you set it.
10096
+ :param user_pool_add_ons: User pool add-ons. Contains settings for activation of threat protection. To log user security information but take no action, set to ``AUDIT`` . To configure automatic security responses to risky traffic to your user pool, set to ``ENFORCED`` . For more information, see `Adding advanced security to a user pool <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-advanced-security.html>`_ . To activate this setting, your user pool must be on the `Plus tier <https://docs.aws.amazon.com/cognito/latest/developerguide/feature-plans-features-plus.html>`_ .
10097
+ :param user_pool_name: A friendlhy name for your user pool.
10076
10098
  :param user_pool_tags: The tag keys and values to assign to the user pool. A tag is a label that you can use to categorize and manage user pools in different ways, such as by purpose, owner, environment, or other criteria.
10077
10099
  :param user_pool_tier: The user pool `feature plan <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html>`_ , or tier. This parameter determines the eligibility of the user pool for features like managed login, access-token customization, and threat protection. Defaults to ``ESSENTIALS`` .
10078
10100
  :param verification_message_template: The template for the verification message that your user pool delivers to users who set an email address or phone number attribute. Set the email message type that corresponds to your ``DefaultEmailOption`` selection. For ``CONFIRM_WITH_LINK`` , specify an ``EmailMessageByLink`` and leave ``EmailMessage`` blank. For ``CONFIRM_WITH_CODE`` , specify an ``EmailMessage`` and leave ``EmailMessageByLink`` blank. When you supply both parameters with either choice, Amazon Cognito returns an error.
10079
- :param web_authn_relying_party_id:
10080
- :param web_authn_user_verification:
10101
+ :param web_authn_relying_party_id: Sets or displays the authentication domain, typically your user pool domain, that passkey providers must use as a relying party (RP) in their configuration. Under the following conditions, the passkey relying party ID must be the fully-qualified domain name of your custom domain: - The user pool is configured for passkey authentication. - The user pool has a custom domain, whether or not it also has a prefix domain. - Your application performs authentication with managed login or the classic hosted UI.
10102
+ :param web_authn_user_verification: When ``required`` , users can only register and sign in users with passkeys that are capable of `user verification <https://docs.aws.amazon.com/https://www.w3.org/TR/webauthn-2/#enum-userVerificationRequirement>`_ . When ``preferred`` , your user pool doesn't require the use of authenticators with user verification but encourages it.
10081
10103
 
10082
10104
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html
10083
10105
  :exampleMetadata: fixture=_generated
@@ -10338,7 +10360,7 @@ class CfnUserPoolProps:
10338
10360
  def alias_attributes(self) -> typing.Optional[typing.List[builtins.str]]:
10339
10361
  '''Attributes supported as an alias for this user pool.
10340
10362
 
10341
- Possible values: *phone_number* , *email* , or *preferred_username* .
10363
+ Possible values: *phone_number* , *email* , or *preferred_username* . For more information about alias attributes, see `Customizing sign-in attributes <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#user-pool-settings-aliases>`_ .
10342
10364
 
10343
10365
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-aliasattributes
10344
10366
  '''
@@ -10347,9 +10369,9 @@ class CfnUserPoolProps:
10347
10369
 
10348
10370
  @builtins.property
10349
10371
  def auto_verified_attributes(self) -> typing.Optional[typing.List[builtins.str]]:
10350
- '''The attributes to be auto-verified.
10372
+ '''The attributes that you want your user pool to automatically verify.
10351
10373
 
10352
- Possible values: *email* , *phone_number* .
10374
+ Possible values: *email* , *phone_number* . For more information see `Verifying contact information at sign-up <https://docs.aws.amazon.com/cognito/latest/developerguide/signing-up-users-in-your-app.html#allowing-users-to-sign-up-and-confirm-themselves>`_ .
10353
10375
 
10354
10376
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-autoverifiedattributes
10355
10377
  '''
@@ -10376,10 +10398,10 @@ class CfnUserPoolProps:
10376
10398
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnUserPool.DeviceConfigurationProperty]]:
10377
10399
  '''The device-remembering configuration for a user pool.
10378
10400
 
10379
- A null value indicates that you have deactivated device remembering in your user pool.
10401
+ Device remembering or device tracking is a "Remember me on this device" option for user pools that perform authentication with the device key of a trusted device in the back end, instead of a user-provided MFA code. For more information about device authentication, see `Working with user devices in your user pool <https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-device-tracking.html>`_ . A null value indicates that you have deactivated device remembering in your user pool.
10380
10402
  .. epigraph::
10381
10403
 
10382
- When you provide a value for any ``DeviceConfiguration`` field, you activate the Amazon Cognito device-remembering feature.
10404
+ When you provide a value for any ``DeviceConfiguration`` field, you activate the Amazon Cognito device-remembering feature. For more infor
10383
10405
 
10384
10406
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-deviceconfiguration
10385
10407
  '''
@@ -10497,9 +10519,9 @@ class CfnUserPoolProps:
10497
10519
  def schema(
10498
10520
  self,
10499
10521
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnUserPool.SchemaAttributeProperty]]]]:
10500
- '''An array of schema attributes for the new user pool.
10522
+ '''An array of attributes for the new user pool.
10501
10523
 
10502
- These attributes can be standard or custom attributes.
10524
+ You can add custom attributes and modify the properties of default attributes. The specifications in this parameter set the required attributes in your user pool. For more information, see `Working with user attributes <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html>`_ .
10503
10525
 
10504
10526
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-schema
10505
10527
  '''
@@ -10521,7 +10543,7 @@ class CfnUserPoolProps:
10521
10543
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnUserPool.SmsConfigurationProperty]]:
10522
10544
  '''The SMS configuration with the settings that your Amazon Cognito user pool must use to send an SMS message from your AWS account through Amazon Simple Notification Service.
10523
10545
 
10524
- To send SMS messages with Amazon SNS in the AWS Region that you want, the Amazon Cognito user pool uses an AWS Identity and Access Management (IAM) role in your AWS account .
10546
+ To send SMS messages with Amazon SNS in the AWS Region that you want, the Amazon Cognito user pool uses an AWS Identity and Access Management (IAM) role in your AWS account . For more information see `SMS message settings <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-sms-settings.html>`_ .
10525
10547
 
10526
10548
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-smsconfiguration
10527
10549
  '''
@@ -10567,11 +10589,13 @@ class CfnUserPoolProps:
10567
10589
  def username_configuration(
10568
10590
  self,
10569
10591
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnUserPool.UsernameConfigurationProperty]]:
10570
- '''Case sensitivity on the username input for the selected sign-in option.
10592
+ '''Sets the case sensitivity option for sign-in usernames.
10571
10593
 
10572
- When case sensitivity is set to ``False`` (case insensitive), users can sign in with any combination of capital and lowercase letters. For example, ``username`` , ``USERNAME`` , or ``UserName`` , or for email, ``email@example.com`` or ``EMaiL@eXamplE.Com`` . For most use cases, set case sensitivity to ``False`` (case insensitive) as a best practice. When usernames and email addresses are case insensitive, Amazon Cognito treats any variation in case as the same user, and prevents a case variation from being assigned to the same attribute for a different user.
10594
+ When ``CaseSensitive`` is ``false`` (case insensitive), users can sign in with any combination of capital and lowercase letters. For example, ``username`` , ``USERNAME`` , or ``UserName`` , or for email, ``email@example.com`` or ``EMaiL@eXamplE.Com`` . For most use cases, set case sensitivity to ``false`` as a best practice. When usernames and email addresses are case insensitive, Amazon Cognito treats any variation in case as the same user, and prevents a case variation from being assigned to the same attribute for a different user.
10573
10595
 
10574
- This configuration is immutable after you set it. For more information, see `UsernameConfigurationType <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UsernameConfigurationType.html>`_ .
10596
+ When ``CaseSensitive`` is ``true`` (case sensitive), Amazon Cognito interprets ``USERNAME`` and ``UserName`` as distinct users.
10597
+
10598
+ This configuration is immutable after you set it.
10575
10599
 
10576
10600
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-usernameconfiguration
10577
10601
  '''
@@ -10584,9 +10608,9 @@ class CfnUserPoolProps:
10584
10608
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnUserPool.UserPoolAddOnsProperty]]:
10585
10609
  '''User pool add-ons.
10586
10610
 
10587
- Contains settings for activation of advanced security features. To log user security information but take no action, set to ``AUDIT`` . To configure automatic security responses to risky traffic to your user pool, set to ``ENFORCED`` .
10611
+ Contains settings for activation of threat protection. To log user security information but take no action, set to ``AUDIT`` . To configure automatic security responses to risky traffic to your user pool, set to ``ENFORCED`` .
10588
10612
 
10589
- For more information, see `Adding advanced security to a user pool <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-advanced-security.html>`_ .
10613
+ For more information, see `Adding advanced security to a user pool <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-advanced-security.html>`_ . To activate this setting, your user pool must be on the `Plus tier <https://docs.aws.amazon.com/cognito/latest/developerguide/feature-plans-features-plus.html>`_ .
10590
10614
 
10591
10615
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-userpooladdons
10592
10616
  '''
@@ -10595,7 +10619,7 @@ class CfnUserPoolProps:
10595
10619
 
10596
10620
  @builtins.property
10597
10621
  def user_pool_name(self) -> typing.Optional[builtins.str]:
10598
- '''A string used to name the user pool.
10622
+ '''A friendlhy name for your user pool.
10599
10623
 
10600
10624
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-userpoolname
10601
10625
  '''
@@ -10637,7 +10661,14 @@ class CfnUserPoolProps:
10637
10661
 
10638
10662
  @builtins.property
10639
10663
  def web_authn_relying_party_id(self) -> typing.Optional[builtins.str]:
10640
- '''
10664
+ '''Sets or displays the authentication domain, typically your user pool domain, that passkey providers must use as a relying party (RP) in their configuration.
10665
+
10666
+ Under the following conditions, the passkey relying party ID must be the fully-qualified domain name of your custom domain:
10667
+
10668
+ - The user pool is configured for passkey authentication.
10669
+ - The user pool has a custom domain, whether or not it also has a prefix domain.
10670
+ - Your application performs authentication with managed login or the classic hosted UI.
10671
+
10641
10672
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-webauthnrelyingpartyid
10642
10673
  '''
10643
10674
  result = self._values.get("web_authn_relying_party_id")
@@ -10645,7 +10676,8 @@ class CfnUserPoolProps:
10645
10676
 
10646
10677
  @builtins.property
10647
10678
  def web_authn_user_verification(self) -> typing.Optional[builtins.str]:
10648
- '''
10679
+ '''When ``required`` , users can only register and sign in users with passkeys that are capable of `user verification <https://docs.aws.amazon.com/https://www.w3.org/TR/webauthn-2/#enum-userVerificationRequirement>`_ . When ``preferred`` , your user pool doesn't require the use of authenticators with user verification but encourages it.
10680
+
10649
10681
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-webauthnuserverification
10650
10682
  '''
10651
10683
  result = self._values.get("web_authn_user_verification")
@@ -10713,7 +10745,7 @@ class CfnUserPoolResourceServer(
10713
10745
  :param id: Construct identifier for this resource (unique in its scope).
10714
10746
  :param identifier: A unique resource server identifier for the resource server. The identifier can be an API friendly name like ``solar-system-data`` . You can also set an API URL like ``https://solar-system-data-api.example.com`` as your identifier. Amazon Cognito represents scopes in the access token in the format ``$resource-server-identifier/$scope`` . Longer scope-identifier strings increase the size of your access tokens.
10715
10747
  :param name: A friendly name for the resource server.
10716
- :param user_pool_id: The user pool ID for the user pool.
10748
+ :param user_pool_id: The ID of the user pool where you want to create a resource server.
10717
10749
  :param scopes: A list of scopes. Each scope is a map with keys ``ScopeName`` and ``ScopeDescription`` .
10718
10750
  '''
10719
10751
  if __debug__:
@@ -10790,7 +10822,7 @@ class CfnUserPoolResourceServer(
10790
10822
  @builtins.property
10791
10823
  @jsii.member(jsii_name="userPoolId")
10792
10824
  def user_pool_id(self) -> builtins.str:
10793
- '''The user pool ID for the user pool.'''
10825
+ '''The ID of the user pool where you want to create a resource server.'''
10794
10826
  return typing.cast(builtins.str, jsii.get(self, "userPoolId"))
10795
10827
 
10796
10828
  @user_pool_id.setter
@@ -10922,7 +10954,7 @@ class CfnUserPoolResourceServerProps:
10922
10954
 
10923
10955
  :param identifier: A unique resource server identifier for the resource server. The identifier can be an API friendly name like ``solar-system-data`` . You can also set an API URL like ``https://solar-system-data-api.example.com`` as your identifier. Amazon Cognito represents scopes in the access token in the format ``$resource-server-identifier/$scope`` . Longer scope-identifier strings increase the size of your access tokens.
10924
10956
  :param name: A friendly name for the resource server.
10925
- :param user_pool_id: The user pool ID for the user pool.
10957
+ :param user_pool_id: The ID of the user pool where you want to create a resource server.
10926
10958
  :param scopes: A list of scopes. Each scope is a map with keys ``ScopeName`` and ``ScopeDescription`` .
10927
10959
 
10928
10960
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html
@@ -10986,7 +11018,7 @@ class CfnUserPoolResourceServerProps:
10986
11018
 
10987
11019
  @builtins.property
10988
11020
  def user_pool_id(self) -> builtins.str:
10989
- '''The user pool ID for the user pool.
11021
+ '''The ID of the user pool where you want to create a resource server.
10990
11022
 
10991
11023
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html#cfn-cognito-userpoolresourceserver-userpoolid
10992
11024
  '''
@@ -12279,7 +12311,7 @@ class CfnUserPoolUICustomizationAttachment(
12279
12311
  :param scope: Scope in which this resource is defined.
12280
12312
  :param id: Construct identifier for this resource (unique in its scope).
12281
12313
  :param client_id: The app client ID for your UI customization. When this value isn't present, the customization applies to all user pool app clients that don't have client-level settings..
12282
- :param user_pool_id: The user pool ID for the user pool.
12314
+ :param user_pool_id: The ID of the user pool.
12283
12315
  :param css: The CSS values in the UI customization.
12284
12316
  '''
12285
12317
  if __debug__:
@@ -12343,7 +12375,7 @@ class CfnUserPoolUICustomizationAttachment(
12343
12375
  @builtins.property
12344
12376
  @jsii.member(jsii_name="userPoolId")
12345
12377
  def user_pool_id(self) -> builtins.str:
12346
- '''The user pool ID for the user pool.'''
12378
+ '''The ID of the user pool.'''
12347
12379
  return typing.cast(builtins.str, jsii.get(self, "userPoolId"))
12348
12380
 
12349
12381
  @user_pool_id.setter
@@ -12383,7 +12415,7 @@ class CfnUserPoolUICustomizationAttachmentProps:
12383
12415
  '''Properties for defining a ``CfnUserPoolUICustomizationAttachment``.
12384
12416
 
12385
12417
  :param client_id: The app client ID for your UI customization. When this value isn't present, the customization applies to all user pool app clients that don't have client-level settings..
12386
- :param user_pool_id: The user pool ID for the user pool.
12418
+ :param user_pool_id: The ID of the user pool.
12387
12419
  :param css: The CSS values in the UI customization.
12388
12420
 
12389
12421
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html
@@ -12429,7 +12461,7 @@ class CfnUserPoolUICustomizationAttachmentProps:
12429
12461
 
12430
12462
  @builtins.property
12431
12463
  def user_pool_id(self) -> builtins.str:
12432
- '''The user pool ID for the user pool.
12464
+ '''The ID of the user pool.
12433
12465
 
12434
12466
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html#cfn-cognito-userpooluicustomizationattachment-userpoolid
12435
12467
  '''
@@ -12515,11 +12547,11 @@ class CfnUserPoolUser(
12515
12547
  '''
12516
12548
  :param scope: Scope in which this resource is defined.
12517
12549
  :param id: Construct identifier for this resource (unique in its scope).
12518
- :param user_pool_id: The user pool ID for the user pool where the user will be created.
12519
- :param client_metadata: A map of custom key-value pairs that you can provide as input for any custom workflows that this action triggers. You create custom workflows by assigning AWS Lambda functions to user pool triggers. When you use the AdminCreateUser API action, Amazon Cognito invokes the function that is assigned to the *pre sign-up* trigger. When Amazon Cognito invokes this function, it passes a JSON payload, which the function receives as input. This payload contains a ``clientMetadata`` attribute, which provides the data that you assigned to the ClientMetadata parameter in your AdminCreateUser request. In your function code in AWS Lambda , you can process the ``clientMetadata`` value to enhance your workflow for your specific needs. For more information, see `Customizing user pool Workflows with Lambda Triggers <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools-working-with-aws-lambda-triggers.html>`_ in the *Amazon Cognito Developer Guide* . .. epigraph:: When you use the ClientMetadata parameter, remember that Amazon Cognito won't do the following: - Store the ClientMetadata value. This data is available only to AWS Lambda triggers that are assigned to a user pool to support custom workflows. If your user pool configuration doesn't include triggers, the ClientMetadata parameter serves no purpose. - Validate the ClientMetadata value. - Encrypt the ClientMetadata value. Don't use Amazon Cognito to provide sensitive information.
12520
- :param desired_delivery_mediums: Specify ``"EMAIL"`` if email will be used to send the welcome message. Specify ``"SMS"`` if the phone number will be used. The default value is ``"SMS"`` . You can specify more than one value.
12521
- :param force_alias_creation: This parameter is used only if the ``phone_number_verified`` or ``email_verified`` attribute is set to ``True`` . Otherwise, it is ignored. If this parameter is set to ``True`` and the phone number or email address specified in the UserAttributes parameter already exists as an alias with a different user, the API call will migrate the alias from the previous user to the newly created user. The previous user will no longer be able to log in using that alias. If this parameter is set to ``False`` , the API throws an ``AliasExistsException`` error if the alias already exists. The default value is ``False`` .
12522
- :param message_action: Set to ``RESEND`` to resend the invitation message to a user that already exists and reset the expiration limit on the user's account. Set to ``SUPPRESS`` to suppress sending the message. You can specify only one value.
12550
+ :param user_pool_id: The ID of the user pool where you want to create a user.
12551
+ :param client_metadata: A map of custom key-value pairs that you can provide as input for any custom workflows that this action triggers. You create custom workflows by assigning AWS Lambda functions to user pool triggers. When you use the AdminCreateUser API action, Amazon Cognito invokes the function that is assigned to the *pre sign-up* trigger. When Amazon Cognito invokes this function, it passes a JSON payload, which the function receives as input. This payload contains a ``ClientMetadata`` attribute, which provides the data that you assigned to the ClientMetadata parameter in your AdminCreateUser request. In your function code in AWS Lambda , you can process the ``clientMetadata`` value to enhance your workflow for your specific needs. For more information, see `Using Lambda triggers <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools-working-with-aws-lambda-triggers.html>`_ in the *Amazon Cognito Developer Guide* . .. epigraph:: When you use the ``ClientMetadata`` parameter, note that Amazon Cognito won't do the following: - Store the ``ClientMetadata`` value. This data is available only to AWS Lambda triggers that are assigned to a user pool to support custom workflows. If your user pool configuration doesn't include triggers, the ``ClientMetadata`` parameter serves no purpose. - Validate the ``ClientMetadata`` value. - Encrypt the ``ClientMetadata`` value. Don't send sensitive information in this parameter.
12552
+ :param desired_delivery_mediums: Specify ``EMAIL`` if email will be used to send the welcome message. Specify ``SMS`` if the phone number will be used. The default value is ``SMS`` . You can specify more than one value.
12553
+ :param force_alias_creation: This parameter is used only if the ``phone_number_verified`` or ``email_verified`` attribute is set to ``True`` . Otherwise, it is ignored. If this parameter is set to ``True`` and the phone number or email address specified in the ``UserAttributes`` parameter already exists as an alias with a different user, this request migrates the alias from the previous user to the newly-created user. The previous user will no longer be able to log in using that alias. If this parameter is set to ``False`` , the API throws an ``AliasExistsException`` error if the alias already exists. The default value is ``False`` .
12554
+ :param message_action: Set to ``RESEND`` to resend the invitation message to a user that already exists, and to reset the temporary-password duration with a new temporary password. Set to ``SUPPRESS`` to suppress sending the message. You can specify only one value.
12523
12555
  :param user_attributes: An array of name-value pairs that contain user attributes and attribute values to be set for the user to be created. You can create a user without specifying any attributes other than ``Username`` . However, any attributes that you specify as required (when creating a user pool or in the *Attributes* tab of the console) either you should supply (in your call to ``AdminCreateUser`` ) or the user should supply (when they sign up in response to your welcome message). For custom attributes, you must prepend the ``custom:`` prefix to the attribute name. To send a message inviting the user to sign up, you must specify the user's email address or phone number. You can do this in your call to AdminCreateUser or in the *Users* tab of the Amazon Cognito console for managing your user pools. You must also provide an email address or phone number when you expect the user to do passwordless sign-in with an email or SMS OTP. These attributes must be provided when passwordless options are the only available, or when you don't submit a ``TemporaryPassword`` . In your call to ``AdminCreateUser`` , you can set the ``email_verified`` attribute to ``True`` , and you can set the ``phone_number_verified`` attribute to ``True`` . You can also do this by calling `AdminUpdateUserAttributes <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminUpdateUserAttributes.html>`_ . - *email* : The email address of the user to whom the message that contains the code and username will be sent. Required if the ``email_verified`` attribute is set to ``True`` , or if ``"EMAIL"`` is specified in the ``DesiredDeliveryMediums`` parameter. - *phone_number* : The phone number of the user to whom the message that contains the code and username will be sent. Required if the ``phone_number_verified`` attribute is set to ``True`` , or if ``"SMS"`` is specified in the ``DesiredDeliveryMediums`` parameter.
12524
12556
  :param username: The value that you want to set as the username sign-in attribute. The following conditions apply to the username parameter. - The username can't be a duplicate of another username in the same user pool. - You can't change the value of a username after you create it. - You can only provide a value if usernames are a valid sign-in attribute for your user pool. If your user pool only supports phone numbers or email addresses as sign-in attributes, Amazon Cognito automatically generates a username value. For more information, see `Customizing sign-in attributes <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#user-pool-settings-aliases>`_ .
12525
12557
  :param validation_data: Temporary user attributes that contribute to the outcomes of your pre sign-up Lambda trigger. This set of key-value pairs are for custom validation of information that you collect from your users but don't need to retain. Your Lambda function can analyze this additional data and act on it. Your function might perform external API operations like logging user attributes and validation data to Amazon CloudWatch Logs. Validation data might also affect the response that your function returns to Amazon Cognito, like automatically confirming the user if they sign up from within your network. For more information about the pre sign-up Lambda trigger, see `Pre sign-up Lambda trigger <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-lambda-pre-sign-up.html>`_ .
@@ -12579,7 +12611,7 @@ class CfnUserPoolUser(
12579
12611
  @builtins.property
12580
12612
  @jsii.member(jsii_name="userPoolId")
12581
12613
  def user_pool_id(self) -> builtins.str:
12582
- '''The user pool ID for the user pool where the user will be created.'''
12614
+ '''The ID of the user pool where you want to create a user.'''
12583
12615
  return typing.cast(builtins.str, jsii.get(self, "userPoolId"))
12584
12616
 
12585
12617
  @user_pool_id.setter
@@ -12610,7 +12642,7 @@ class CfnUserPoolUser(
12610
12642
  @builtins.property
12611
12643
  @jsii.member(jsii_name="desiredDeliveryMediums")
12612
12644
  def desired_delivery_mediums(self) -> typing.Optional[typing.List[builtins.str]]:
12613
- '''Specify ``"EMAIL"`` if email will be used to send the welcome message.'''
12645
+ '''Specify ``EMAIL`` if email will be used to send the welcome message.'''
12614
12646
  return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "desiredDeliveryMediums"))
12615
12647
 
12616
12648
  @desired_delivery_mediums.setter
@@ -12644,7 +12676,7 @@ class CfnUserPoolUser(
12644
12676
  @builtins.property
12645
12677
  @jsii.member(jsii_name="messageAction")
12646
12678
  def message_action(self) -> typing.Optional[builtins.str]:
12647
- '''Set to ``RESEND`` to resend the invitation message to a user that already exists and reset the expiration limit on the user's account.'''
12679
+ '''Set to ``RESEND`` to resend the invitation message to a user that already exists, and to reset the temporary-password duration with a new temporary password.'''
12648
12680
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "messageAction"))
12649
12681
 
12650
12682
  @message_action.setter
@@ -12805,11 +12837,11 @@ class CfnUserPoolUserProps:
12805
12837
  ) -> None:
12806
12838
  '''Properties for defining a ``CfnUserPoolUser``.
12807
12839
 
12808
- :param user_pool_id: The user pool ID for the user pool where the user will be created.
12809
- :param client_metadata: A map of custom key-value pairs that you can provide as input for any custom workflows that this action triggers. You create custom workflows by assigning AWS Lambda functions to user pool triggers. When you use the AdminCreateUser API action, Amazon Cognito invokes the function that is assigned to the *pre sign-up* trigger. When Amazon Cognito invokes this function, it passes a JSON payload, which the function receives as input. This payload contains a ``clientMetadata`` attribute, which provides the data that you assigned to the ClientMetadata parameter in your AdminCreateUser request. In your function code in AWS Lambda , you can process the ``clientMetadata`` value to enhance your workflow for your specific needs. For more information, see `Customizing user pool Workflows with Lambda Triggers <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools-working-with-aws-lambda-triggers.html>`_ in the *Amazon Cognito Developer Guide* . .. epigraph:: When you use the ClientMetadata parameter, remember that Amazon Cognito won't do the following: - Store the ClientMetadata value. This data is available only to AWS Lambda triggers that are assigned to a user pool to support custom workflows. If your user pool configuration doesn't include triggers, the ClientMetadata parameter serves no purpose. - Validate the ClientMetadata value. - Encrypt the ClientMetadata value. Don't use Amazon Cognito to provide sensitive information.
12810
- :param desired_delivery_mediums: Specify ``"EMAIL"`` if email will be used to send the welcome message. Specify ``"SMS"`` if the phone number will be used. The default value is ``"SMS"`` . You can specify more than one value.
12811
- :param force_alias_creation: This parameter is used only if the ``phone_number_verified`` or ``email_verified`` attribute is set to ``True`` . Otherwise, it is ignored. If this parameter is set to ``True`` and the phone number or email address specified in the UserAttributes parameter already exists as an alias with a different user, the API call will migrate the alias from the previous user to the newly created user. The previous user will no longer be able to log in using that alias. If this parameter is set to ``False`` , the API throws an ``AliasExistsException`` error if the alias already exists. The default value is ``False`` .
12812
- :param message_action: Set to ``RESEND`` to resend the invitation message to a user that already exists and reset the expiration limit on the user's account. Set to ``SUPPRESS`` to suppress sending the message. You can specify only one value.
12840
+ :param user_pool_id: The ID of the user pool where you want to create a user.
12841
+ :param client_metadata: A map of custom key-value pairs that you can provide as input for any custom workflows that this action triggers. You create custom workflows by assigning AWS Lambda functions to user pool triggers. When you use the AdminCreateUser API action, Amazon Cognito invokes the function that is assigned to the *pre sign-up* trigger. When Amazon Cognito invokes this function, it passes a JSON payload, which the function receives as input. This payload contains a ``ClientMetadata`` attribute, which provides the data that you assigned to the ClientMetadata parameter in your AdminCreateUser request. In your function code in AWS Lambda , you can process the ``clientMetadata`` value to enhance your workflow for your specific needs. For more information, see `Using Lambda triggers <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools-working-with-aws-lambda-triggers.html>`_ in the *Amazon Cognito Developer Guide* . .. epigraph:: When you use the ``ClientMetadata`` parameter, note that Amazon Cognito won't do the following: - Store the ``ClientMetadata`` value. This data is available only to AWS Lambda triggers that are assigned to a user pool to support custom workflows. If your user pool configuration doesn't include triggers, the ``ClientMetadata`` parameter serves no purpose. - Validate the ``ClientMetadata`` value. - Encrypt the ``ClientMetadata`` value. Don't send sensitive information in this parameter.
12842
+ :param desired_delivery_mediums: Specify ``EMAIL`` if email will be used to send the welcome message. Specify ``SMS`` if the phone number will be used. The default value is ``SMS`` . You can specify more than one value.
12843
+ :param force_alias_creation: This parameter is used only if the ``phone_number_verified`` or ``email_verified`` attribute is set to ``True`` . Otherwise, it is ignored. If this parameter is set to ``True`` and the phone number or email address specified in the ``UserAttributes`` parameter already exists as an alias with a different user, this request migrates the alias from the previous user to the newly-created user. The previous user will no longer be able to log in using that alias. If this parameter is set to ``False`` , the API throws an ``AliasExistsException`` error if the alias already exists. The default value is ``False`` .
12844
+ :param message_action: Set to ``RESEND`` to resend the invitation message to a user that already exists, and to reset the temporary-password duration with a new temporary password. Set to ``SUPPRESS`` to suppress sending the message. You can specify only one value.
12813
12845
  :param user_attributes: An array of name-value pairs that contain user attributes and attribute values to be set for the user to be created. You can create a user without specifying any attributes other than ``Username`` . However, any attributes that you specify as required (when creating a user pool or in the *Attributes* tab of the console) either you should supply (in your call to ``AdminCreateUser`` ) or the user should supply (when they sign up in response to your welcome message). For custom attributes, you must prepend the ``custom:`` prefix to the attribute name. To send a message inviting the user to sign up, you must specify the user's email address or phone number. You can do this in your call to AdminCreateUser or in the *Users* tab of the Amazon Cognito console for managing your user pools. You must also provide an email address or phone number when you expect the user to do passwordless sign-in with an email or SMS OTP. These attributes must be provided when passwordless options are the only available, or when you don't submit a ``TemporaryPassword`` . In your call to ``AdminCreateUser`` , you can set the ``email_verified`` attribute to ``True`` , and you can set the ``phone_number_verified`` attribute to ``True`` . You can also do this by calling `AdminUpdateUserAttributes <https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminUpdateUserAttributes.html>`_ . - *email* : The email address of the user to whom the message that contains the code and username will be sent. Required if the ``email_verified`` attribute is set to ``True`` , or if ``"EMAIL"`` is specified in the ``DesiredDeliveryMediums`` parameter. - *phone_number* : The phone number of the user to whom the message that contains the code and username will be sent. Required if the ``phone_number_verified`` attribute is set to ``True`` , or if ``"SMS"`` is specified in the ``DesiredDeliveryMediums`` parameter.
12814
12846
  :param username: The value that you want to set as the username sign-in attribute. The following conditions apply to the username parameter. - The username can't be a duplicate of another username in the same user pool. - You can't change the value of a username after you create it. - You can only provide a value if usernames are a valid sign-in attribute for your user pool. If your user pool only supports phone numbers or email addresses as sign-in attributes, Amazon Cognito automatically generates a username value. For more information, see `Customizing sign-in attributes <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#user-pool-settings-aliases>`_ .
12815
12847
  :param validation_data: Temporary user attributes that contribute to the outcomes of your pre sign-up Lambda trigger. This set of key-value pairs are for custom validation of information that you collect from your users but don't need to retain. Your Lambda function can analyze this additional data and act on it. Your function might perform external API operations like logging user attributes and validation data to Amazon CloudWatch Logs. Validation data might also affect the response that your function returns to Amazon Cognito, like automatically confirming the user if they sign up from within your network. For more information about the pre sign-up Lambda trigger, see `Pre sign-up Lambda trigger <https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-lambda-pre-sign-up.html>`_ .
@@ -12874,7 +12906,7 @@ class CfnUserPoolUserProps:
12874
12906
 
12875
12907
  @builtins.property
12876
12908
  def user_pool_id(self) -> builtins.str:
12877
- '''The user pool ID for the user pool where the user will be created.
12909
+ '''The ID of the user pool where you want to create a user.
12878
12910
 
12879
12911
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-userpoolid
12880
12912
  '''
@@ -12888,16 +12920,16 @@ class CfnUserPoolUserProps:
12888
12920
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]]:
12889
12921
  '''A map of custom key-value pairs that you can provide as input for any custom workflows that this action triggers.
12890
12922
 
12891
- You create custom workflows by assigning AWS Lambda functions to user pool triggers. When you use the AdminCreateUser API action, Amazon Cognito invokes the function that is assigned to the *pre sign-up* trigger. When Amazon Cognito invokes this function, it passes a JSON payload, which the function receives as input. This payload contains a ``clientMetadata`` attribute, which provides the data that you assigned to the ClientMetadata parameter in your AdminCreateUser request. In your function code in AWS Lambda , you can process the ``clientMetadata`` value to enhance your workflow for your specific needs.
12923
+ You create custom workflows by assigning AWS Lambda functions to user pool triggers. When you use the AdminCreateUser API action, Amazon Cognito invokes the function that is assigned to the *pre sign-up* trigger. When Amazon Cognito invokes this function, it passes a JSON payload, which the function receives as input. This payload contains a ``ClientMetadata`` attribute, which provides the data that you assigned to the ClientMetadata parameter in your AdminCreateUser request. In your function code in AWS Lambda , you can process the ``clientMetadata`` value to enhance your workflow for your specific needs.
12892
12924
 
12893
- For more information, see `Customizing user pool Workflows with Lambda Triggers <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools-working-with-aws-lambda-triggers.html>`_ in the *Amazon Cognito Developer Guide* .
12925
+ For more information, see `Using Lambda triggers <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools-working-with-aws-lambda-triggers.html>`_ in the *Amazon Cognito Developer Guide* .
12894
12926
  .. epigraph::
12895
12927
 
12896
- When you use the ClientMetadata parameter, remember that Amazon Cognito won't do the following:
12928
+ When you use the ``ClientMetadata`` parameter, note that Amazon Cognito won't do the following:
12897
12929
 
12898
- - Store the ClientMetadata value. This data is available only to AWS Lambda triggers that are assigned to a user pool to support custom workflows. If your user pool configuration doesn't include triggers, the ClientMetadata parameter serves no purpose.
12899
- - Validate the ClientMetadata value.
12900
- - Encrypt the ClientMetadata value. Don't use Amazon Cognito to provide sensitive information.
12930
+ - Store the ``ClientMetadata`` value. This data is available only to AWS Lambda triggers that are assigned to a user pool to support custom workflows. If your user pool configuration doesn't include triggers, the ``ClientMetadata`` parameter serves no purpose.
12931
+ - Validate the ``ClientMetadata`` value.
12932
+ - Encrypt the ``ClientMetadata`` value. Don't send sensitive information in this parameter.
12901
12933
 
12902
12934
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-clientmetadata
12903
12935
  '''
@@ -12906,9 +12938,9 @@ class CfnUserPoolUserProps:
12906
12938
 
12907
12939
  @builtins.property
12908
12940
  def desired_delivery_mediums(self) -> typing.Optional[typing.List[builtins.str]]:
12909
- '''Specify ``"EMAIL"`` if email will be used to send the welcome message.
12941
+ '''Specify ``EMAIL`` if email will be used to send the welcome message.
12910
12942
 
12911
- Specify ``"SMS"`` if the phone number will be used. The default value is ``"SMS"`` . You can specify more than one value.
12943
+ Specify ``SMS`` if the phone number will be used. The default value is ``SMS`` . You can specify more than one value.
12912
12944
 
12913
12945
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-desireddeliverymediums
12914
12946
  '''
@@ -12923,7 +12955,7 @@ class CfnUserPoolUserProps:
12923
12955
 
12924
12956
  Otherwise, it is ignored.
12925
12957
 
12926
- If this parameter is set to ``True`` and the phone number or email address specified in the UserAttributes parameter already exists as an alias with a different user, the API call will migrate the alias from the previous user to the newly created user. The previous user will no longer be able to log in using that alias.
12958
+ If this parameter is set to ``True`` and the phone number or email address specified in the ``UserAttributes`` parameter already exists as an alias with a different user, this request migrates the alias from the previous user to the newly-created user. The previous user will no longer be able to log in using that alias.
12927
12959
 
12928
12960
  If this parameter is set to ``False`` , the API throws an ``AliasExistsException`` error if the alias already exists. The default value is ``False`` .
12929
12961
 
@@ -12934,7 +12966,7 @@ class CfnUserPoolUserProps:
12934
12966
 
12935
12967
  @builtins.property
12936
12968
  def message_action(self) -> typing.Optional[builtins.str]:
12937
- '''Set to ``RESEND`` to resend the invitation message to a user that already exists and reset the expiration limit on the user's account.
12969
+ '''Set to ``RESEND`` to resend the invitation message to a user that already exists, and to reset the temporary-password duration with a new temporary password.
12938
12970
 
12939
12971
  Set to ``SUPPRESS`` to suppress sending the message. You can specify only one value.
12940
12972
 
@@ -13059,7 +13091,7 @@ class CfnUserPoolUserToGroupAttachment(
13059
13091
  :param id: Construct identifier for this resource (unique in its scope).
13060
13092
  :param group_name: The name of the group that you want to add your user to.
13061
13093
  :param username: The user's username.
13062
- :param user_pool_id: The user pool ID for the user pool.
13094
+ :param user_pool_id: The ID of the user pool that contains the group that you want to add the user to.
13063
13095
  '''
13064
13096
  if __debug__:
13065
13097
  type_hints = typing.get_type_hints(_typecheckingstub__a7364d75afc292798863e1183adee778bee531b8ea162e2882fe2861f9b8e33c)
@@ -13135,7 +13167,7 @@ class CfnUserPoolUserToGroupAttachment(
13135
13167
  @builtins.property
13136
13168
  @jsii.member(jsii_name="userPoolId")
13137
13169
  def user_pool_id(self) -> builtins.str:
13138
- '''The user pool ID for the user pool.'''
13170
+ '''The ID of the user pool that contains the group that you want to add the user to.'''
13139
13171
  return typing.cast(builtins.str, jsii.get(self, "userPoolId"))
13140
13172
 
13141
13173
  @user_pool_id.setter
@@ -13167,7 +13199,7 @@ class CfnUserPoolUserToGroupAttachmentProps:
13167
13199
 
13168
13200
  :param group_name: The name of the group that you want to add your user to.
13169
13201
  :param username: The user's username.
13170
- :param user_pool_id: The user pool ID for the user pool.
13202
+ :param user_pool_id: The ID of the user pool that contains the group that you want to add the user to.
13171
13203
 
13172
13204
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html
13173
13205
  :exampleMetadata: fixture=_generated
@@ -13217,7 +13249,7 @@ class CfnUserPoolUserToGroupAttachmentProps:
13217
13249
 
13218
13250
  @builtins.property
13219
13251
  def user_pool_id(self) -> builtins.str:
13220
- '''The user pool ID for the user pool.
13252
+ '''The ID of the user pool that contains the group that you want to add the user to.
13221
13253
 
13222
13254
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html#cfn-cognito-userpoolusertogroupattachment-userpoolid
13223
13255
  '''