Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
aws-lambda-s3
Todas las clases están en desarrollo activo y están sujetas a cambios o eliminación no compatibles con versiones anteriores en cualquier versión futura. Estos no están sujetos a laVersiones semánticas
Nota: Para garantizar una funcionalidad adecuada, los paquetes de AWS Solutions Constructs y los paquetes CDK de AWS del proyecto deben tener la misma versión.
| Idioma | Paquete |
|---|---|
|
aws_solutions_constructs.aws_lambda_s3
|
|
@aws-solutions-constructs/aws-lambda-s3
|
|
software.amazon.awsconstructs.services.lambdas3
|
Overview
Este constructo de soluciones de AWS implementa una función de AWS Lambda conectada a un bucket de Amazon S3.
Aquí hay una definición mínima de patrón implementable en TypeScript:
import { LambdaToS3 } from '@aws-solutions-constructs/aws-lambda-s3'; new LambdaToS3(this, 'LambdaToS3Pattern', { 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 LambdaToS3(scope: Construct, id: string, props: LambdaToS3Props);
Parámetros
-
scope
Construct -
id
string -
propsLambdaToS3Props
Patrón de construcción
| Nombre | Tipo | Descripción |
|---|---|---|
| ¿ExistenteLambdaobj? |
lambda.Function
|
Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error. |
| ¿LambdaFunctionProps? |
lambda.FunctionProps
|
Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda. Se pasa por alto si unexistingLambdaObjse encuentra a su disposición. |
| ¿ExistenteBuckeTobj? |
s3.IBucket
|
Instancia existente del objeto S3 Bucket. Si se proporciona esto, entonces también proporcionabucketPropses un error. |
| ¿BucketProps? |
s3.BucketProps
|
Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas del depósito. Se pasa por alto si unexistingBucketObjse encuentra a su disposición. |
| BucketPermisos? |
string[]
|
Permisos de depósito opcionales para conceder a la función Lambda. Pueden especificarse una o varias de las siguientes:Delete,Put,Read,ReadWrite,Write. |
| ¿Existe VPC? |
ec2.IVpc
|
Una VPC opcional existente en la que se debe implementar este patrón. Cuando se implementa en una VPC, la función Lambda utilizará ENI en la VPC para acceder a los recursos de red y se creará un extremo de interfaz en la VPC para Amazon SQS. Si se proporciona una VPC existente, eldeployVpcno se puedetrue. Esto utilizaec2.IVpcpara permitir que los clientes suministren VPC que existen fuera de la pila mediante el comandoec2.Vpc.fromLookup()Método de. |
| ¿Implementar VPC? |
boolean
|
Si se crea una nueva VPC basada envpcPropsen el que desplegar este patrón. Configuración de esto entrueimplementará la VPC mínima y más privada para ejecutar el patrón:
true, luegoexistingVpcNo se puede especificar . El valor predeterminado es false. |
| ¿VPCProps? |
ec2.VpcProps
|
Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la nueva VPC.enableDnsHostnames,enableDnsSupport,natGatewaysysubnetConfigurationestán establecidos por el patrón, por lo que cualquier valor para esas propiedades suministradas aquí será anulado. SideployVpcno estrueEsta propiedad se pasará por alto. |
| BucketEnvironmentVariableName? |
string
|
Nombre opcional para el conjunto de variables de entorno de cucharón S3 para la función Lambda. |
Propiedades de patrón
| Nombre | Tipo | Descripción |
|---|---|---|
| LambdaFunction |
lambda.Function
|
Devuelve una instancia de la función Lambda creada por el patrón. |
| ¿S3 Bucket? |
s3.Bucket
|
Devuelve una instancia del bucket S3 creado por el patrón. |
| ¿S3LoggingBucket? |
s3.Bucket
|
Devuelve una instancia del depósito de registro creado por el patrón para el bucket S3. |
| ¿VPC? |
ec2.IVpc
|
Devuelve una instancia de la VPC utilizada por el patrón (si la hay). Esta puede ser una VPC creada por el patrón o la VPC suministrada al constructor del patrón. |
Configuración predeterminada
La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:
Función de AWS Lambda
-
Configurar el rol de IAM de acceso limitado con privilegios para la función Lambda.
-
Habilite la reutilización de conexiones con la función Keep-Alive para NodeJS Lambda.
-
Habilitar el X-Ray streo
-
Configuración de las variables de entorno:
-
S3_BUCKET_NAME(predeterminado) -
AWS_NODEJS_CONNECTION_REUSE_ENABLED(para Node 10.x y funciones superiores)
-
Bucket de Amazon S3
-
Configurar el registro de acceso para S3 Bucket.
-
Habilite el cifrado del lado del servidor para S3 Bucket mediante la clave KMS administrada por AWS.
-
Active el control de versiones para S3 Bucket.
-
No permita el acceso público para S3 Bucket.
-
Mantenga el Bucket S3 cuando elimine la pila CloudFormation.
-
Aplicación del cifrado de los datos en tránsito.
-
Aplica una regla de ciclo de vida para mover versiones de objetos no actuales al almacenamiento de Glacier después de 90 días.
Architecture
GitHub
| Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más: | |
|---|---|
|
@aws -soluciones-constructs/aws-lambda-s3 |