기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
aws-클라우드 프론트 - 아피 가티 웨이 - 람다
![](images/experimental.png)
모든 클래스는 활발히 개발 중이며 향후 버전에서 이전 버전과 호환되지 않는 변경 또는 제거 될 수 있습니다. 이들은 적용되지 않습니다의미 체계 버전
참고: 적절한 기능을 보장하려면 프로젝트의 AWS 솔루션 구성 패키지와 AWS CDK 패키지가 동일한 버전이어야 합니다.
언어 | 패키지 |
---|---|
![]() |
aws_solutions_constructs.aws_cloudfront_apigateway_lambda
|
![]() |
@aws-solutions-constructs/aws-cloudfront-apigateway-lambda
|
![]() |
software.amazon.awsconstructs.services.cloudfrontapigatewaylambda
|
Overview
이 AWS 솔루션 구성은 Amazon API 게이트웨이 람다 지원 REST API 앞에 Amazon CloudFront 배포를 구현합니다.
다음은 TypeScript 터의 최소 배포 가능한 패턴 정의입니다.
import { CloudFrontToApiGatewayToLambda } from '@aws-solutions-constructs/aws-cloudfront-apigateway-lambda'; new CloudFrontToApiGatewayToLambda(this, 'test-cloudfront-apigateway-lambda', { lambdaFunctionProps: { runtime: lambda.Runtime.NODEJS_14_X, // This assumes a handler function in lib/lambda/index.js code: lambda.Code.fromAsset(`${__dirname}/lambda`), handler: 'index.handler' } });
Initializer
new CloudFrontToApiGatewayToLambda(scope: Construct, id: string, props: CloudFrontToApiGatewayToLambdaProps);
파라미터
-
scope
Construct
-
id
string
패턴 구성
이름 | 유형 | 설명 |
---|---|---|
람다오브 기존인가요? |
lambda.Function
|
Lambda 함수 객체의 기존 인스턴스, 이 및lambdaFunctionProps 오류가 발생합니다. |
람다기능소품? |
lambda.FunctionProps
|
Lambda 함수의 기본 속성을 재정의하는 선택적 사용자 제공 속성입니다. 의 경우에는 무시됩니다.existingLambdaObj 제공될 예정입니다. |
어피게이트웨이 소품? |
api.LambdaRestApiProps
|
API Gateway 기본 소품을 재정의하는 선택적 사용자 제공 소품 |
클라우드프런트배포소품? |
cloudfront.DistributionProps
|
선택적 사용자가 CloudFront 배포에 대한 기본 소품을 재정의하는 소품을 제공했습니다. |
보안 헤더를 삽입하시겠습니까? |
boolean
|
CloudFront 모든 응답에서 모범 사례 HTTP 보안 헤더의 자동 삽입을 켜거나 끌 수 있는 선택적 사용자 제공 소품 |
로그그룹Props? |
logs.LogGroupProps
|
CloudWatch Logs 로그 그룹의 기본 소품을 무시하기 위한 선택적 사용자 제공 소품입니다. |
패턴 속성
이름 | 유형 | 설명 |
---|---|---|
ApiGateway |
api.RestApi
|
패턴에 의해 생성 된 API Gateway REST API의 인스턴스를 돌려줍니다. |
아피게이트웨이클라우드워치역할 |
iam.Role
|
API Gateway REST API에서 CloudWatch 로의 액세스 로깅을 활성화하는 패턴으로 생성된 IAM 역할의 인스턴스를 반환합니다. |
어피게이트웨이로그 그룹 |
logs.LogGroup
|
API Gateway REST API 액세스 로그가 전송되는 패턴으로 생성된 로그 그룹의 인스턴스를 반환합니다. |
클라우드 프론트로깅 버킷? |
s3.Bucket
|
CloudFront 웹 배포의 패턴으로 생성된 로깅 버킷의 인스턴스를 반환합니다. |
클라우드프런트웹배포 |
cloudfront.CloudFrontWebDistribution
|
패턴에 의해 생성된 CloudFront 웹 배포의 인스턴스를 반환합니다. |
엣지람다기능 버전? |
lambda.Version
|
패턴에 의해 생성 된 Lambda edge 함수 버전의 인스턴스를 돌려줍니다. |
람다함수 |
lambda.Function
|
패턴에 의해 생성 된 Lambda 함수의 인스턴스를 돌려줍니다. |
기본 설정
재정의없이이 패턴을 즉시 구현하면 다음과 같은 기본값이 설정됩니다.
Amazon CloudFront
-
CloudFront 웹 배포에 대한 액세스 로깅 구성
-
CloudFront 웹 배포의 모든 응답에서 모범 사례 HTTP 보안 헤더의 자동 삽입 사용
Amazon API Gateway
-
지역 API 끝점 배포
-
API Gateway 대한 CloudWatch 로깅 활성화
-
API Gateway 대한 최소 권한 액세스 IAM 역할 구성
-
모든 API 메소드의 기본 권한 부여 유형을 IAM으로 설정
-
X-Ray 추적 설정
AWS Lambda 함수
-
Lambda 용 제한된 권한 액세스 IAM 역할을 구성하려면,
-
NodeJS Lambda 함수에 대한 연결 유지로 연결 재사용 활성화
-
X-Ray 추적 설정
-
환경 변수를 설정합니다.
-
AWS_NODEJS_CONNECTION_REUSE_ENABLED
(노드 10.x 이상 함수의 경우)
-
Architecture
![Diagram showing data flow between AWS 서비스 including AppSync, Lambda, and CloudSearch.](images/aws-cloudfront-apigateway-lambda.png)
GitHub
이 패턴의 코드를 보려면 문제 및 끌어오기 요청을 작성/조회하는 등의 작업을 수행합니다. | |
---|---|
![]() |
@aws -솔루션 - 구성/aws - 클라우드 프론트 어피 그웨이 - 람다 |