아래 코드는 AWS CDK를 사용하여 AWS Lambda 함수의 엔드포인트 URL을 생성하고 CDK 출력 (CDK Output)을 통해 출력하는 예시입니다. 이 URL은 Lambda 함수를 호출할 때 사용될 수 있습니다.
주로 이러한 URL을 생성하는 이유는 다음과 같습니다:
1. 애플리케이션과의 통합: Lambda 함수를 웹 애플리케이션 또는 다른 시스템과 통합할 때 해당 함수에 대한 엔드포인트 URL이 필요합니다. 이 URL을 사용하여 애플리케이션에서 Lambda 함수를 호출하거나 트리거할 수 있습니다.
2. 외부에 노출: Lambda 함수가 웹 애플리케이션에서 직접 호출될 수 있도록 URL을 외부에 노출해야 할 때 사용됩니다.
3. 크로스 오리진 리소스 공유 (CORS) 설정: 위 코드에서는 Lambda 함수의 엔드포인트 URL에 대해 CORS 설정을 추가하고, 허용된 원본 및 헤더를 지정합니다. 이를 통해 웹 브라우저에서 Lambda 함수에 대한 요청을 보낼 때 발생하는 교차 출처 요청 오류를 방지할 수 있습니다.
4. 인증 타입 지정: 위 코드에서는 함수 URL에 대한 인증 타입을 지정합니다. 이 예시에서는 인증이 필요하지 않음을 나타내는 FunctionUrlAuthType.NONE을 사용합니다. 이는 Lambda 함수가 공개적으로 액세스 가능한 경우에 사용될 수 있습니다.
이렇게 생성된 URL은 AWS Lambda 함수에 대한 액세스를 허용하고, 필요한 경우에는 애플리케이션에서 이 URL을 사용하여 함수를 호출할 수 있습니다.
const url = LambdaFunction.addFunctionUrl({
invokeMode: InvokeMode.BUFFERED,
cors: {
allowedOrigins: ['*'],
allowedHeaders: ['*'],
},
authType: FunctionUrlAuthType.NONE
})
new cdk.CfnOutput(this, 'LambdaFunction', {
value: url.url,
})
'AWS > AWS 공부' 카테고리의 다른 글
[AWS] VPC(Virtual Private Cloud), 서브넷(Subnet) (0) | 2023.06.17 |
---|---|
[AWS] 리전과 가용영역 (0) | 2023.06.17 |
[CDK] DynamoDB 권한 추가 (0) | 2023.03.31 |
[CDK] CDK Lambda 함수 배포 (0) | 2023.03.29 |
[CDK] 개념 정리 (0) | 2023.03.29 |