As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
aws-cloudfront-apigateway-lambda
![](images/experimental.png)
Todas as classes estão em desenvolvimento ativo e estão sujeitas a alterações ou remoção não compatíveis com versões anteriores em qualquer versão futura. Estes não estão sujeitos àVersionamento semântico
Observações: Para garantir a funcionalidade adequada, os pacotes AWS Solutions Constructs e os pacotes CDK da AWS em seu projeto devem ser da mesma versão.
Linguagem | Pacote |
---|---|
![]() |
aws_solutions_constructs.aws_cloudfront_apigateway_lambda
|
![]() |
@aws-solutions-constructs/aws-cloudfront-apigateway-lambda
|
![]() |
software.amazon.awsconstructs.services.cloudfrontapigatewaylambda
|
Overview
Este AWS Solutions Construct implementa uma distribuição do Amazon CloudFront na frente de uma API REST suportada pelo Amazon API Gateway Lambda.
Aqui está uma definição de padrão implantável mínima no 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);
Parâmetros
-
escopo
Construct
-
id
string
Adereços de construção de padrão
Nome | Tipo | Descrição |
---|---|---|
ExistingAmbdaobj? |
lambda.Function
|
Instância existente do objeto Lambda Function, fornecendo tanto isso elambdaFunctionProps causará um erro. |
LambdaFunctionProps? |
lambda.FunctionProps
|
Propriedades opcionais fornecidas pelo usuário para substituir as propriedades padrão da função Lambda. Ignorado se umexistingLambdaObj é fornecido. |
ApigatewayProps? |
api.LambdaRestApiProps
|
Os adereços fornecidos pelo usuário opcionais para substituir os adereços padrão do API Gateway |
CloudFrontDistributionProps? |
cloudfront.DistributionProps
|
O usuário opcional forneceu adereços para substituir os adereços padrão para a distribuição do CloudFront. |
InserthttpSecurityHeaders? |
boolean
|
O usuário opcional forneceu adereços para ativar/desativar a injeção automática de cabeçalhos de segurança HTTP de práticas recomendadas em todas as respostas do CloudFront |
LoggroupProps? |
logs.LogGroupProps
|
Props fornecidos pelo usuário para substituir os adereços padrão para o grupo de logs do CloudWatch Logs. |
Propriedades de padrão
Nome | Tipo | Descrição |
---|---|---|
ApiGateway |
api.RestApi
|
Retorna uma instância da API REST Gateway criada pelo padrão. |
ApigatewayCloudWatchRole |
iam.Role
|
Retorna uma instância da função do IAM criada pelo padrão que permite o log de acesso da API REST do API Gateway para o CloudWatch. |
ApigatewayLogGroup |
logs.LogGroup
|
Retorna uma instância do grupo de logs criado pelo padrão para o qual os logs de acesso à API REST do API Gateway são enviados. |
CloudFrontLoggingBucket? |
s3.Bucket
|
Retorna uma instância do bucket de log criado pelo padrão para a distribuição da Web do CloudFront. |
CloudFrontWebDistribution |
cloudfront.CloudFrontWebDistribution
|
Retorna uma instância da distribuição web do CloudFront criada pelo padrão. |
EdgeLambdaFunctionVersion? |
lambda.Version
|
Retorna uma instância da versão da função de borda do Lambda criada pelo padrão. |
LambdaFunction |
lambda.Function
|
Retorna uma instância da função Lambda criada pelo padrão. |
Configurações padrão
A implementação imediata desse padrão sem substituições definirá os seguintes padrões:
Amazon CloudFront
-
Configurar registro de acesso para o CloudFront WebDistribution
-
Habilite a injeção automática de cabeçalhos de segurança HTTP de práticas recomendadas em todas as respostas do CloudFront WebDistribution
Amazon API Gateway
-
Implantar um ponto final de API regional
-
Habilitar o log do CloudWatch para o
-
Configurar a função IAM de acesso de menor privilégio para API Gateway
-
Defina o AuthorizationType padrão para todos os métodos de API como IAM
-
Ativar rastreamento do X-Ray
Função do AWS Lambda
-
Configuração da função do IAM de acesso de privilégio limitado para a função Lambda
-
Ativar a reutilização de conexões com a função Keep-Alive para NodeJS Lambda
-
Ativar rastreamento do X-Ray
-
Definição de variáveis de ambiente:
-
AWS_NODEJS_CONNECTION_REUSE_ENABLED
(para funções Node 10.x e superiores)
-
Architecture
![Diagram showing data flow between Serviços da AWS including AppSync, Lambda, and CloudSearch.](images/aws-cloudfront-apigateway-lambda.png)
GitHub
Para exibir o código desse padrão, crie/exiba problemas e solicitações pull e muito mais: | |
---|---|
![]() |
@aws -solutions-constructs/aws-cloudfront-apigateway-lambda |