interface UserPoolDomainProps
Language | Type name |
---|---|
.NET | Amazon.CDK.AWS.Cognito.UserPoolDomainProps |
Java | software.amazon.awscdk.services.cognito.UserPoolDomainProps |
Python | aws_cdk.aws_cognito.UserPoolDomainProps |
TypeScript (source) | @aws-cdk/aws-cognito » UserPoolDomainProps |
Props for UserPoolDomain construct.
Example
const lb = new elbv2.ApplicationLoadBalancer(this, 'LB', {
vpc,
internetFacing: true,
});
const userPool = new cognito.UserPool(this, 'UserPool');
const userPoolClient = new cognito.UserPoolClient(this, 'Client', {
userPool,
// Required minimal configuration for use with an ELB
generateSecret: true,
authFlows: {
userPassword: true,
},
oAuth: {
flows: {
authorizationCodeGrant: true,
},
scopes: [cognito.OAuthScope.EMAIL],
callbackUrls: [
`https://${lb.loadBalancerDnsName}/oauth2/idpresponse`,
],
},
});
const cfnClient = userPoolClient.node.defaultChild as cognito.CfnUserPoolClient;
cfnClient.addPropertyOverride('RefreshTokenValidity', 1);
cfnClient.addPropertyOverride('SupportedIdentityProviders', ['COGNITO']);
const userPoolDomain = new cognito.UserPoolDomain(this, 'Domain', {
userPool,
cognitoDomain: {
domainPrefix: 'test-cdk-prefix',
},
});
lb.addListener('Listener', {
port: 443,
certificates: [certificate],
defaultAction: new actions.AuthenticateCognitoAction({
userPool,
userPoolClient,
userPoolDomain,
next: elbv2.ListenerAction.fixedResponse(200, {
contentType: 'text/plain',
messageBody: 'Authenticated',
}),
}),
});
new CfnOutput(this, 'DNS', {
value: lb.loadBalancerDnsName,
});
}
}
const app = new App();
new CognitoStack(app, 'integ-cognito');
app.synth();
Properties
Name | Type | Description |
---|---|---|
user | IUser | The user pool to which this domain should be associated. |
cognito | Cognito | Associate a cognito prefix domain with your user pool Either customDomain or cognitoDomain must be specified. |
custom | Custom | Associate a custom domain with your user pool Either customDomain or cognitoDomain must be specified. |
userPool
Type:
IUser
The user pool to which this domain should be associated.
cognitoDomain?
Type:
Cognito
(optional, default: not set if customDomain
is specified, otherwise, throws an error.)
Associate a cognito prefix domain with your user pool Either customDomain
or cognitoDomain
must be specified.
customDomain?
Type:
Custom
(optional, default: not set if cognitoDomain
is specified, otherwise, throws an error.)
Associate a custom domain with your user pool Either customDomain
or cognitoDomain
must be specified.