UserPoolClientProps Struct
Properties for the UserPoolClient construct.
Example
import * as pinpoint from 'aws-cdk-lib/aws-pinpoint';
declare const userPool: cognito.UserPool;
declare const pinpointApp: pinpoint.CfnApp;
declare const pinpointRole: iam.Role;
new cognito.UserPoolClient(this, 'Client', {
userPool,
analytics: {
// Your Pinpoint project ID
applicationId: pinpointApp.ref,
// External ID for the IAM role
externalId: "sample-external-id",
// IAM role that Cognito can assume to publish to Pinpoint
role: pinpointRole,
// Whether to include user data in analytics events
shareUserData: true,
},
});
Properties
accessTokenValidityoptionalDurationaccess_token_validityoptionalDurationaccessTokenValidityoptionalDurationAccessTokenValidityoptionalDurationAccessTokenValidityoptionalDuration= Duration.minutes(60)#Values between 5 minutes and 1 day are valid. The duration cannot be longer than the refresh token validity.
analyticsoptionalAnalyticsConfigurationanalyticsoptionalAnalyticsConfigurationanalyticsoptionalAnalyticsConfigurationAnalyticsoptionalAnalyticsConfigurationAnalyticsoptionalAnalyticsConfiguration#Default: no analytics configuration
authFlowsoptionalAuthFlowauth_flowsoptionalAuthFlowauthFlowsoptionalAuthFlowAuthFlowsoptionalAuthFlowAuthFlowsoptionalAuthFlow#Default: If you don't specify a value, your user client supports ALLOW_REFRESH_TOKEN_AUTH, ALLOW_USER_SRP_AUTH, and ALLOW_CUSTOM_AUTH.
authSessionValidityoptionalDurationauth_session_validityoptionalDurationauthSessionValidityoptionalDurationAuthSessionValidityoptionalDurationAuthSessionValidityoptionalDuration= Duration.minutes(3)#AuthSessionValidity is the duration, in minutes, of that session token. see defaults in AuthSessionValidity. Valid duration is from 3 to 15 minutes.
disableOAuthoptionalbooleandisable_o_authoptionalbooldisableOAuthoptionalBooleanDisableOAuthoptionalboolDisableOAuthoptional*bool= false#enablePropagateAdditionalUserContextDataoptionalbooleanenable_propagate_additional_user_context_dataoptionalboolenablePropagateAdditionalUserContextDataoptionalBooleanEnablePropagateAdditionalUserContextDataoptionalboolEnablePropagateAdditionalUserContextDataoptional*bool#Default: false for new user pool clients
You can only activate enablePropagateAdditionalUserContextData in an app client that has a client secret.
enableTokenRevocationoptionalbooleanenable_token_revocationoptionalboolenableTokenRevocationoptionalBooleanEnableTokenRevocationoptionalboolEnableTokenRevocationoptional*bool#Default: true for new user pool clients
generateSecretoptionalbooleangenerate_secretoptionalboolgenerateSecretoptionalBooleanGenerateSecretoptionalboolGenerateSecretoptional*bool= false#idTokenValidityoptionalDurationid_token_validityoptionalDurationidTokenValidityoptionalDurationIdTokenValidityoptionalDurationIdTokenValidityoptionalDuration= Duration.minutes(60)#Values between 5 minutes and 1 day are valid. The duration cannot be longer than the refresh token validity.
oAuthoptionalOAuthSettingso_authoptionalOAuthSettingsoAuthoptionalOAuthSettingsOAuthoptionalOAuthSettingsOAuthoptionalOAuthSettings#Default: see defaults in OAuthSettings. meaningless if disableOAuth is set.
An error is thrown when this is specified and disableOAuth is set.
preventUserExistenceErrorsoptionalbooleanprevent_user_existence_errorsoptionalboolpreventUserExistenceErrorsoptionalBooleanPreventUserExistenceErrorsoptionalboolPreventUserExistenceErrorsoptional*bool= false#readAttributesoptionalClientAttributesread_attributesoptionalClientAttributesreadAttributesoptionalClientAttributesReadAttributesoptionalClientAttributesReadAttributesoptionalClientAttributes#Default: all standard and custom attributes
refreshTokenRotationGracePeriodoptionalDurationrefresh_token_rotation_grace_periodoptionalDurationrefreshTokenRotationGracePeriodoptionalDurationRefreshTokenRotationGracePeriodoptionalDurationRefreshTokenRotationGracePeriodoptionalDuration#Default: undefined (refresh token rotation is disabled)
Defines the grace period for the original refresh token (0-60 seconds).
refreshTokenValidityoptionalDurationrefresh_token_validityoptionalDurationrefreshTokenValidityoptionalDurationRefreshTokenValidityoptionalDurationRefreshTokenValidityoptionalDuration= Duration.days(30)#Values between 60 minutes and 10 years are valid.
supportedIdentityProvidersoptionalUserPoolClientIdentityProvider[]supported_identity_providersoptionaltyping.List[UserPoolClientIdentityProvider]supportedIdentityProvidersoptionalList<UserPoolClientIdentityProvider>SupportedIdentityProvidersoptionalUserPoolClientIdentityProvider[]SupportedIdentityProvidersoptional*[]UserPoolClientIdentityProvider#Default: supports all identity providers that are registered with the user pool. If the user pool and/or identity providers are imported, either specify this option explicitly or ensure that the identity providers are registered with the user pool using the UserPool.registerIdentityProvider() API.
userPoolIUserPoolRefuser_poolIUserPoolRefuserPoolIUserPoolRefUserPoolIUserPoolRefUserPoolIUserPoolRefrequired#userPoolClientNameoptionalstringuser_pool_client_nameoptionalstruserPoolClientNameoptionalStringUserPoolClientNameoptionalstringUserPoolClientNameoptional*string#Default: cloudformation generated name
writeAttributesoptionalClientAttributeswrite_attributesoptionalClientAttributeswriteAttributesoptionalClientAttributesWriteAttributesoptionalClientAttributesWriteAttributesoptionalClientAttributes#Default: all standard and custom attributes