UserPoolClientOptions Struct
Options to create a UserPoolClient.
Example
const pool = new cognito.UserPool(this, 'Pool');
pool.addClient('app-client', {
oAuth: {
flows: {
authorizationCodeGrant: true,
},
scopes: [ cognito.OAuthScope.OPENID ],
callbackUrls: [ 'https://my-app-domain.com/welcome' ],
logoutUrls: [ 'https://my-app-domain.com/signin' ],
},
});
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.
userPoolClientNameoptionalstringuser_pool_client_nameoptionalstruserPoolClientNameoptionalStringUserPoolClientNameoptionalstringUserPoolClientNameoptional*string#Default: cloudformation generated name
writeAttributesoptionalClientAttributeswrite_attributesoptionalClientAttributeswriteAttributesoptionalClientAttributesWriteAttributesoptionalClientAttributesWriteAttributesoptionalClientAttributes#Default: all standard and custom attributes