@@ -7,15 +7,14 @@ import * as apigateway from 'aws-cdk-lib/aws-apigateway';
77import * as servicediscovery from 'aws-cdk-lib/aws-servicediscovery' ;
88import * as iam from 'aws-cdk-lib/aws-iam' ;
99import * as elbv2 from 'aws-cdk-lib/aws-elasticloadbalancingv2' ;
10+ import * as ssm from 'aws-cdk-lib/aws-ssm' ;
1011
1112import { Construct } from 'constructs' ;
1213import { AttributeType , BillingMode , Table } from 'aws-cdk-lib/aws-dynamodb' ;
1314import { RemovalPolicy } from 'aws-cdk-lib' ;
1415
1516interface BackendStackProps extends cdk . StackProps {
1617 environment : string ;
17- cognitoClientId : string ;
18- cognitoUserPoolId : string ;
1918}
2019
2120export class BackendStack extends cdk . Stack {
@@ -25,6 +24,24 @@ export class BackendStack extends cdk.Stack {
2524 const isProd = props . environment === 'production' ;
2625 const appName = 'AIMedicalReport' ;
2726
27+ // Get Cognito User Pool ID from SSM Parameter Store
28+ const userPoolId = ssm . StringParameter . fromStringParameterAttributes (
29+ this ,
30+ `${ appName } UserPoolIdParam-${ props . environment } ` ,
31+ {
32+ parameterName : `/${ appName } /${ props . environment } /cognito-user-pool-id` ,
33+ } ,
34+ ) . stringValue ;
35+
36+ // Get Cognito Client ID from SSM Parameter Store
37+ const clientId = ssm . StringParameter . fromStringParameterAttributes (
38+ this ,
39+ `${ appName } ClientIdParam-${ props . environment } ` ,
40+ {
41+ parameterName : `/${ appName } /${ props . environment } /cognito-client-id` ,
42+ } ,
43+ ) . stringValue ;
44+
2845 // VPC
2946 const vpc = new ec2 . Vpc ( this , `${ appName } VPC` , {
3047 vpcName : `${ appName } VPC-${ props . environment } ` ,
@@ -81,11 +98,7 @@ export class BackendStack extends cdk.Stack {
8198 } ) ;
8299
83100 // Cognito User Pool
84- const userPool = cognito . UserPool . fromUserPoolId (
85- this ,
86- `${ appName } UserPool` ,
87- props . cognitoUserPoolId || 'us-east-1_PszlvSmWc' ,
88- ) ;
101+ const userPool = cognito . UserPool . fromUserPoolId ( this , `${ appName } UserPool` , userPoolId ) ;
89102
90103 // Cognito domain
91104 const userPoolDomain = cognito . UserPoolDomain . fromDomainName (
@@ -98,7 +111,7 @@ export class BackendStack extends cdk.Stack {
98111 const userPoolClient = cognito . UserPoolClient . fromUserPoolClientId (
99112 this ,
100113 `${ appName } UserPoolClient-${ props . environment } ` ,
101- props . cognitoClientId ,
114+ clientId ,
102115 ) ;
103116
104117 // Security Group for Fargate service
0 commit comments