Class CfnUserPool

java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
All Implemented Interfaces:
IInspectable, ITaggable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct, software.constructs.IDependable

@Generated(value="jsii-pacmak/1.104.0 (build e79254c)", date="2024-11-06T23:25:06.311Z") @Stability(Stable) public class CfnUserPool extends CfnResource implements IInspectable, ITaggable
The AWS::Cognito::UserPool resource creates an Amazon Cognito user pool.

For more information on working with Amazon Cognito user pools, see Amazon Cognito User Pools and CreateUserPool .

If you don't specify a value for a parameter, Amazon Cognito sets it to a default value.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.cognito.*;
 Object userPoolTags;
 CfnUserPool cfnUserPool = CfnUserPool.Builder.create(this, "MyCfnUserPool")
         .accountRecoverySetting(AccountRecoverySettingProperty.builder()
                 .recoveryMechanisms(List.of(RecoveryOptionProperty.builder()
                         .name("name")
                         .priority(123)
                         .build()))
                 .build())
         .adminCreateUserConfig(AdminCreateUserConfigProperty.builder()
                 .allowAdminCreateUserOnly(false)
                 .inviteMessageTemplate(InviteMessageTemplateProperty.builder()
                         .emailMessage("emailMessage")
                         .emailSubject("emailSubject")
                         .smsMessage("smsMessage")
                         .build())
                 .unusedAccountValidityDays(123)
                 .build())
         .aliasAttributes(List.of("aliasAttributes"))
         .autoVerifiedAttributes(List.of("autoVerifiedAttributes"))
         .deletionProtection("deletionProtection")
         .deviceConfiguration(DeviceConfigurationProperty.builder()
                 .challengeRequiredOnNewDevice(false)
                 .deviceOnlyRememberedOnUserPrompt(false)
                 .build())
         .emailAuthenticationMessage("emailAuthenticationMessage")
         .emailAuthenticationSubject("emailAuthenticationSubject")
         .emailConfiguration(EmailConfigurationProperty.builder()
                 .configurationSet("configurationSet")
                 .emailSendingAccount("emailSendingAccount")
                 .from("from")
                 .replyToEmailAddress("replyToEmailAddress")
                 .sourceArn("sourceArn")
                 .build())
         .emailVerificationMessage("emailVerificationMessage")
         .emailVerificationSubject("emailVerificationSubject")
         .enabledMfas(List.of("enabledMfas"))
         .lambdaConfig(LambdaConfigProperty.builder()
                 .createAuthChallenge("createAuthChallenge")
                 .customEmailSender(CustomEmailSenderProperty.builder()
                         .lambdaArn("lambdaArn")
                         .lambdaVersion("lambdaVersion")
                         .build())
                 .customMessage("customMessage")
                 .customSmsSender(CustomSMSSenderProperty.builder()
                         .lambdaArn("lambdaArn")
                         .lambdaVersion("lambdaVersion")
                         .build())
                 .defineAuthChallenge("defineAuthChallenge")
                 .kmsKeyId("kmsKeyId")
                 .postAuthentication("postAuthentication")
                 .postConfirmation("postConfirmation")
                 .preAuthentication("preAuthentication")
                 .preSignUp("preSignUp")
                 .preTokenGeneration("preTokenGeneration")
                 .preTokenGenerationConfig(PreTokenGenerationConfigProperty.builder()
                         .lambdaArn("lambdaArn")
                         .lambdaVersion("lambdaVersion")
                         .build())
                 .userMigration("userMigration")
                 .verifyAuthChallengeResponse("verifyAuthChallengeResponse")
                 .build())
         .mfaConfiguration("mfaConfiguration")
         .policies(PoliciesProperty.builder()
                 .passwordPolicy(PasswordPolicyProperty.builder()
                         .minimumLength(123)
                         .passwordHistorySize(123)
                         .requireLowercase(false)
                         .requireNumbers(false)
                         .requireSymbols(false)
                         .requireUppercase(false)
                         .temporaryPasswordValidityDays(123)
                         .build())
                 .build())
         .schema(List.of(SchemaAttributeProperty.builder()
                 .attributeDataType("attributeDataType")
                 .developerOnlyAttribute(false)
                 .mutable(false)
                 .name("name")
                 .numberAttributeConstraints(NumberAttributeConstraintsProperty.builder()
                         .maxValue("maxValue")
                         .minValue("minValue")
                         .build())
                 .required(false)
                 .stringAttributeConstraints(StringAttributeConstraintsProperty.builder()
                         .maxLength("maxLength")
                         .minLength("minLength")
                         .build())
                 .build()))
         .smsAuthenticationMessage("smsAuthenticationMessage")
         .smsConfiguration(SmsConfigurationProperty.builder()
                 .externalId("externalId")
                 .snsCallerArn("snsCallerArn")
                 .snsRegion("snsRegion")
                 .build())
         .smsVerificationMessage("smsVerificationMessage")
         .userAttributeUpdateSettings(UserAttributeUpdateSettingsProperty.builder()
                 .attributesRequireVerificationBeforeUpdate(List.of("attributesRequireVerificationBeforeUpdate"))
                 .build())
         .usernameAttributes(List.of("usernameAttributes"))
         .usernameConfiguration(UsernameConfigurationProperty.builder()
                 .caseSensitive(false)
                 .build())
         .userPoolAddOns(UserPoolAddOnsProperty.builder()
                 .advancedSecurityAdditionalFlows(AdvancedSecurityAdditionalFlowsProperty.builder()
                         .customAuthMode("customAuthMode")
                         .build())
                 .advancedSecurityMode("advancedSecurityMode")
                 .build())
         .userPoolName("userPoolName")
         .userPoolTags(userPoolTags)
         .verificationMessageTemplate(VerificationMessageTemplateProperty.builder()
                 .defaultEmailOption("defaultEmailOption")
                 .emailMessage("emailMessage")
                 .emailMessageByLink("emailMessageByLink")
                 .emailSubject("emailSubject")
                 .emailSubjectByLink("emailSubjectByLink")
                 .smsMessage("smsMessage")
                 .build())
         .build();
 

See Also:
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnUserPool

      protected CfnUserPool(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnUserPool

      protected CfnUserPool(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnUserPool

      @Stability(Stable) public CfnUserPool(@NotNull software.constructs.Construct scope, @NotNull String id, @Nullable CfnUserPoolProps props)
      Parameters:
      scope - Scope in which this resource is defined. This parameter is required.
      id - Construct identifier for this resource (unique in its scope). This parameter is required.
      props - Resource properties.
    • CfnUserPool

      @Stability(Stable) public CfnUserPool(@NotNull software.constructs.Construct scope, @NotNull String id)
      Parameters:
      scope - Scope in which this resource is defined. This parameter is required.
      id - Construct identifier for this resource (unique in its scope). This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector - tree inspector to collect and process attributes. This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getAttrArn

      @Stability(Stable) @NotNull public String getAttrArn()
      The Amazon Resource Name (ARN) of the user pool, such as arn:aws:cognito-idp:us-east-1:123412341234:userpool/us-east-1_123412341 .
    • getAttrProviderName

      @Stability(Stable) @NotNull public String getAttrProviderName()
      A friendly name for the IdP.
    • getAttrProviderUrl

      @Stability(Stable) @NotNull public String getAttrProviderUrl()
      The URL of the provider of the Amazon Cognito user pool, specified as a String .
    • getAttrUserPoolId

      @Stability(Stable) @NotNull public String getAttrUserPoolId()
      The ID of the user pool.
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getTags

      @Stability(Stable) @NotNull public TagManager getTags()
      Tag Manager which manages the tags for this resource.
      Specified by:
      getTags in interface ITaggable
    • getAccountRecoverySetting

      @Stability(Stable) @Nullable public Object getAccountRecoverySetting()
      The available verified method a user can use to recover their password when they call ForgotPassword .
    • setAccountRecoverySetting

      @Stability(Stable) public void setAccountRecoverySetting(@Nullable IResolvable value)
      The available verified method a user can use to recover their password when they call ForgotPassword .
    • setAccountRecoverySetting

      @Stability(Stable) public void setAccountRecoverySetting(@Nullable CfnUserPool.AccountRecoverySettingProperty value)
      The available verified method a user can use to recover their password when they call ForgotPassword .
    • getAdminCreateUserConfig

      @Stability(Stable) @Nullable public Object getAdminCreateUserConfig()
      The settings for administrator creation of users in a user pool.
    • setAdminCreateUserConfig

      @Stability(Stable) public void setAdminCreateUserConfig(@Nullable IResolvable value)
      The settings for administrator creation of users in a user pool.
    • setAdminCreateUserConfig

      @Stability(Stable) public void setAdminCreateUserConfig(@Nullable CfnUserPool.AdminCreateUserConfigProperty value)
      The settings for administrator creation of users in a user pool.
    • getAliasAttributes

      @Stability(Stable) @Nullable public List<String> getAliasAttributes()
      Attributes supported as an alias for this user pool.
    • setAliasAttributes

      @Stability(Stable) public void setAliasAttributes(@Nullable List<String> value)
      Attributes supported as an alias for this user pool.
    • getAutoVerifiedAttributes

      @Stability(Stable) @Nullable public List<String> getAutoVerifiedAttributes()
      The attributes to be auto-verified.
    • setAutoVerifiedAttributes

      @Stability(Stable) public void setAutoVerifiedAttributes(@Nullable List<String> value)
      The attributes to be auto-verified.
    • getDeletionProtection

      @Stability(Stable) @Nullable public String getDeletionProtection()
      When active, DeletionProtection prevents accidental deletion of your user pool.
    • setDeletionProtection

      @Stability(Stable) public void setDeletionProtection(@Nullable String value)
      When active, DeletionProtection prevents accidental deletion of your user pool.
    • getDeviceConfiguration

      @Stability(Stable) @Nullable public Object getDeviceConfiguration()
      The device-remembering configuration for a user pool.
    • setDeviceConfiguration

      @Stability(Stable) public void setDeviceConfiguration(@Nullable IResolvable value)
      The device-remembering configuration for a user pool.
    • setDeviceConfiguration

      @Stability(Stable) public void setDeviceConfiguration(@Nullable CfnUserPool.DeviceConfigurationProperty value)
      The device-remembering configuration for a user pool.
    • getEmailAuthenticationMessage

      @Stability(Stable) @Nullable public String getEmailAuthenticationMessage()
    • setEmailAuthenticationMessage

      @Stability(Stable) public void setEmailAuthenticationMessage(@Nullable String value)
    • getEmailAuthenticationSubject

      @Stability(Stable) @Nullable public String getEmailAuthenticationSubject()
    • setEmailAuthenticationSubject

      @Stability(Stable) public void setEmailAuthenticationSubject(@Nullable String value)
    • getEmailConfiguration

      @Stability(Stable) @Nullable public Object getEmailConfiguration()
      The email configuration of your user pool.
    • setEmailConfiguration

      @Stability(Stable) public void setEmailConfiguration(@Nullable IResolvable value)
      The email configuration of your user pool.
    • setEmailConfiguration

      @Stability(Stable) public void setEmailConfiguration(@Nullable CfnUserPool.EmailConfigurationProperty value)
      The email configuration of your user pool.
    • getEmailVerificationMessage

      @Stability(Stable) @Nullable public String getEmailVerificationMessage()
      This parameter is no longer used.
    • setEmailVerificationMessage

      @Stability(Stable) public void setEmailVerificationMessage(@Nullable String value)
      This parameter is no longer used.
    • getEmailVerificationSubject

      @Stability(Stable) @Nullable public String getEmailVerificationSubject()
      This parameter is no longer used.
    • setEmailVerificationSubject

      @Stability(Stable) public void setEmailVerificationSubject(@Nullable String value)
      This parameter is no longer used.
    • getEnabledMfas

      @Stability(Stable) @Nullable public List<String> getEnabledMfas()
      Set enabled MFA options on a specified user pool.
    • setEnabledMfas

      @Stability(Stable) public void setEnabledMfas(@Nullable List<String> value)
      Set enabled MFA options on a specified user pool.
    • getLambdaConfig

      @Stability(Stable) @Nullable public Object getLambdaConfig()
      A collection of user pool Lambda triggers.
    • setLambdaConfig

      @Stability(Stable) public void setLambdaConfig(@Nullable IResolvable value)
      A collection of user pool Lambda triggers.
    • setLambdaConfig

      @Stability(Stable) public void setLambdaConfig(@Nullable CfnUserPool.LambdaConfigProperty value)
      A collection of user pool Lambda triggers.
    • getMfaConfiguration

      @Stability(Stable) @Nullable public String getMfaConfiguration()
      The multi-factor authentication (MFA) configuration.

      Valid values include:.

    • setMfaConfiguration

      @Stability(Stable) public void setMfaConfiguration(@Nullable String value)
      The multi-factor authentication (MFA) configuration.

      Valid values include:.

    • getPolicies

      @Stability(Stable) @Nullable public Object getPolicies()
      A list of user pool policies.

      Contains the policy that sets password-complexity requirements.

    • setPolicies

      @Stability(Stable) public void setPolicies(@Nullable IResolvable value)
      A list of user pool policies.

      Contains the policy that sets password-complexity requirements.

    • setPolicies

      @Stability(Stable) public void setPolicies(@Nullable CfnUserPool.PoliciesProperty value)
      A list of user pool policies.

      Contains the policy that sets password-complexity requirements.

    • getSchema

      @Stability(Stable) @Nullable public Object getSchema()
      An array of schema attributes for the new user pool.
    • setSchema

      @Stability(Stable) public void setSchema(@Nullable IResolvable value)
      An array of schema attributes for the new user pool.
    • setSchema

      @Stability(Stable) public void setSchema(@Nullable List<Object> value)
      An array of schema attributes for the new user pool.
    • getSmsAuthenticationMessage

      @Stability(Stable) @Nullable public String getSmsAuthenticationMessage()
      The contents of the SMS authentication message.
    • setSmsAuthenticationMessage

      @Stability(Stable) public void setSmsAuthenticationMessage(@Nullable String value)
      The contents of the SMS authentication message.
    • getSmsConfiguration

      @Stability(Stable) @Nullable public Object getSmsConfiguration()
      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.
    • setSmsConfiguration

      @Stability(Stable) public void setSmsConfiguration(@Nullable IResolvable value)
      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.
    • setSmsConfiguration

      @Stability(Stable) public void setSmsConfiguration(@Nullable CfnUserPool.SmsConfigurationProperty value)
      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.
    • getSmsVerificationMessage

      @Stability(Stable) @Nullable public String getSmsVerificationMessage()
      This parameter is no longer used.
    • setSmsVerificationMessage

      @Stability(Stable) public void setSmsVerificationMessage(@Nullable String value)
      This parameter is no longer used.
    • getUserAttributeUpdateSettings

      @Stability(Stable) @Nullable public Object getUserAttributeUpdateSettings()
      The settings for updates to user attributes.
    • setUserAttributeUpdateSettings

      @Stability(Stable) public void setUserAttributeUpdateSettings(@Nullable IResolvable value)
      The settings for updates to user attributes.
    • setUserAttributeUpdateSettings

      @Stability(Stable) public void setUserAttributeUpdateSettings(@Nullable CfnUserPool.UserAttributeUpdateSettingsProperty value)
      The settings for updates to user attributes.
    • getUsernameAttributes

      @Stability(Stable) @Nullable public List<String> getUsernameAttributes()
      Specifies whether a user can use an email address or phone number as a username when they sign up.
    • setUsernameAttributes

      @Stability(Stable) public void setUsernameAttributes(@Nullable List<String> value)
      Specifies whether a user can use an email address or phone number as a username when they sign up.
    • getUsernameConfiguration

      @Stability(Stable) @Nullable public Object getUsernameConfiguration()
      Case sensitivity on the username input for the selected sign-in option.
    • setUsernameConfiguration

      @Stability(Stable) public void setUsernameConfiguration(@Nullable IResolvable value)
      Case sensitivity on the username input for the selected sign-in option.
    • setUsernameConfiguration

      @Stability(Stable) public void setUsernameConfiguration(@Nullable CfnUserPool.UsernameConfigurationProperty value)
      Case sensitivity on the username input for the selected sign-in option.
    • getUserPoolAddOns

      @Stability(Stable) @Nullable public Object getUserPoolAddOns()
      User pool add-ons.
    • setUserPoolAddOns

      @Stability(Stable) public void setUserPoolAddOns(@Nullable IResolvable value)
      User pool add-ons.
    • setUserPoolAddOns

      @Stability(Stable) public void setUserPoolAddOns(@Nullable CfnUserPool.UserPoolAddOnsProperty value)
      User pool add-ons.
    • getUserPoolName

      @Stability(Stable) @Nullable public String getUserPoolName()
      A string used to name the user pool.
    • setUserPoolName

      @Stability(Stable) public void setUserPoolName(@Nullable String value)
      A string used to name the user pool.
    • getUserPoolTagsRaw

      @Stability(Stable) @Nullable public Object getUserPoolTagsRaw()
      The tag keys and values to assign to the user pool.
    • setUserPoolTagsRaw

      @Stability(Stable) public void setUserPoolTagsRaw(@Nullable Object value)
      The tag keys and values to assign to the user pool.
    • getVerificationMessageTemplate

      @Stability(Stable) @Nullable public Object getVerificationMessageTemplate()
      The template for the verification message that your user pool delivers to users who set an email address or phone number attribute.
    • setVerificationMessageTemplate

      @Stability(Stable) public void setVerificationMessageTemplate(@Nullable IResolvable value)
      The template for the verification message that your user pool delivers to users who set an email address or phone number attribute.
    • setVerificationMessageTemplate

      @Stability(Stable) public void setVerificationMessageTemplate(@Nullable CfnUserPool.VerificationMessageTemplateProperty value)
      The template for the verification message that your user pool delivers to users who set an email address or phone number attribute.