Class CfnUserPoolClient
java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
software.amazon.awscdk.CfnElement
software.amazon.awscdk.CfnRefElement
software.amazon.awscdk.CfnResource
software.amazon.awscdk.services.cognito.CfnUserPoolClient
- All Implemented Interfaces:
IEnvironmentAware,IInspectable,IUserPoolClientRef,software.amazon.jsii.JsiiSerializable,software.constructs.IConstruct,software.constructs.IDependable
@Generated(value="jsii-pacmak/1.118.0 (build 02eec31)",
date="2025-11-10T13:40:01.188Z")
@Stability(Stable)
public class CfnUserPoolClient
extends CfnResource
implements IInspectable, IUserPoolClientRef
The
AWS::Cognito::UserPoolClient resource specifies an Amazon Cognito user pool client.
If you don't specify a value for a parameter, Amazon Cognito sets it to a default value.
Example:
import software.amazon.awscdk.services.certificatemanager.*;
Vpc vpc;
Certificate certificate;
ApplicationLoadBalancer lb = ApplicationLoadBalancer.Builder.create(this, "LB")
.vpc(vpc)
.internetFacing(true)
.build();
UserPool userPool = new UserPool(this, "UserPool");
UserPoolClient userPoolClient = UserPoolClient.Builder.create(this, "Client")
.userPool(userPool)
// Required minimal configuration for use with an ELB
.generateSecret(true)
.authFlows(AuthFlow.builder()
.userPassword(true)
.build())
.oAuth(OAuthSettings.builder()
.flows(OAuthFlows.builder()
.authorizationCodeGrant(true)
.build())
.scopes(List.of(OAuthScope.EMAIL))
.callbackUrls(List.of(String.format("https://%s/oauth2/idpresponse", lb.getLoadBalancerDnsName())))
.build())
.build();
CfnUserPoolClient cfnClient = (CfnUserPoolClient)userPoolClient.getNode().getDefaultChild();
cfnClient.addPropertyOverride("RefreshTokenValidity", 1);
cfnClient.addPropertyOverride("SupportedIdentityProviders", List.of("COGNITO"));
UserPoolDomain userPoolDomain = UserPoolDomain.Builder.create(this, "Domain")
.userPool(userPool)
.cognitoDomain(CognitoDomainOptions.builder()
.domainPrefix("test-cdk-prefix")
.build())
.build();
lb.addListener("Listener", BaseApplicationListenerProps.builder()
.port(443)
.certificates(List.of(certificate))
.defaultAction(AuthenticateCognitoAction.Builder.create()
.userPool(userPool)
.userPoolClient(userPoolClient)
.userPoolDomain(userPoolDomain)
.next(ListenerAction.fixedResponse(200, FixedResponseOptions.builder()
.contentType("text/plain")
.messageBody("Authenticated")
.build()))
.build())
.build());
CfnOutput.Builder.create(this, "DNS")
.value(lb.getLoadBalancerDnsName())
.build();
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceThe settings for Amazon Pinpoint analytics configuration.static final classA fluent builder forCfnUserPoolClient.static interfaceThe configuration of your app client for refresh token rotation.static interfaceThe units that validity times are represented in.Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationModeNested classes/interfaces inherited from interface software.constructs.IConstruct
software.constructs.IConstruct.Jsii$DefaultNested classes/interfaces inherited from interface software.amazon.awscdk.IInspectable
IInspectable.Jsii$Default, IInspectable.Jsii$ProxyNested classes/interfaces inherited from interface software.amazon.awscdk.services.cognito.IUserPoolClientRef
IUserPoolClientRef.Jsii$Default, IUserPoolClientRef.Jsii$Proxy -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe CloudFormation resource type name for this resource class. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedCfnUserPoolClient(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) protectedCfnUserPoolClient(software.amazon.jsii.JsiiObjectRef objRef) CfnUserPoolClient(software.constructs.Construct scope, String id, CfnUserPoolClientProps props) -
Method Summary
Modifier and TypeMethodDescriptionThe access token time limit.The OAuth grant types that you want your app client to generate for clients in managed login authentication.Set totrueto use OAuth 2.0 authorization server features in your app client.The OAuth, OpenID Connect (OIDC), and custom scopes that you want to permit your app client to authorize access with.The user pool analytics configuration for collecting metrics and sending them to your Amazon Pinpoint campaign.The ID of the app client, for example1example23456789.Amazon Cognito creates a session token for each API request in an authentication flow.A list of allowed redirect, or callback, URLs for managed login authentication.A friendly name for the app client that you want to create.The default redirect URI.Whentrue, your application can include additionalUserContextDatain authentication requests.Activates or deactivates token revocation.The authentication flows that you want your user pool client to support.Whentrue, generates a client secret for the app client.The ID token time limit.A list of allowed logout URLs for managed login authentication.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.The list of user attributes that you want your app client to have read access to.The configuration of your app client for refresh token rotation.The refresh token time limit.A list of provider names for the identity providers (IdPs) that are supported on this client.The units that validity times are represented in.A reference to a UserPoolClient resource.The ID of the user pool where you want to create an app client.The list of user attributes that you want your app client to have write access to.voidinspect(TreeInspector inspector) Examines the CloudFormation resource and discloses attributes.renderProperties(Map<String, Object> props) voidsetAccessTokenValidity(Number value) The access token time limit.voidsetAllowedOAuthFlows(List<String> value) The OAuth grant types that you want your app client to generate for clients in managed login authentication.voidSet totrueto use OAuth 2.0 authorization server features in your app client.voidSet totrueto use OAuth 2.0 authorization server features in your app client.voidsetAllowedOAuthScopes(List<String> value) The OAuth, OpenID Connect (OIDC), and custom scopes that you want to permit your app client to authorize access with.voidThe user pool analytics configuration for collecting metrics and sending them to your Amazon Pinpoint campaign.voidThe user pool analytics configuration for collecting metrics and sending them to your Amazon Pinpoint campaign.voidsetAuthSessionValidity(Number value) Amazon Cognito creates a session token for each API request in an authentication flow.voidsetCallbackUrLs(List<String> value) A list of allowed redirect, or callback, URLs for managed login authentication.voidsetClientName(String value) A friendly name for the app client that you want to create.voidsetDefaultRedirectUri(String value) The default redirect URI.voidWhentrue, your application can include additionalUserContextDatain authentication requests.voidWhentrue, your application can include additionalUserContextDatain authentication requests.voidsetEnableTokenRevocation(Boolean value) Activates or deactivates token revocation.voidActivates or deactivates token revocation.voidsetExplicitAuthFlows(List<String> value) The authentication flows that you want your user pool client to support.voidsetGenerateSecret(Boolean value) Whentrue, generates a client secret for the app client.voidsetGenerateSecret(IResolvable value) Whentrue, generates a client secret for the app client.voidsetIdTokenValidity(Number value) The ID token time limit.voidsetLogoutUrLs(List<String> value) A list of allowed logout URLs for managed login authentication.voidErrors 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.voidsetReadAttributes(List<String> value) The list of user attributes that you want your app client to have read access to.voidThe configuration of your app client for refresh token rotation.voidThe configuration of your app client for refresh token rotation.voidsetRefreshTokenValidity(Number value) The refresh token time limit.voidsetSupportedIdentityProviders(List<String> value) A list of provider names for the identity providers (IdPs) that are supported on this client.voidsetTokenValidityUnits(IResolvable value) The units that validity times are represented in.voidThe units that validity times are represented in.voidsetUserPoolId(String value) The ID of the user pool where you want to create an app client.voidsetWriteAttributes(List<String> value) The list of user attributes that you want your app client to have write access to.Methods inherited from class software.amazon.awscdk.CfnResource
addDeletionOverride, addDependency, addDependsOn, addMetadata, addOverride, addPropertyDeletionOverride, addPropertyOverride, applyRemovalPolicy, applyRemovalPolicy, applyRemovalPolicy, getAtt, getAtt, getCfnOptions, getCfnResourceType, getEnv, getMetadata, getUpdatedProperites, getUpdatedProperties, isCfnResource, obtainDependencies, obtainResourceDependencies, removeDependency, replaceDependency, shouldSynthesize, toString, validatePropertiesMethods inherited from class software.amazon.awscdk.CfnRefElement
getRefMethods inherited from class software.amazon.awscdk.CfnElement
getCreationStack, getLogicalId, getStack, isCfnElement, overrideLogicalIdMethods inherited from class software.constructs.Construct
getNode, isConstructMethods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSetMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface software.constructs.IConstruct
getNodeMethods inherited from interface software.amazon.awscdk.IEnvironmentAware
getEnvMethods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Field Details
-
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
-
-
Constructor Details
-
CfnUserPoolClient
protected CfnUserPoolClient(software.amazon.jsii.JsiiObjectRef objRef) -
CfnUserPoolClient
protected CfnUserPoolClient(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) -
CfnUserPoolClient
@Stability(Stable) public CfnUserPoolClient(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull CfnUserPoolClientProps 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. This parameter is required.
-
-
Method Details
-
inspect
Examines the CloudFormation resource and discloses attributes.- Specified by:
inspectin interfaceIInspectable- 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:
renderPropertiesin classCfnResource- Parameters:
props- This parameter is required.
-
getAttrClientId
The ID of the app client, for example1example23456789. -
getAttrClientSecret
-
getAttrName
-
getCfnProperties
- Overrides:
getCfnPropertiesin classCfnResource
-
getUserPoolClientRef
A reference to a UserPoolClient resource.- Specified by:
getUserPoolClientRefin interfaceIUserPoolClientRef
-
getUserPoolId
The ID of the user pool where you want to create an app client. -
setUserPoolId
The ID of the user pool where you want to create an app client. -
getAccessTokenValidity
The access token time limit. -
setAccessTokenValidity
The access token time limit. -
getAllowedOAuthFlows
The OAuth grant types that you want your app client to generate for clients in managed login authentication. -
setAllowedOAuthFlows
The OAuth grant types that you want your app client to generate for clients in managed login authentication. -
getAllowedOAuthFlowsUserPoolClient
Set totrueto use OAuth 2.0 authorization server features in your app client.Returns union: either
BooleanorIResolvable -
setAllowedOAuthFlowsUserPoolClient
Set totrueto use OAuth 2.0 authorization server features in your app client. -
setAllowedOAuthFlowsUserPoolClient
Set totrueto use OAuth 2.0 authorization server features in your app client. -
getAllowedOAuthScopes
The OAuth, OpenID Connect (OIDC), and custom scopes that you want to permit your app client to authorize access with. -
setAllowedOAuthScopes
The OAuth, OpenID Connect (OIDC), and custom scopes that you want to permit your app client to authorize access with. -
getAnalyticsConfiguration
The user pool analytics configuration for collecting metrics and sending them to your Amazon Pinpoint campaign.Returns union: either
IResolvableorCfnUserPoolClient.AnalyticsConfigurationProperty -
setAnalyticsConfiguration
The user pool analytics configuration for collecting metrics and sending them to your Amazon Pinpoint campaign. -
setAnalyticsConfiguration
@Stability(Stable) public void setAnalyticsConfiguration(@Nullable CfnUserPoolClient.AnalyticsConfigurationProperty value) The user pool analytics configuration for collecting metrics and sending them to your Amazon Pinpoint campaign. -
getAuthSessionValidity
Amazon Cognito creates a session token for each API request in an authentication flow. -
setAuthSessionValidity
Amazon Cognito creates a session token for each API request in an authentication flow. -
getCallbackUrLs
A list of allowed redirect, or callback, URLs for managed login authentication. -
setCallbackUrLs
A list of allowed redirect, or callback, URLs for managed login authentication. -
getClientName
A friendly name for the app client that you want to create. -
setClientName
A friendly name for the app client that you want to create. -
getDefaultRedirectUri
The default redirect URI. -
setDefaultRedirectUri
The default redirect URI. -
getEnablePropagateAdditionalUserContextData
Whentrue, your application can include additionalUserContextDatain authentication requests.Returns union: either
BooleanorIResolvable -
setEnablePropagateAdditionalUserContextData
Whentrue, your application can include additionalUserContextDatain authentication requests. -
setEnablePropagateAdditionalUserContextData
@Stability(Stable) public void setEnablePropagateAdditionalUserContextData(@Nullable IResolvable value) Whentrue, your application can include additionalUserContextDatain authentication requests. -
getEnableTokenRevocation
Activates or deactivates token revocation.Returns union: either
BooleanorIResolvable -
setEnableTokenRevocation
Activates or deactivates token revocation. -
setEnableTokenRevocation
Activates or deactivates token revocation. -
getExplicitAuthFlows
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. -
setExplicitAuthFlows
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. -
getGenerateSecret
Whentrue, generates a client secret for the app client.Returns union: either
BooleanorIResolvable -
setGenerateSecret
Whentrue, generates a client secret for the app client. -
setGenerateSecret
Whentrue, generates a client secret for the app client. -
getIdTokenValidity
The ID token time limit. -
setIdTokenValidity
The ID token time limit. -
getLogoutUrLs
A list of allowed logout URLs for managed login authentication. -
setLogoutUrLs
A list of allowed logout URLs for managed login authentication. -
getPreventUserExistenceErrors
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. -
setPreventUserExistenceErrors
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. -
getReadAttributes
The list of user attributes that you want your app client to have read access to. -
setReadAttributes
The list of user attributes that you want your app client to have read access to. -
getRefreshTokenRotation
The configuration of your app client for refresh token rotation.Returns union: either
IResolvableorCfnUserPoolClient.RefreshTokenRotationProperty -
setRefreshTokenRotation
The configuration of your app client for refresh token rotation. -
setRefreshTokenRotation
@Stability(Stable) public void setRefreshTokenRotation(@Nullable CfnUserPoolClient.RefreshTokenRotationProperty value) The configuration of your app client for refresh token rotation. -
getRefreshTokenValidity
The refresh token time limit. -
setRefreshTokenValidity
The refresh token time limit. -
getSupportedIdentityProviders
A list of provider names for the identity providers (IdPs) that are supported on this client. -
setSupportedIdentityProviders
A list of provider names for the identity providers (IdPs) that are supported on this client. -
getTokenValidityUnits
The units that validity times are represented in.Returns union: either
IResolvableorCfnUserPoolClient.TokenValidityUnitsProperty -
setTokenValidityUnits
The units that validity times are represented in. -
setTokenValidityUnits
@Stability(Stable) public void setTokenValidityUnits(@Nullable CfnUserPoolClient.TokenValidityUnitsProperty value) The units that validity times are represented in. -
getWriteAttributes
The list of user attributes that you want your app client to have write access to. -
setWriteAttributes
The list of user attributes that you want your app client to have write access to.
-