CDK 5

[CDK] Cognito 개념 및 생성

Cognito AWS Cognito는 웹과 모바일 앱에 대한 인증과 권한 부여 및 사용자 관리를 제공하고, 사용자는 사용자 이름과 패스워드를 사용하여 직접 로그인하거나 Facebook, Amazon, Google 또는 Apple 같은 타사를 통해 로그인(OAuth)할 수 있습니다. Cognito를 사용하면 좋은 점 사용자를 손쉽게 관리할 수 있다. 뛰어난 확장성 Cognito를 사용하면 사용자 디렉토리를 손쉽게 생성할 수 있습니다. 이 디렉토리는 완전 관리형으로, 수억명까지 쉽게 확장됩니다. 강화된 안전 AWS의 안전에 대한 경험이 녹아들어 있습니다. 이메일 및 SMS 인증, MFA 인증 등의 기능을 손쉽게 추가할 수 있습니다. 모바일, 서버리스와 궁합이 잘 맞다. Cognito는 사용자 풀(User P..

AWS/AWS 공부 2024.03.17

[CDK] Stack 배포 시 Url 생성

아래 코드는 AWS CDK를 사용하여 AWS Lambda 함수의 엔드포인트 URL을 생성하고 CDK 출력 (CDK Output)을 통해 출력하는 예시입니다. 이 URL은 Lambda 함수를 호출할 때 사용될 수 있습니다. 주로 이러한 URL을 생성하는 이유는 다음과 같습니다: 1. 애플리케이션과의 통합: Lambda 함수를 웹 애플리케이션 또는 다른 시스템과 통합할 때 해당 함수에 대한 엔드포인트 URL이 필요합니다. 이 URL을 사용하여 애플리케이션에서 Lambda 함수를 호출하거나 트리거할 수 있습니다. 2. 외부에 노출: Lambda 함수가 웹 애플리케이션에서 직접 호출될 수 있도록 URL을 외부에 노출해야 할 때 사용됩니다. 3. 크로스 오리진 리소스 공유 (CORS) 설정: 위 코드에서는 Lam..

AWS/AWS 공부 2023.03.31

[CDK] DynamoDB 권한 추가

배포할 람다 함수에 DynamoDB 권한을 주는 policy 정책 생성 코드입니다. const dynamoDbPolicyStatement = new iam.PolicyStatement({ effect: iam.Effect.ALLOW, actions: [ 'dynamodb:putItem', 'dynamodb:scan', 'dynamodb:query', 'dynamodb:getItem', 'dynamodb:deleteItem', 'dynamodb:updateItem', 'dynamodb:batchWriteItem', ], resources: [ `${customProps.bookingsTableArn}`, ], }) LambdaFunction.addToRolePolicy(dynamoDbPolicyStatem..

AWS/AWS 공부 2023.03.31

[CDK] CDK Lambda 함수 배포

1. cdk build + cdk deploy 아래 cdk.App() 객체를 생성해줌으로써 cdk로 아래 람다 함수 Stack을 사용하여 람다 함수를 배포할 수 있습니다. import 'source-map-support/register' import * as cdk from 'aws-cdk-lib' import {CreateLambdaStack} from "../lib/lambdaFunction"; require('dotenv').config() const functionName = "TestLambdaFunction" const app = new cdk.App() new CreateLambdaStack(app, functionName, { account: process.env.ACCOUNT, regio..

AWS/AWS 공부 2023.03.29

[CDK] 개념 정리

1. CDK(Cloud Development Kit) CDK는 AWS 인프라 관리를 개발자가 사용하는 언어(ex. typescript, python, java, js 등)로 관리할 수 있게 도와주는 도구입니다. 개발자에게 친숙한 프로그래밍 언어를 사용하여 클라우드 리소스(EC2, Lambda, S3, SecretsManager 등)를 정의하고, 이를 기반으로 AWS CloudFormation 템플릿을 생성합니다. 이렇게 생성된 CloudFormation 템플릿은 클라우드 리소스를 프로비저닝하고 관리하는 데 사용됩니다. 1) IaC (Infrastructure as Code) CDK는 IaC를 도입할 수 있는 가장 쉬운 방법 중 하나입니다. IaC는 인프라를 코드로 정의하고 관리하는 개념을 나타냅니다. I..

AWS/AWS 공부 2023.03.29