@@ -8,15 +8,14 @@ import * 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' ;
1010import * as s3 from 'aws-cdk-lib/aws-s3' ;
11+ import * as ssm from 'aws-cdk-lib/aws-ssm' ;
1112
1213import { Construct } from 'constructs' ;
1314import { AttributeType , BillingMode , Table } from 'aws-cdk-lib/aws-dynamodb' ;
1415import { RemovalPolicy } from 'aws-cdk-lib' ;
1516
1617interface BackendStackProps extends cdk . StackProps {
1718 environment : string ;
18- cognitoClientId : string ;
19- cognitoUserPoolId : string ;
2019}
2120
2221export class BackendStack extends cdk . Stack {
@@ -26,6 +25,24 @@ export class BackendStack extends cdk.Stack {
2625 const isProd = props . environment === 'production' ;
2726 const appName = 'AIMedicalReport' ;
2827
28+ // Get Cognito User Pool ID from SSM Parameter Store
29+ const userPoolId = ssm . StringParameter . fromStringParameterAttributes (
30+ this ,
31+ `${ appName } UserPoolIdParam-${ props . environment } ` ,
32+ {
33+ parameterName : `/${ appName } /${ props . environment } /cognito-user-pool-id` ,
34+ } ,
35+ ) . stringValue ;
36+
37+ // Get Cognito Client ID from SSM Parameter Store
38+ const clientId = ssm . StringParameter . fromStringParameterAttributes (
39+ this ,
40+ `${ appName } ClientIdParam-${ props . environment } ` ,
41+ {
42+ parameterName : `/${ appName } /${ props . environment } /cognito-client-id` ,
43+ } ,
44+ ) . stringValue ;
45+
2946 // VPC
3047 const vpc = new ec2 . Vpc ( this , `${ appName } VPC` , {
3148 vpcName : `${ appName } VPC-${ props . environment } ` ,
@@ -82,11 +99,7 @@ export class BackendStack extends cdk.Stack {
8299 } ) ;
83100
84101 // Cognito User Pool
85- const userPool = cognito . UserPool . fromUserPoolId (
86- this ,
87- `${ appName } UserPool` ,
88- props . cognitoUserPoolId || 'us-east-1_PszlvSmWc' ,
89- ) ;
102+ const userPool = cognito . UserPool . fromUserPoolId ( this , `${ appName } UserPool` , userPoolId ) ;
90103
91104 // Cognito domain
92105 const userPoolDomain = cognito . UserPoolDomain . fromDomainName (
@@ -99,7 +112,7 @@ export class BackendStack extends cdk.Stack {
99112 const userPoolClient = cognito . UserPoolClient . fromUserPoolClientId (
100113 this ,
101114 `${ appName } UserPoolClient-${ props . environment } ` ,
102- props . cognitoClientId ,
115+ clientId ,
103116 ) ;
104117
105118 // Security Group for Fargate service
0 commit comments