

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.

# Referencia de la API
<a name="api-reference"></a>

 AWS Solutions Constructs (Constructs) es una extensión de código abierto del AWS Cloud Development Kit (AWS CDK) que proporciona patrones multiservicio y bien diseñados para definir rápidamente soluciones en código con el fin de crear una infraestructura predecible y repetible. El objetivo de Constructs es acelerar la experiencia de los desarrolladores para crear soluciones de cualquier tamaño utilizando definiciones basadas en patrones para su arquitectura. 

 Los patrones definidos en los componentes fijos son abstracciones multiservicio de alto nivel de construcciones CDK de AWS que tienen configuraciones predeterminadas basadas en prácticas recomendadas bien diseñadas. La biblioteca está organizada en módulos lógicos utilizando técnicas orientadas a objetos para crear cada modelo de patrón arquitectónico. 

 El CDK está disponible en los siguientes lenguajes: 
+  JavaScript, TypeScript (Node.js ≥ 10.3.0) 
+  Python (Python ≥ 3.6) 
+ Java (Java ≥ 1.8)

## Modules
<a name="modules"></a>

 AWS Solutions Constructs se organiza en varios módulos. Se llaman así: 
+  **aws-xxx**: Paquete de patrones bien diseñado para los servicios indicados. Este paquete contendrá construcciones que contienen varios módulos de servicio AWS CDK para configurar el patrón dado. 
+  **xxx**: Paquetes que no empiezan»**Aws-**«son módulos centrales de construcción que se utilizan para configurar los valores predeterminados de las mejores prácticas para los servicios utilizados dentro de la biblioteca de patrones. 

## Contenido Module
<a name="module-contents"></a>

 Los módulos contienen los siguientes tipos: 
+  **Patrones**- Todas las construcciones multiservicios de nivel superior en esta biblioteca. 
+  **Otros Tipos**- Todas las clases, interfaces, estructuras y enumeraciones no constructivas que existen para soportar los patrones. 

 Los patrones toman un conjunto de propiedades (de entrada) en su constructor; el conjunto de propiedades (y cuáles son requeridas) se puede ver en la página de documentación de un patrón. 

 La página de documentación del patrón también enumera los métodos disponibles para llamar y las propiedades que se pueden utilizar para recuperar información sobre el patrón después de que se haya creado una instancia. 

# aws-apigateway-dynamodb
<a name="aws-apigateway-dynamodb"></a>

![\[Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1apigateway\$1dynamodb  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-apigateway-dynamodb  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.apigatewaydynamodb  | 

## Overview
<a name="overview"></a>

 Este constructo de soluciones de AWS implementa una API REST de Amazon API Gateway conectada a una tabla de Amazon DynamoDB. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { ApiGatewayToDynamoDBProps, ApiGatewayToDynamoDB } from "@aws-solutions-constructs/aws-apigateway-dynamodb";

new ApiGatewayToDynamoDB(this, 'test-api-gateway-dynamodb-default', {});
```

## Initializer
<a name="initializer"></a>

```
new ApiGatewayToDynamoDB(scope: Construct, id: string, props: ApiGatewayToDynamoDBProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`ApiGatewayToDynamoDBProps`](#pattern-construct-props) 

## Patrón de construcción
<a name="pattern-construct-props"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  DynamoTableProps  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.TableProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.TableProps.html)  |  Los accesorios proporcionados por el usuario opcionales para anular los accesorios predeterminados para la tabla de DynamoDB  | 
|  ¿ApigatewayProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApiProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApiProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para API Gateway.  | 
|  AllowCreateOperation  |  boolean  |  Si desea implementar el método de puerta de API Gateway para la operación Crear en la tabla DynamoDB.  | 
|  CreateRequestTemplate  |  string  |  Plantilla de solicitud de API Gateway para el método Create, necesaria si AllowCreateOperation se establece  | 
|  AllowReadOperation  |  boolean  |  Si se debe implementar el método API Gateway para la operación de lectura en la tabla DynamoDB.  | 
|  AllowUpdateOperation  |  boolean  |  Si desea implementar el método de API Gateway para la operación de actualización en la tabla DynamoDB.  | 
|  UpdateRequestTemplate  |  string  |  Plantilla de solicitud de API Gateway para el método Update, necesaria si AllowUpdateOperation se establece en true  | 
|  AllowDeleteOperation  |  boolean  |  Si desea implementar el método de puerta de API Gateway para la operación de eliminación en la tabla DynamoDB  | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  Los accesorios opcionales proporcionados por el usuario para anular los accesorios predeterminados para el grupo de registros de CloudWatch Logs.  | 

## Propiedades de patrón
<a name="pattern-properties"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ApiGateway  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html)  |  Devuelve una instancia de la API REST de API Gateway creada por el patrón.  | 
|  ApigatewayCloudWatchRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia de la función de IAM creada por el patrón que permite el registro de acceso desde API Gateway REST API a CloudWatch.  | 
|  ApigatewayLogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del grupo de registros creado por el patrón al que se envían los registros de acceso de API REST de API de API Gateway de API.  | 
|  ApigateWayRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia de la función de IAM creada por el patrón para la API Gateway.  | 
|  DynamoTable  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.Table.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.Table.html)  |  Devuelve una instancia de la tabla DynamoDB creada por el patrón.  | 

## Configuración predeterminada
<a name="default-settings"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon API Gateway
<a name="amazon-api-gateway"></a>
+  Implementación de un extremo de API optimizado para bordes 
+  Habilitar el registro de CloudWatch para API Gateway 
+  Configurar el rol de IAM de acceso mínimo con privilegios para API Gateway 
+  Establezca el AuthorizationType predeterminado para todos los métodos API en IAM 
+  Habilitar el X-Ray streo

### Tabla de Amazon DynamoDB
<a name="amazon-dynamodb-table"></a>
+  Establezca el modo de facturación para la tabla de DynamoDB en Bajo demanda (pago por solicitud) 
+  Habilitar el cifrado del lado del servidor para DynamoDB Table mediante la clave KMS administrada por AWS 
+  Crea una clave de partición llamada 'id' para la tabla de DynamoDB 
+  Conservar la tabla al eliminar la pila CloudFormation 
+  Activación de copias de seguridad continuas y recuperación a un momento dado 

## Architecture
<a name="architecture"></a>

![\[Diagram showing data flow from code to database, with security and cloud search components.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-apigateway-dynamodb.png)


## GitHub
<a name="github"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-apigateway-dynamodb](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-apigateway-dynamodb)  | 

# aws-apigateway-iot
<a name="aws-apigateway-iot"></a>

![\[Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1apigateway\$1iot  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-apigateway-iot  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.apigatewayiot  | 

## Overview
<a name="overview-32"></a>

 Este constructo de soluciones de AWS implementa una API REST de Amazon API Gateway conectada al patrón AWS IoT. 

 Esta construcción crea un proxy HTTPS escalable entre API Gateway y AWS IoT. Esto resulta útil cuando se desea permitir que los dispositivos heredados que no admiten el protocolo MQTT o MQTT/WebSocket interactúen con la plataforma AWS IoT. 

 Esta implementación permite publicar mensajes de sólo escritura en determinados temas de MQTT, y también admite actualizaciones de instantáneas de dispositivos HTTPS para las cosas permitidas en el registro de dispositivos. No implica funciones de Lambda para enviar mensajes proxy, sino que se basa en la integración directa de API Gateway a AWS IoT, que admite tanto mensajes JSON como mensajes binarios. 

 Aquí hay una definición mínima de patrón implementable en TypeScript:

```
import { ApiGatewayToIot } from '@aws-solutions-constructs/aws-apigateway-iot';

new ApiGatewayToIot(this, 'ApiGatewayToIotPattern', {
    iotEndpoint: 'a1234567890123-ats'
});
```

## Initializer
<a name="initializer-32"></a>

```
new ApiGatewayToIot(scope: Construct, id: string, props: ApiGatewayToIotProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`ApiGatewayToIotProps`](#pattern-construct-props-32) 

## Patrón de construcción
<a name="pattern-construct-props-32"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  IOtendPoint  |  string  |  El subdominio de punto final de AWS IoT con el que integrar API Gateway (por ejemplo, a1234567890123-ats).  | 
|  ApigateWayCreateApiKey?  |  boolean  |  Si toma el valortrue, se crea una clave API y se asocia a un UsagePlan. El usuario debe especificar el encabezado `x-api-key` mientras accede a RestApi. Valor predeterminado establecido enfalse.  | 
|  ApigatewayExecutionRole?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  El rol de IAM utilizado por API Gateway para acceder a AWS IoT. Si no se especifica, se crea un rol predeterminado con acceso comodín ('\$1') a todos los temas y elementos.  | 
|  ¿ApigateWayProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApiProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApiProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la API REST de API Gateway. | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  Compatibilidad con accesorios opcionales proporcionados por el usuario para anular los accesorios predeterminados para el grupo de registros de CloudWatch Logs.  | 

## Propiedades de patrón
<a name="pattern-properties-32"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ApiGateway  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html)  |  Devuelve una instancia de la API REST de API Gateway creada por el patrón.  | 
|  ApigatewayCloudWatchRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia de la función de IAM creada por el patrón que permite el registro de acceso desde API Gateway REST API a CloudWatch.  | 
|  ApigatewayLogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del grupo de registros creado por el patrón al que se envían los registros de acceso de API REST de API de API Gateway de API.  | 
|  ApigateWayRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia de la función de IAM creada por el patrón para la API Gateway.  | 

## Configuración predeterminada
<a name="default-settings-32"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon API Gateway
<a name="amazon-api-gateway-32"></a>
+  Implementación de un extremo de API optimizado para bordes 
+  Crea recursos de API con`POST`Método para publicar mensajes en temas de IoT Temas 
+  Crea recursos de API con`POST`Método para publicar mensajes en`ThingShadow`y`NamedShadows` 
+  Permita que el registro de CloudWatch para 
+  Configurar el rol de IAM para API Gateway con acceso a todos los temas y cosas 
+  Establezca el AuthorizationType predeterminado para todos los métodos API en IAM 
+  Permita X-Ray Rastreo 
+  Crea un UsagePlan y se asocia a`prod`stage 

 A continuación se muestra una descripción de los diferentes recursos y métodos expuestos por la API Gateway después de implementar el constructo. Consulte la[Ejemplos](#examples-32)para obtener más información sobre cómo probar fácilmente estos extremos usando`curl`. 


|  **Método**  |  **Recurso**  |  **Parámetros de consulta**  |  **Codigos devueltos**  |  **Descripción**  | 
| --- | --- | --- | --- | --- | 
|  POST  |  /message/<topics>  |  qos  |  200/403/500  |  Al llamar a este punto final, debe pasar los temas en los que desea publicar (por ejemplo,/message/device/foo`).  | 
|  POST  |  /shadow/<thingName>  |  Ninguno  |  200/403/500  |  Esta ruta permite actualizar el documento sombra de una cosa, dado suthingNamecon el tipo de sombra sin nombre (clásico). El cuerpo deberá cumplir la estutura normalizada de sombras que comprende unstatenodo y asociadodesiredyreported. Consulte la[Actualización de la sombra del dispositivo](#updating-device-shadows-32)para ver un ejemplo.  | 
|  POST  |  /shadow/<thingName>/<shadowName>  |  Ninguno  |  200/403/500  |  Esta ruta permite actualizar el documento de sombra nombrado de una cosa, dado suthingNamey lashadowNameutilizando el tipo de sombra con nombre asignado. El cuerpo deberá cumplir la estutura normalizada de sombras que comprende unstatenodo y asociadodesiredyreported. Consulte la[Actualización de las sombras guardadas](#updating-named-shadows-32)para ver un ejemplo.  | 

## Architecture
<a name="w23aab9c23c21"></a>

![\[IoT architecture diagram showing device, API Gateway, IoT Core, and related components.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-apigateway-iot.png)


## Examples
<a name="examples-32"></a>

Los siguientes ejemplos solo funcionan con`API_KEY`, ya que la autorización de IAM requiere que también se especifique un token SIGv4, asegúrese de que la propiedad`apiGatewayCreateApiKey`de los accesorios de construcción se establece en`true`mientras despliega la pila, de lo contrario, los siguientes ejemplos no funcionarán.

### Publicación de un mensaje
<a name="publishing-a-message-32"></a>

Puede usar`curl`para publicar un mensaje en diferentes temas de MQTT utilizando la API HTTPS. El siguiente ejemplo publicará un mensaje en el`device/foo`Tema.

```
curl -XPOST https://<stage-id>.execute-api.<region>.amazonaws.com/prod/message/device/foo -H "x-api-key: <api-key>" -H "Content-Type: application/json" -d '{"Hello": "World"}'
```

Nota: Reemplace la`stage-id`,`region`, y`api-key`con los valores de implementación.

Puede encadenar nombres de temas en la URL y la API acepta hasta 7 subtemas en los que puede publicar. Por ejemplo, en el siguiente ejemplo publica un mensaje en el tema.`device/foo/bar/abc/xyz`.

```
curl -XPOST https://<stage-id>.execute-api.<region>.amazonaws.com/prod/message/device/foo/bar/abc/xyz -H "x-api-key: <api-key>" -H "Content-Type: application/json" -d '{"Hello": "World"}'
```

### Actualización de la sombra del dispositivo
<a name="updating-device-shadows-32"></a>

Para actualizar el documento de sombra asociado a una cosa determinada, puede emitir una solicitud de estado de sombra usando un nombre de cosa. Consulte el siguiente ejemplo de cómo actualizar una sombra de objeto.

```
curl -XPOST https://<stage-id>.execute-api.<region>.amazonaws.com/prod/shadow/device1 -H "x-api-key: <api-key>" -H "Content-Type: application/json" -d '{"state": {"desired": { "Hello": "World" }}}'
```

### Actualización de las sombras guardadas
<a name="updating-named-shadows-32"></a>

Para actualizar el documento de sombra asociado a la sombra con nombre de una cosa determinada, puede emitir una solicitud de estado de sombra utilizando un nombre de cosa y un nombre de sombra. Vea el siguiente ejemplo sobre cómo actualizar una sombra con nombre.

```
curl -XPOST https://<stage-id>.execute-api.<region>.amazonaws.com/prod/shadow/device1/shadow1 -H "x-api-key: <api-key>" -H "Content-Type: application/json" -d '{"state": {"desired": { "Hello": "World" }}}'
```

### Envío de cargas binarias
<a name="sending-binary-payloads-32"></a>

Es posible enviar una carga útil binaria a la API proxy, hasta el servicio AWS IoT. En el siguiente ejemplo, enviamos el contenido de la`README.md`asociado con este módulo (tratado como datos binarios) a`device/foo`con el tema de`application/octet-stream`Tipo de contenido.

```
curl -XPOST https://<stage-id>.execute-api.<region>.amazonaws.com/prod/message/device/foo/bar/baz/qux -H "x-api-key: <api-key>" -H "Content-Type: application/octet-stream" --data-binary @README.md
```

 Nota: Ejecute este comando mientras esté en el directorio de este proyecto. A continuación, puede probar el envío de otro tipo de archivos binarios desde su sistema de archivos. 

## GitHub
<a name="github-32"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-apigateway-iot](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-apigateway-iot)  | 

# aws-apigateway-kinesisstreams
<a name="aws-apigateway-kinesisstreams"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versionado semántico](https://semver.org/)El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1apigateway\$1kinesisstreams  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-apigateway-kinesisstreams  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.apigatewaykinesisstreams  | 

## Overview
<a name="overview-29"></a>

 Este patrón implementa una API REST de Amazon API Gateway conectada a un flujo de datos de Amazon Kinesis. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { ApiGatewayToKinesisStreams, ApiGatewayToKinesisStreamsProps } from '@aws-solutions-constructs/aws-apigateway-kinesisstreams';

new ApiGatewayToKinesisStreams(this, 'test-apigw-kinesis', {});
```

## Initializer
<a name="initializer-29"></a>

```
new ApiGatewayToKinesisStreams(scope: Construct, id: string, props: ApiGatewayToKinesisStreamsProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`ApiGatewayToKinesisStreamsProps`](#pattern-construct-props-29) 

## Patrón de construcción
<a name="pattern-construct-props-29"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ApigateWayProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApiProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApiProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la API REST de API Gateway.  | 
|  PutRecordRequestTemplate?  |  string  |  Plantilla de solicitud de API Gateway para la acción PutRecord. Si no se proporciona, se usará uno predeterminado.  | 
|  PutRecordRequestModel?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.ModelOptions.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.ModelOptions.html)  |  Modelo de solicitud de API Gateway para la acción PutRecord. Si no se proporciona, se creará uno predeterminado.  | 
|  PutRecordsRequestTemplate?  |  string  |  Plantilla de solicitud de API Gateway para la acción PutRecords Si no se proporciona, se usará uno predeterminado.  | 
|  PutRecordRequestModel?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.ModelOptions.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.ModelOptions.html)  |  Modelo de solicitud de API Gateway para la acción PutRecords. Si no se proporciona, se creará uno predeterminado.  | 
|  ¿ExistenteStreamObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html)  |  Instancia existente de Kinesis Stream, proporcionando tanto esto comokinesisStreamPropsprovocará un error.  | 
|  ¿KinesisStreamProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.StreamProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.StreamProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la transmisión de Kinesis.  | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  Aplicaciones opcionales proporcionadas por el usuario para anular los accesorios predeterminados para el grupo de registros de CloudWatch Logs.  | 

## Propiedades de patrón
<a name="pattern-properties-29"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ApiGateway  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html)  |  Devuelve una instancia de la API REST de API Gateway creada por el patrón.  | 
|  ApigateWayRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia de la función de IAM creada por el patrón para la API de REST de puerta de enlace de API.  | 
|  ApigatewayCloudWatchRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia de la función de IAM creada por el patrón que permite el registro de acceso desde API Gateway REST API a CloudWatch.  | 
|  ApigatewayLogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del grupo de registros creado por el patrón al que se envían los registros de acceso de API REST de API de API Gateway de API.  | 
|  KinesisStream  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html)  |  Devuelve una instancia de la secuencia Kinesis creada por el patrón.  | 

## Ejemplo de uso de las API
<a name="sample-api-usage"></a>


|  **Método**  |  **Ruta de solicitud**  |  **Cuerpo de la solicitud**  |  **Acción de cola**  |  **Descripción**  | 
| --- | --- | --- | --- | --- | 
|  POST  |  /record  |  <pre>{ <br />  "data": "Hello World!", <br />  "partitionKey": "pk001"<br />}</pre>  |  kinesis:PutRecord  |  Escribe un solo registro de datos en el flujo.  | 
|  POST  |  /records  |  <pre>{ <br />    "records": [<br />      { "data": "abc", <br />        "partitionKey": "pk001" <br />      }, <br />      { "data": "xyz", <br />        "partitionKey": "pk001" <br />      }<br />     ] <br />}</pre>  |  kinesis:PutRecords  |  Escribe varios registros de datos en la secuencia en una sola llamada.  | 

## Configuración predeterminada
<a name="default-settings-29"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon API Gateway
<a name="amazon-api-gateway-29"></a>
+  Implemente un extremo de la API optimizada para bordes. 
+  Active el registro de CloudWatch para API Gateway. 
+  Configurar el rol de IAM de acceso mínimo con privilegios para API Gateway. 
+  Establezca el AuthorizationType predeterminado para todos los métodos API en IAM. 
+  Active el rastreo de X-Ray. 
+  Validar el cuerpo de la solicitud antes de pasar los datos a Kinesis. 

### Amazon Kinesis Data Stream
<a name="amazon-sqs-queue"></a>
+  Configure el rol de IAM de acceso mínimo con privilegios para la transmisión de Kinesis. 
+  Habilite el cifrado del lado del servidor para Kinesis Stream mediante la clave KMS administrada de AWS. 

## Architecture
<a name="architecture-29"></a>

![\[Diagram showing data flow between cloud search, code analysis, and network components.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-apigateway-kinesisstreams.png)


## GitHub
<a name="github-29"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-apigateway-kinesisstreams](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-apigateway-kinesisstreams)  | 

# aws-apigateway-lambda
<a name="aws-apigateway-lambda"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1apigateway\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-apigateway-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.apigatewaylambda  | 

## Overview
<a name="overview-1"></a>

 Este constructo de soluciones de AWS implementa una API REST de Amazon API Gateway conectada a una función de AWS Lambda.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { ApiGatewayToLambda } from '@aws-solutions-constructs/aws-apigateway-lambda';

new ApiGatewayToLambda(this, 'ApiGatewayToLambdaPattern', {
    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
<a name="initializer-1"></a>

```
new ApiGatewayToLambda(scope: Construct, id: string, props: ApiGatewayToLambdaProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`ApiGatewayToLambdaProps`](#pattern-construct-props-1) 

## Patrón de construcción
<a name="pattern-construct-props-1"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda. Se pasa por alto si unexistingLambdaObjse encuentra.  | 
|  ¿ApigateWayProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.LambdaRestApi.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.LambdaRestApi.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la API.  | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  Los accesorios opcionales proporcionados por el usuario para anular los accesorios predeterminados para el grupo de registros de CloudWatch Logs.  | 

## Propiedades de patrón
<a name="pattern-properties-1"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ApigatewayCloudWatchRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia de la función de IAM creada por el patrón que permite el registro de acceso desde API Gateway REST API a CloudWatch.  | 
|  ApigatewayLogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del grupo de registros creado por el patrón al que se envían los registros de acceso de API REST de API de API Gateway de API.  | 
|  LambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 
|  ApiGateway  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.LambdaRestApi.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.LambdaRestApi.html)  |  Devuelve una instancia de la API REST de API Gateway creada por el patrón.  | 

## Configuración predeterminada
<a name="default-settings-1"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon API Gateway
<a name="amazon-api-gateway-1"></a>
+  Implementación de un extremo de API optimizado para bordes 
+  Habilitar el registro de CloudWatch para API Gateway 
+  Configurar el rol de IAM de acceso mínimo con privilegios para API Gateway 
+  Establezca el AuthorizationType predeterminado para todos los métodos API en IAM 
+  Habilitación de X-Ray streo
+  Configuración de las variables de entorno:
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

### Función de AWS Lambda
<a name="aws-lambda-function"></a>
+  Configuración de la función de IAM de acceso limitado a privilegios para la función Lambda 
+  Habilitar conexiones de reutilización con la función Keep-Alive para NodeJS Lambda 
+  Habilitación de X-Ray streo

## Architecture
<a name="architecture-1"></a>

![\[Diagram showing interaction between Amazon API Gateway, AWS Lambda, and Amazon CloudWatch with roles.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-apigateway-lambda.png)


## GitHub
<a name="github-1"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-apigateway-lambda](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-apigateway-lambda)  | 

# aws-apigateway-sagemakerendpoint
<a name="aws-apigateway-sagemakerendpoint"></a>

![\[Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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. Éstos no están sujetos a la[Versiones semánticas](https://semver.org/)El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1apigateway\$1sagemakerendpoint  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-apigateway-sagemakerendpoint  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.apigatewaysagemakerendpoint  | 

## Overview
<a name="overview-33"></a>

 Este constructo de soluciones de AWS implementa una API REST de Amazon API Gateway conectada a un extremo de Amazon SageMaker.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { ApiGatewayToSageMakerEndpoint, ApiGatewayToSageMakerEndpointProps } from '@aws-solutions-constructs/aws-apigateway-sagemakerendpoint';

// Below is an example VTL (Velocity Template Language) mapping template for mapping the Api GET request to the Sagemaker POST request
const requestTemplate =
`{
    "instances": [
#set( $user_id = $input.params("user_id") )
#set( $items = $input.params("items") )
#foreach( $item in $items.split(",") )
    {"in0": [$user_id], "in1": [$item]}#if( $foreach.hasNext ),#end
    $esc.newline
#end
    ]
}`;

// Replace 'my-endpoint' with your Sagemaker Inference Endpoint
new ApiGatewayToSageMakerEndpoint(this, 'test-apigw-sagemakerendpoint', {
    endpointName: 'my-endpoint',
    resourcePath: '{user_id}',
    requestMappingTemplate: requestTemplate
});
```

## Initializer
<a name="initializer-33"></a>

```
new ApiGatewayToSageMakerEndpoint(scope: Construct, id: string, props: ApiGatewayToSageMakerEndpointProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`ApiGatewayToSageMakerEndpointProps`](#pattern-construct-props-33) 

## Patrón de construcción
<a name="pattern-construct-props-33"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ApigateWayProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApiProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApiProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la API REST de API Gateway.  | 
|  ApigatewayExecutionRole?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Función de IAM utilizada por API Gateway para invocar el punto de enlace de SageMaker. Si no se especifica, se crea un rol predeterminado con acceso aendpointName.  | 
|  EndpointName  |  string  |  Nombre del extremo de inferencia de SageMaker desplegado.  | 
|  ResourceName  |  string  |  Nombre de recurso opcional donde estará disponible el método GET.  | 
|  resourcePath  |  string  |  Ruta de acceso del recurso para el método GET. La variable definida aquí puede ser referenciada enrequestMappingTemplate.  | 
|  RequestMappingTemplate  |  string  |  Plantilla de asignación para convertir las solicitudes GET recibidas en la API REST a solicitudes POST esperadas por el extremo de SageMaker.  | 
|  ResponseMappingTemplate  |  string  |  Plantilla de asignación opcional para convertir las respuestas recibidas desde el extremo de SageMaker.  | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  Elementos opcionales proporcionados por el usuario para anular los accesorios predeterminados para el grupo de registros de CloudWatch Logs.  | 

## Propiedades de patrón
<a name="pattern-properties-33"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ApiGateway  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.LambdaRestApi.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.LambdaRestApi.html)  |  Devuelve una instancia de la API REST de API Gateway creada por el patrón.  | 
|  ApigateWayRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia de la función de IAM creada por el patrón para la API de REST de puerta de enlace de API.  | 
|  ApigatewayCloudWatchRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia de la función de IAM creada por el patrón que permite el registro de acceso desde API Gateway REST API a CloudWatch.  | 
|  ApigatewayLogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del grupo de registros creado por el patrón al que se envían los registros de acceso de API REST de API de API Gateway de API.  | 

## Uso de las API de ejemplo
<a name="sample-api-usage"></a>

**Nota:** Cada extremo de SageMaker es único y la respuesta de la API dependerá del modelo implementado. El ejemplo que se da a continuación supone que la muestra de[Esta entrada de blog](https://aws.amazon.com/blogs/machine-learning/creating-a-machine-learning-powered-rest-api-with-amazon-api-gateway-mapping-templates-and-amazon-sagemaker/). Para obtener una referencia sobre cómo se implementaría, consulte[integ.apigateway-sagemakerendpoint-overwrite.ts](https://github.com/awslabs/aws-solutions-constructs/blob/f02997ea4fa6515fc4429771d21821d2c26a8584/source/patterns/%40aws-solutions-constructs/aws-apigateway-sagemakerendpoint/test/integ.apigateway-sagemakerendpoint-overwrite.ts).


|  **Método**  |  **Ruta de solicitud**  |  **Cadena de consulta**  |  **Acción de SageMaker**  |  **Descripción**  | 
| --- | --- | --- | --- | --- | 
|  GET  |  /321  |  items=101,131,162  |  sagemaker:InvokeEndpoint  |  Recupera las predicciones para un usuario y elementos específicos.  | 

## Configuración predeterminada
<a name="default-settings-33"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon API Gateway
<a name="amazon-api-gateway-33"></a>
+  Implementación de un extremo de API optimizado para bordes 
+  Habilitar el registro de CloudWatch para API Gateway 
+  Configurar el rol de IAM de acceso mínimo con privilegios para API Gateway 
+  Establezca el AuthorizationType predeterminado para todos los métodos API en IAM 
+  Habilitación de X-Ray streo 
+  Validar los parámetros de solicitud antes de pasar datos a SageMaker 

## Architecture
<a name="architecture-33"></a>

![\[Diagram showing Amazon CloudWatch, API Gateway, SageMaker endpoint, and IAM roles connections.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-apigateway-sagemakerendpoint.png)


## GitHub
<a name="github-33"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-apigateway-sagemakerendpoint](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-apigateway-sagemakerendpoint)  | 

# aws-apigateway-sqs
<a name="aws-apigateway-sqs"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1apigateway\$1sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografiado  |  @aws-solutions-constructs/aws-apigateway-sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.apigatewaysqs  | 

## Overview
<a name="overview-2"></a>

 Este constructo de soluciones de AWS implementa una API REST de Amazon API Gateway conectada a una cola de Amazon SQS.

 Aquí hay una definición mínima de patrón implementable en TypeScript:

```
import { ApiGatewayToSqs, ApiGatewayToSqsProps } from "@aws-solutions-constructs/aws-apigateway-sqs";

new ApiGatewayToSqs(this, 'ApiGatewayToSqsPattern', {});
```

## Initializer
<a name="initializer-2"></a>

```
new ApiGatewayToSqs(scope: Construct, id: string, props: ApiGatewayToSqsProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`ApiGatewayToSqsProps`](#pattern-construct-props-2) 

## Patrón de construcción
<a name="pattern-construct-props-2"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ApigatewayProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApiProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApiProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para API Gateway.  | 
|  ¿Props en cola?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la cola.  | 
|  DeployDeadLetterQueue?  |  boolean  |  Si se va a implementar una cola secundaria para utilizarse como cola de mensajes fallidos. El valor predeterminado es true.  | 
|  maxReceiveCount  |  number  |  El número de veces que un mensaje se puede quitar sin éxito antes de que se traslade a la cola de mensajes fallidos.  | 
|  AllowCreateOperation?  |  boolean  |  Si desea implementar un método de API Gateway para operaciones de creación en la cola (es decir, SQS:SendMessage).  | 
|  CreateRequestTemplate?  |  string  |  Anule la plantilla de solicitud de API Gateway predeterminada para el método Create, siallowCreateOperationtoma el valortrue. | 
|  AllowReadOperation?  |  boolean  |  Si desea implementar un método de API Gateway para operaciones de lectura en la cola (es decir, SQS:ReceiveMessage).  | 
|  ReadRequestTemplate?  |  string  |  Anule la plantilla de solicitud de API Gateway predeterminada para el método Read, siallowReadOperationtoma el valortrue. | 
|  AllowDeleteOperation?  |  boolean  |  Si desea implementar un método de API Gateway para operaciones de eliminación en la cola (es decir, SQS:DeleteMessage).  | 
|  ¿DeleteRequestTemplate?  |  string  |  Anule la plantilla de solicitud de API Gateway predeterminada para el método Delete, siallowDeleteOperationtoma el valortrue. | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  Servicios opcionales proporcionados por el usuario para anular los accesorios predeterminados para el grupo de registros de CloudWatch Logs.  | 

## Propiedades de patrón
<a name="pattern-properties-2"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ApiGateway  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html)  |  Devuelve una instancia de la API REST de API Gateway creada por el patrón.  | 
|  ApigatewayCloudWatchRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia de la función de IAM creada por el patrón que permite el registro de acceso desde API Gateway REST API a CloudWatch.  | 
|  ApigatewayLogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del grupo de registros creado por el patrón al que se envían los registros de acceso de API REST de API de API Gateway de API.  | 
|  ApigateWayRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia de la función de IAM creada por el patrón para la API Gateway.  | 
|  DeadLetterQueue?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Devuelve una instancia de la cola de letras muertas creada por el patrón, si se implementa una.  | 
|  SQSqueue  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Devuelve una instancia de la cola SQS creada por el patrón.  | 

## Ejemplo de uso de las API
<a name="sample-api-usage"></a>


|  **Método**  |  **Ruta de solicitud**  |  **Cuerpo de la solicitud**  |  **Acción de cola**  |  **Descripción**  | 
| --- | --- | --- | --- | --- | 
|  GET  |  /  |   |  sqs::ReceiveMessage  |  Recupera un mensaje de la cola.  | 
|  POST  |  /  |  \$1 "data": "Hello World\$1" \$1  |  sqs::SendMessage  |  Entrega un mensaje a la cola.  | 
|  ELIMINAR  |  /message?receiptHandle=[value]  |   |  sqs::DeleteMessage  |  Elimina un mensaje especificado de la cola  | 

## Configuración predeterminada
<a name="default-settings-2"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon API Gateway
<a name="amazon-api-gateway-2"></a>
+  Implementación de un extremo de API optimizado para bordes 
+  Habilite el registro de CloudWatch para API Gateway 
+  Configurar el rol de IAM de acceso mínimo con privilegios para API Gateway 
+  Establezca el AuthorizationType predeterminado para todos los métodos API en IAM 
+  Habilite el X-Ray streo

### Cola de Amazon SQS
<a name="amazon-sqs-queue"></a>
+  Implementación de cola de mensajes fallidos de SQS para la cola de SQS de origen 
+  Habilite el cifrado en el lado de servidor para la cola de SQS de origen con la clave KMS administrada de AWS 
+  Aplicación del cifrado de los datos en tránsito 

## Architecture
<a name="architecture-2"></a>

![\[Diagram showing Amazon API Gateway, CloudWatch, and Simple Queue Service interactions with roles.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-apigateway-sqs.png)


## GitHub
<a name="github-2"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-apigateway-sqs](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-apigateway-sqs)  | 

# aws-cloudfront-apigateway
<a name="aws-cloudfront-apigateway"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1cloudfront\$1apigateway  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-cloudfront-apigateway  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.cloudfrontapigateway  | 

## Overview
<a name="overview-4"></a>

 Este constructo de soluciones de AWS implementa una distribución de Amazon CloudFront frente a una API REST de Amazon API Gateway.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import * as api from '@aws-cdk/aws-apigateway';
import * as lambda from "@aws-cdk/aws-lambda";
import { CloudFrontToApiGateway } from '@aws-solutions-constructs/aws-cloudfront-apigateway';
  
const lambdaProps: lambda.FunctionProps = {
    code: lambda.Code.fromAsset(`${__dirname}/lambda`),
    runtime: lambda.Runtime.NODEJS_12_X,
    handler: 'index.handler'
};

const lambdafunction = new lambda.Function(this, 'LambdaFunction', lambdaProps);

const apiGatewayProps: api.LambdaRestApiProps = {
        handler: lambdafunction,
        endpointConfiguration: {
            types: [api.EndpointType.REGIONAL]
        },
        defaultMethodOptions: {
            authorizationType: api.AuthorizationType.NONE
        }
};

const apiGateway = new api.LambdaRestApi(this, 'LambdaRestApi', apiGatewayProps);

new CloudFrontToApiGateway(this, 'test-cloudfront-apigateway', {
    existingApiGatewayObj: apiGateway
});
```

## Initializer
<a name="initializer-4"></a>

```
new CloudFrontToApiGateway(scope: Construct, id: string, props: CloudFrontToApiGatewayProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`CloudFrontToApiGatewayProps`](#pattern-construct-props-4) 

## Patrón de construcción de construcción
<a name="pattern-construct-props-4"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ExistenteApigateWaYobj  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html)  |  La puerta de API Gateway regional que se presentará con CloudFront  | 
|  CloudFrontDistributionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.DistributionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.DistributionProps.html)  |  El usuario ha proporcionado accesorios opcionales para anular los accesorios predeterminados para la distribución de CloudFront.  | 
|  InsertHTTPSecurityHeaders?  |  boolean  |  Los apoyos proporcionados por el usuario opcionales para activar/desactivar la inyección automática de cabeceras de seguridad HTTP de las mejores prácticas en todas las respuestas de CloudFront  | 

## Propiedades de patrón
<a name="pattern-properties-4"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ApiGateway  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html)  |  Devuelve una instancia de la API REST de API Gateway creada por el patrón.  | 
|  CloudFrontLogingBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del depósito de registro creado por el patrón para la distribución web de CloudFront.  | 
|  CloudFrontWebDistribution  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.CloudFrontWebDistribution.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.CloudFrontWebDistribution.html)  |  Devuelve una instancia de la distribución web de CloudFront creada por el patrón.  | 
|  EdgeLambdaFontionVersion?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Version.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Version.html)  |  Devuelve una instancia de la versión de la función de borde de Lambda creada por el patrón.  | 

## Configuración predeterminada
<a name="default-settings-4"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon CloudFront
<a name="amazon-cloudfront-1"></a>
+  Configurar el registro de acceso para CloudFront WebDistribution 
+  Habilitar la inyección automática de encabezados de seguridad HTTP de mejores prácticas en todas las respuestas de CloudFront WebDistribution 

### Amazon API Gateway
<a name="amazon-api-gateway-4"></a>
+  El objeto API Gateway proporcionado por el usuario se utiliza tal cual 
+  Habilitar el X-Ray streo

## Architecture
<a name="architecture-4"></a>

![\[Diagram showing data flow between network, code, storage, and cloud search components.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-cloudfront-apigateway.png)


## GitHub
<a name="github-4"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-cloudfront-apigateway](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-cloudfront-apigateway)  | 

# aws-cloudfront-apigateway-lambda
<a name="aws-cloudfront-apigateway-lambda"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versionado semántico](https://semver.org/)El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1cloudfront\$1apigateway\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-cloudfront-apigateway-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.cloudfrontapigatewaylambda  | 

## Overview
<a name="overview-3"></a>

 Este Construct de soluciones de AWS implementa una distribución de Amazon CloudFront frente a una API REST respaldada por Lambda de Amazon API Gateway.

 Aquí hay una definición mínima de patrón implementable en 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
<a name="initializer-3"></a>

```
new CloudFrontToApiGatewayToLambda(scope: Construct, id: string, props: CloudFrontToApiGatewayToLambdaProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`CloudFrontToApiGatewayToLambdaProps`](#pattern-construct-props-3) 

## Patrón de construcción
<a name="pattern-construct-props-3"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda. Se pasa por alto si seexistingLambdaObjse encuentra.  | 
|  ¿ApigatewayProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.LambdaRestApiProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.LambdaRestApiProps.html)  |  Los apoyos proporcionados por el usuario opcionales para anular los apoyos predeterminados para API Gateway  | 
|  CloudFrontDistributionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.DistributionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.DistributionProps.html)  |  El usuario ha proporcionado accesorios opcionales para anular los accesorios predeterminados para la distribución de CloudFront.  | 
|  InsertHTTPSecurityHeaders?  |  boolean  |  Los apoyos proporcionados por el usuario opcionales para activar/desactivar la inyección automática de encabezados de seguridad HTTP de las mejores prácticas en todas las respuestas de CloudFront  | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  Los apoyos opcionales proporcionados por el usuario para anular los apoyos predeterminados para el grupo de registros de CloudWatch Logs.  | 

## Propiedades de patrón
<a name="pattern-properties-3"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ApiGateway  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html)  |  Devuelve una instancia de API Gateway creada por el patrón.  | 
|  ApigatewayCloudWatchRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia de la función de IAM creada por el patrón que permite el registro de acceso desde API Gateway REST API a CloudWatch.  | 
|  ApigatewayLogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del grupo de registros creado por el patrón al que se envían los registros de acceso de API REST de API de API Gateway de API.  | 
|  CloudFrontLogingBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del depósito de registro creado por el patrón para la distribución web de CloudFront.  | 
|  CloudFrontWebDistribution  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.CloudFrontWebDistribution.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.CloudFrontWebDistribution.html)  |  Devuelve una instancia de la distribución web de CloudFront creada por el patrón.  | 
|  EdgelambdaFontionVersion?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Version.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Version.html)  |  Devuelve una instancia de la versión de la función de borde de Lambda creada por el patrón.  | 
|  LambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 

## Configuración predeterminada
<a name="default-settings-3"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon CloudFront
<a name="amazon-cloudfront"></a>
+  Configurar el registro de acceso para CloudFront WebDistribution 
+  Habilitar la inyección automática de encabezados de seguridad HTTP de mejores prácticas en todas las respuestas de CloudFront WebDistribution 

### Amazon API Gateway
<a name="amazon-api-gateway-3"></a>
+  Implementar un extremo de API regional 
+  Habilitar el registro de CloudWatch para API Gateway 
+  Configurar el rol de IAM de acceso mínimo con privilegios para API Gateway 
+  Establezca el AuthorizationType predeterminado para todos los métodos API en IAM 
+  Habilitar el X-Ray streo

### Función de AWS Lambda
<a name="aws-lambda-function-1"></a>
+  Configuración de la función de IAM de acceso limitado con privilegios para la función Lambda 
+  Habilitar conexiones de reutilización con la función Keep-Alive para NodeJS Lambda 
+  Habilitar el X-Ray streo
+  Configuración de las variables de entorno:
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

## Architecture
<a name="architecture-3"></a>

![\[Diagram showing data flow between Servicios de AWS including AppSync, Lambda, and CloudSearch.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-cloudfront-apigateway-lambda.png)


## GitHub
<a name="github-3"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-cloudfront-apigateway-lambda](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-cloudfront-apigateway-lambda)  | 

# aws-cloudfront-mediastore
<a name="aws-cloudfront-mediastore"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versionado semántico](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1cloudfront\$1mediastore  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografiado  |  @aws-solutions-constructs/aws-cloudfront-mediastore  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.cloudfrontmediastore  | 

## Overview
<a name="overview-38"></a>

 Este constructo de soluciones de AWS implementa una distribución de Amazon CloudFront conectada a un contenedor AWS Elemental MediaStore.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { CloudFrontToMediaStore } from '@aws-solutions-constructs/aws-cloudfront-mediastore';

new CloudFrontToMediaStore(this, 'test-cloudfront-mediastore-default', {});
```

## Initializer
<a name="initializer-38"></a>

```
new CloudFrontToMediaStore(scope: Construct, id: string, props: CloudFrontToMediaStoreProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`CloudFrontToMediaStoreProps`](#pattern-construct-props-38) 

## Patrón de construcción
<a name="pattern-construct-props-38"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ExistenteMediaStoreContainerObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-mediastore.CfnContainer.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-mediastore.CfnContainer.html)  |  Contenedor MediaStore opcional proporcionado por el usuario para anular el contenedor MediaStore predeterminado.  | 
|  MediaStoreContainerProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-mediastore.CfnContainerProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-mediastore.CfnContainerProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para el Contenedor MediaStore.  | 
|  CloudFrontDistributionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.DistributionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.DistributionProps.html) \$1 any  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la distribución de CloudFront.  | 
|  InsertHTTPSecurityHeaders?  |  boolean  |  Props opcionales proporcionados por el usuario para activar o desactivar la inyección automática de encabezados de seguridad HTTP de mejores prácticas en todas las respuestas de CloudFront.  | 

## Propiedades de patrón
<a name="pattern-properties-38"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  CloudFrontWebDistribution  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.CloudFrontWebDistribution.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.CloudFrontWebDistribution.html)  |  Devuelve una instancia de la distribución web de CloudFront creada por el patrón.  | 
|  MediaStoreContainer  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-mediastore.CfnContainer.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-mediastore.CfnContainer.html)  |  Devuelve una instancia del contenedor MediaStore creado por el patrón.  | 
|  CloudFrontLogingBucket  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del depósito de registro creado por el patrón para la distribución web de CloudFront.  | 
|  CloudFrontOriginRequestPolicy  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.OriginRequestPolicy.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.OriginRequestPolicy.html)  |  Devuelve una instancia de la directiva de solicitud de origen de CloudFront creada por el patrón para la distribución web de CloudFront.  | 
|  Propiedad CloudFrontOriginAccessIdentiAccessIdentity  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.OriginAccessIdentity.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.OriginAccessIdentity.html)  |  Devuelve una instancia de la identidad de acceso de origen de CloudFront creada por el patrón para la distribución web de CloudFront.  | 
|  EdgeLambdaFontionVersion  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Version.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Version.html)  |  Devuelve una instancia de la versión de la función de borde de Lambda creada por el patrón.  | 

## Configuración predeterminada
<a name="default-settings-38"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon CloudFront
<a name="amazon-cloudfront-2"></a>
+  Configuración del registro de acceso para la distribución web de CloudFront 
+  Habilitar la política de solicitud de origen de CloudFront para el contenedor AWS Elemental MediaStore 
+  Establezca`User-Agent`Propiedad personalizada con identidad de acceso de origen de CloudFront 
+  Habilitar la inyección automática de encabezados de seguridad HTTP de mejores prácticas en todas las respuestas de la distribución web de CloudFront 

### AWS Elemental MediaStore
<a name="amazon-elemental-mediastore"></a>
+  Establecer la directiva de eliminación para conservar el recurso 
+  Establecer el nombre del contenedor con el nombre de la pila CloudFormation 
+  Configure el predeterminado[Propiedad compartida de recursos entre orígenes (CORS)](https://docs.aws.amazon.com/mediastore/latest/ug/cors-policy.html) 
+  Configure el predeterminado[Política de ciclo de vida de los objetos](https://docs.aws.amazon.com/mediastore/latest/ug/policies-object-lifecycle.html) 
+  Configure el predeterminado[Política de contenedor](https://docs.aws.amazon.com/mediastore/latest/ug/policies.html)para permitir sólo`aws:UserAgent`identidad de acceso de origen de CloudFront 
+  Configure el predeterminado[Política de métricas](https://docs.aws.amazon.com/mediastore/latest/ug/policies-metric.html) 
+  Habilitar el registro de acceso

## Architecture
<a name="architecture-38"></a>

![\[Diagram showing interaction between Amazon CloudFront, AWS Elemental MediaStore, and Amazon S3.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-cloudfront-mediastore.png)


## GitHub
<a name="github-38"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-cloudfront-mediastore](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-cloudfront-mediastore)  | 

# aws-cloudfront-s3
<a name="aws-cloudfront-s3"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1cloudfront\$1s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-cloudfront-s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.cloudfronts3  | 

## Overview
<a name="overview-5"></a>

 Este constructo de soluciones de AWS implementa una distribución de Amazon CloudFront frente a un bucket de Amazon S3.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { CloudFrontToS3 } from '@aws-solutions-constructs/aws-cloudfront-s3';

new CloudFrontToS3(this, 'test-cloudfront-s3', {});
```

## Initializer
<a name="initializer-5"></a>

```
new CloudFrontToS3(scope: Construct, id: string, props: CloudFrontToS3Props);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`CloudFrontToS3Props`](#pattern-construct-props-5) 

## Patrón de construcción
<a name="pattern-construct-props-5"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteBuckeTobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Instancia existente del objeto S3 Bucket. Si se proporciona esto, entonces también proporcionabucketPropses un error.  | 
|  ¿BucketProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas del depósito. Se pasa por alto si unexistingBucketObjse encuentra.  | 
|  CloudFrontDistributionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.DistributionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.DistributionProps.html)  |  El usuario ha proporcionado accesorios opcionales para anular los accesorios predeterminados para la distribución de CloudFront.  | 
|  InsertHTTPSecurityHeaders?  |  boolean  |  Los apoyos proporcionados por el usuario opcionales para activar o desactivar la inyección automática de encabezados de seguridad HTTP de las mejores prácticas en todas las respuestas de CloudFront  | 

## Propiedades de patrón
<a name="pattern-properties-5"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  CloudFrontWebDistribution  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.CloudFrontWebDistribution.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudfront.CloudFrontWebDistribution.html)  |  Devuelve una instancia de la distribución web de CloudFront creada por el patrón.  | 
|  S3 Bucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del bucket S3 creado por el patrón.  | 
|  ¿S3LoggingBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del depósito de registro creado por el patrón para el bucket S3.  | 
|  EdgeLambdaFontionVersion?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Version.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Version.html)  |  Devuelve una instancia de la versión de la función de borde de Lambda creada por el patrón.  | 
|  CloudFrontLogingBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del depósito de registro creado por el patrón para la distribución web de CloudFront.  | 

## Configuración predeterminada
<a name="default-settings-5"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon CloudFront
<a name="amazon-cloudfront-2"></a>
+  Configurar el registro de acceso para CloudFront WebDistribution 
+  Habilitar la inyección automática de encabezados de seguridad HTTP de mejores prácticas en todas las respuestas de CloudFront WebDistribution 

### Bucket de Amazon S3
<a name="amazon-s3-bucket"></a>
+  Configurar el registro de acceso para S3 Bucket 
+  Habilitar el cifrado del lado del servidor para S3 Bucket utilizando la clave KMS administrada por AWS 
+  Activar el control de versiones para S3 Bucket 
+  No permitir el acceso público para S3 Bucket 
+  Conservar el depósito de S3 al eliminar la pila de 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
<a name="architecture-5"></a>

![\[CloudFront distribution workflow with Origin Access Control, S3 bucket, and associated logs.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-cloudfront-s3.png)


## GitHub
<a name="github-5"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-cloudfront-s3](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-cloudfront-s3)  | 

# aws-cognito-apigateway-lambda
<a name="aws-cognito-apigateway-lambda"></a>

![\[Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1cognito\$1apigateway\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-cognito-apigateway-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.cognitoapigatewaylambda  | 

## Overview
<a name="overview-4"></a>

 Este Construct de soluciones de AWS implementa Amazon Cognito protegiendo una API REST respaldada por Lambda de Amazon API Gateway.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { CognitoToApiGatewayToLambda } from '@aws-solutions-constructs/aws-cognito-apigateway-lambda';

new CognitoToApiGatewayToLambda(this, 'test-cognito-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'
    }
});
```

 Si está definiendo recursos y métodos en su API (por ejemplo,`proxy = false`), debe llamar a la`addAuthorizers()`después de que la API esté completamente definida. Esto garantiza que todos los métodos de su API estén protegidos.

 A continuación se muestra un ejemplo en TypeScript: 

```
import { CognitoToApiGatewayToLambda } from '@aws-solutions-constructs/aws-cognito-apigateway-lambda';

const construct = new CognitoToApiGatewayToLambda(this, 'test-cognito-apigateway-lambda', {
    lambdaFunctionProps: {
        // This assumes a handler function in lib/lambda/index.js
        code: lambda.Code.fromAsset(`${__dirname}/lambda`),
        runtime: lambda.Runtime.NODEJS_12_X,
        handler: 'index.handler'
    },
    apiGatewayProps: {
      proxy: false
    }
});

const resource = construct.apiGateway.root.addResource('foobar');
resource.addMethod('POST');

// Mandatory to call this method to Apply the Cognito Authorizers on all API methods
construct.addAuthorizers();
```

## Initializer
<a name="initializer-6"></a>

```
new CognitoToApiGatewayToLambda(scope: Construct, id: string, props: CognitoToApiGatewayToLambdaProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`CognitoToApiGatewayToLambdaProps`](#pattern-construct-props-6) 

## Patrón de construcción
<a name="pattern-construct-props-6"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda. Se pasa por alto si unexistingLambdaObjse encuentra.  | 
|  ¿ApigateWayProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.LambdaRestApi.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.LambdaRestApi.html)  |  Los apoyos proporcionados por el usuario opcionales para anular los apoyos predeterminados para API Gateway  | 
|  ¿CognitouserPoolProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.UserPoolProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.UserPoolProps.html)  |  Los accesorios proporcionados por el usuario opcionales para anular los accesorios predeterminados para el grupo de usuarios de Cognito  | 
|  ¿CognitouserPoolClientProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.UserPoolClientProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.UserPoolClientProps.html)  |  Los accesorios proporcionados por el usuario opcionales para anular los accesorios predeterminados para Cognito User Pool Client  | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  Los apoyos opcionales proporcionados por el usuario para anular los apoyos predeterminados para el grupo de registros de CloudWatch Logs.  | 

## Propiedades de patrón
<a name="pattern-properties-6"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ApiGateway  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.RestApi.html)  |  Devuelve una instancia de la API REST de API Gateway creada por el patrón.  | 
|  LambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 
|  userPool  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.UserPool.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.UserPool.html)  |  Devuelve una instancia del grupo de usuarios de Cognito creado por el patrón.  | 
|  UserPoolClient  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.UserPoolClient.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.UserPoolClient.html)  |  Devuelve una instancia del cliente de grupo de usuarios de Cognito creado por el patrón.  | 
|  ApigatewayCloudWatchRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia de la función de IAM creada por el patrón que permite el registro de acceso desde API Gateway REST API a CloudWatch.  | 
|  ApigatewayLogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del grupo de registros creado por el patrón al que se envían los registros de acceso de API REST de API de API Gateway de API.  | 
|  ApiGateWayAuthorizer  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.CfnAuthorizer.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-apigateway.CfnAuthorizer.html)  |  Devuelve una instancia del autorizador de API Gateway creado por el patrón.  | 

## Configuración predeterminada
<a name="default-settings-6"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon Cognito
<a name="amazon-cognito"></a>
+  Configuración de directiva de contraseñas para grupos de usuarios de 
+  Aplicar el modo de seguridad avanzada para grupos de usuarios 

### Amazon API Gateway
<a name="amazon-api-gateway-5"></a>
+  Implementación de un extremo de API optimizado para bordes 
+  Habilitar el registro de CloudWatch para API Gateway 
+  Configurar el rol de IAM de acceso mínimo con privilegios para API Gateway 
+  Establezca el AuthorizationType predeterminado para todos los métodos API en IAM 
+  Habilitar el X-Ray streo

### Función de AWS Lambda
<a name="aws-lambda-function-2"></a>
+  Configuración de la función de IAM de acceso limitado a privilegios para la función Lambda 
+  Habilitar conexiones de reutilización con la función Keep-Alive para NodeJS Lambda 
+  Habilitar el X-Ray streo
+  Configuración de las variables de entorno:
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

## Architecture
<a name="architecture-6"></a>

![\[Diagram showing interactions between API Gateway, Lambda, and CloudWatch with security icons.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-cognito-apigateway-lambda.png)


## GitHub
<a name="github-6"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-cognito-apigateway-lambda](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-cognito-apigateway-lambda)  | 

# aws-dynamodb-stream-lambda
<a name="aws-dynamodb-stream-lambda"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versionado semántico](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1dynamodb\$1stream\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-dynamodb-stream-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.dynamodbstreamlambda  | 

## Overview
<a name="overview-8"></a>

 Este constructo de soluciones de AWS implementa un patrón de tabla de Amazon DynamoDB con flujo para invocar la función AWS Lambda con los permisos menos privilegiados.

 Aquí hay una definición mínima de patrón implementable: 

```
import { DynamoDBStreamToLambdaProps, DynamoDBStreamToLambda} from '@aws-solutions-constructs/aws-dynamodb-stream-lambda';

new DynamoDBStreamToLambda(this, 'test-dynamodb-stream-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
<a name="initializer-8"></a>

```
new DynamoDBStreamToLambda(scope: Construct, id: string, props: DynamoDBStreamToLambdaProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`DynamoDBStreamToLambdaProps`](#pattern-construct-props-8) 

## Patrón de construcción
<a name="pattern-construct-props-8"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  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.  | 
|  ¿DynamotableProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.TableProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.TableProps.html)  |  Los accesorios proporcionados por el usuario opcionales para anular los accesorios predeterminados para la tabla de DynamoDB  | 
|  ExistingTableObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.Table.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.Table.html)  |  Instancia existente del objeto de tabla DynamoDB, proporcionando tanto esto comodynamoTablePropsprovocará un error.  | 
|  DynamoEventSourceProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda-event-sources.DynamoEventSourceProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda-event-sources.DynamoEventSourceProps.html)  |  Los apoyos proporcionados por el usuario opcionales para anular los apoyos predeterminados para el origen de eventos de DynamoDB  | 

## Propiedades de patrón
<a name="pattern-properties-8"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  DynamoTable  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.Table.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.Table.html)  |  Devuelve una instancia de la tabla DynamoDB creada por el patrón.  | 
|  LambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 

## Lambda function
<a name="lambda-function-8"></a>

Este patrón requiere una función Lambda que pueda publicar datos en el servicio Elasticsearch desde la secuencia de DynamoDB. Se proporciona una función de muestra[Aquí](https://github.com/awslabs/aws-solutions-constructs/blob/master/source/patterns/%40aws-solutions-constructs/aws-dynamodb-stream-lambda/test/lambda/index.js).

## Configuración predeterminada
<a name="default-settings-8"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Tabla Amazon DynamoDB
<a name="amazon-dynamodb-table-2"></a>
+  Establecer el modo de facturación para la tabla de DynamoDB en Bajo demanda (pago por solicitud) 
+  Habilitar el cifrado del lado del servidor para DynamoDB Table mediante la clave KMS administrada por AWS 
+  Crea una clave de partición llamada 'id' para la tabla de DynamoDB 
+  Conservar la tabla al eliminar la pila CloudFormation 
+  Permita las copias de seguridad continuas y la recuperación a un momento dado 

### Función de AWS Lambda
<a name="aws-lambda-function-4"></a>
+  Configuración de la función IAM de acceso a privilegios limitados para la función Lambda 
+  Habilitar conexiones de reutilización con la función Keep-Alive para NodeJS Lambda 
+  Habilitar el X-Ray streo
+  Habilitar funciones de control de errores: habilitar bisect en función Error; establecer la antigüedad máxima de registro predeterminada (24 horas); establecer intentos máximos de reintento (500) por defecto; e implementar la cola de letras muertas SQS como destino en caso de fallo
+  Configuración de las variables de entorno:
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

## Architecture
<a name="architecture-8"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-dynamodb-stream-lambda.png)


## GitHub
<a name="github-8"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-dynamodb-stream-lambda](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-dynamodb-stream-lambda)  | 

# aws-dynamodb-stream-lambda-elasticsearch-kibana
<a name="aws-dynamodb-stream-lambda-elasticsearch-kibana"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versioning semántico](https://semver.org/)El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1dynamodb\$1stream\$1lambda\$1elasticsearch\$1kibana  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografiado  |  @aws-solutions-constructs/aws-dynamodb-stream-lambda-elasticsearch-kibana  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.dynamodbstreamlambdaelasticsearchkibana  | 

## Overview
<a name="overview-7"></a>

 Este Construct de soluciones de AWS implementa una tabla de Amazon DynamoDB con flujo, una función de AWS Lambda y un Amazon Elasticsearch Service con los permisos menos privilegiados.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { DynamoDBStreamToLambdaToElasticSearchAndKibana, DynamoDBStreamToLambdaToElasticSearchAndKibanaProps } from '@aws-solutions-constructs/aws-dynamodb-stream-lambda-elasticsearch-kibana';
import { Aws } from "@aws-cdk/core";

const props: DynamoDBStreamToLambdaToElasticSearchAndKibanaProps = {
    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'
    },
    domainName: 'test-domain',
    // TODO: Ensure the Cognito domain name is globally unique
    cognitoDomainName: 'globallyuniquedomain' + Aws.ACCOUNT_ID;
};

new DynamoDBStreamToLambdaToElasticSearchAndKibana(this, 'test-dynamodb-stream-lambda-elasticsearch-kibana', props);
```

## Initializer
<a name="initializer-7"></a>

```
new DynamoDBStreamToLambdaToElasticSearchAndKibana(scope: Construct, id: string, props: DynamoDBStreamToLambdaToElasticSearchAndKibanaProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`DynamoDBStreamToLambdaToElasticSearchAndKibanaProps`](#pattern-construct-props-7) 

## Patrón de construcción
<a name="pattern-construct-props-7"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda. Se pasa por alto si unexistingLambdaObjse encuentra.  | 
|  ¿DynamotableProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.TableProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.TableProps.html)  |  Los accesorios proporcionados por el usuario opcionales para anular los accesorios predeterminados para la tabla de DynamoDB  | 
|  ExistingTableObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.Table.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.Table.html)  |  Instancia existente del objeto de tabla DynamoDB, proporcionando tanto esto comodynamoTablePropsprovocará un error.  | 
|  DynamoEventSourceProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda-event-sources.DynamoEventSourceProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda-event-sources.DynamoEventSourceProps.html)  |  Los apoyos proporcionados por el usuario opcionales para anular los apoyos predeterminados para el origen de eventos de DynamoDB  | 
|  ¿EsDomainProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-elasticsearch.CfnDomainProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-elasticsearch.CfnDomainProps.html)  |  Los accesorios proporcionados por el usuario opcionales para anular los accesorios predeterminados para Amazon Elasticsearch Service  | 
|  domainName  |  string  |  Nombre de dominio para Cognito y Amazon Elasticsearch Service  | 
|  CreateCloudWatchalarms  |  boolean  |  Si desea crear alarmas recomendadas de CloudWatch.  | 

## Propiedades de patrón
<a name="pattern-properties-7"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿Cloudwatchalarms?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html)  |  Devuelve una lista de una o más alarmas de CloudWatch creadas por el patrón.  | 
|  DynamoTable  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.Table.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.Table.html)  |  Devuelve una instancia de la tabla DynamoDB creada por el patrón.  | 
|  ElasticSearchDomain  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-elasticsearch.CfnDomain.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-elasticsearch.CfnDomain.html)  |  Devuelve una instancia del dominio Elasticsearch creado por el patrón.  | 
|  IdentityPool  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.CfnIdentityPool.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.CfnIdentityPool.html)  |  Devuelve una instancia del grupo de identidades de Cognito creado por el patrón.  | 
|  LambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 
|  userPool  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.UserPool.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.UserPool.html)  |  Devuelve una instancia del grupo de usuarios de Cognito creado por el patrón.  | 
|  UserPoolClient  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.UserPoolClient.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.UserPoolClient.html)  |  Devuelve una instancia del cliente de grupo de usuarios de Cognito creado por el patrón.  | 

## Lambda function
<a name="lambda-function-7"></a>

Este patrón requiere una función Lambda que pueda publicar datos en el servicio Elasticsearch desde la secuencia de DynamoDB. Se proporciona una función de muestra[Aquí](https://github.com/awslabs/aws-solutions-constructs/blob/master/source/patterns/%40aws-solutions-constructs/aws-dynamodb-stream-lambda-elasticsearch-kibana/test/lambda/index.js).

## Configuración predeterminada
<a name="default-settings-7"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Tabla Amazon DynamoDB
<a name="amazon-dynamodb-table-1"></a>
+  Establezca el modo de facturación para la tabla de DynamoDB en Bajo demanda (pago por solicitud) 
+  Habilitar el cifrado del lado del servidor para DynamoDB Table mediante la clave KMS administrada por AWS 
+  Crea una clave de partición llamada 'id' para la tabla de DynamoDB 
+  Conservar la tabla al eliminar la pila CloudFormation 
+  Habilite las copias de seguridad continuas y la recuperación a un momento dado 

### Función de AWS Lambda
<a name="aws-lambda-function-3"></a>
+  Configuración de la función IAM de acceso a privilegios limitados para la función Lambda 
+  Habilitar conexiones de reutilización con la función Keep-Alive para NodeJS Lambda 
+  Habilitar el X-Ray streo
+  Habilitar funciones de control de errores: habilitar bisect en función Error; establecer la antigüedad máxima de registro predeterminada (24 horas); establecer intentos máximos de reintento (500) por defecto; e implementar la cola de letras muertas SQS como destino en caso de fallo
+  Configuración de las variables de entorno:
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

### Amazon Cognito
<a name="amazon-cognito-1"></a>
+  Configuración de la directiva de contraseñas para grupos de usuarios 
+  Aplicar el modo de seguridad avanzada para grupos de usuarios 

### Amazon Elasticsearch Service
<a name="amazon-elasticsearch-service"></a>
+  Implementar las mejores prácticas de las alarmas de CloudWatch para el dominio de Elasticsearch 
+  Proteja el acceso al panel de control de Kibana Cognito grupos de usuarios de 
+  Habilitar el cifrado del lado del servidor para Elasticsearch Domain mediante la clave KMS administrada por AWS 
+  Habilitar el cifrado de nodo a nodo para el dominio Elasticsearch 
+  Configuración del clúster para el dominio Amazon ES 

## Architecture
<a name="architecture-7"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-dynamodb-stream-lambda-elasticsearch-kibana.png)


## GitHub
<a name="github-7"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-dynamodb-stream-lambda-elasticsearch-kibana](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-dynamodb-stream-lambda-elasticsearch-kibana)  | 

# aws-events-rule-kinesisfiremanse-s3
<a name="aws-events-rule-kinesisfirehose-s3"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1events\$1rule\$1kinesisfirehose\$1s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-events-rule-kinesisfirehose-s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.eventsrulekinesisfirehoses3  | 

## Overview
<a name="overview-35"></a>

 Este constructo de soluciones de AWS implementa una regla de Amazon CloudWatch Events para enviar datos a una secuencia de entrega de Amazon Kinesis Data Firehose conectada a un bucket de Amazon S3. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import * as cdk from '@aws-cdk/core';
import { EventsRuleToKinesisFirehoseToS3, EventsRuleToKinesisFirehoseToS3Props } from '@aws-solutions-constructs/aws-events-rule-kinesisfirehose-s3';

const eventsRuleToKinesisFirehoseToS3Props: EventsRuleToKinesisFirehoseToS3Props = {
    eventRuleProps: {
    schedule: events.Schedule.rate(cdk.Duration.minutes(5))
    }
};

new EventsRuleToKinesisFirehoseToS3(this, 'test-events-rule-firehose-s3', eventsRuleToKinesisFirehoseToS3Props);
```

## Initializer
<a name="initializer-35"></a>

```
new EventsRuleToKinesisFirehoseToS3(scope: Construct, id: string, props: EventsRuleToKinesisFirehoseToS3Props);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`EventsRuleToKinesisFirehoseToS3Props`](#pattern-construct-props-35) 

## Patrón de construcción
<a name="pattern-construct-props-35"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  EventRuleProps  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.RuleProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.RuleProps.html)  |  Propiedades proporcionadas por el usuario para anular las propiedades predeterminadas de la regla CloudWatch Events.  | 
|  ¿KinesisFireHoseProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStreamProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStreamProps.html)  |  El usuario ha proporcionado accesorios opcionales para anular los accesorios predeterminados para Kinesis Firehose Delivery Stream.  | 
|  ¿ExistenteBuckeTobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html)  |  Instancia existente del objeto S3 Bucket. Si se proporciona esto, entonces también proporcionabucketPropses un error.  | 
|  ¿BucketProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para el bucket S3.  | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  Props opcionales proporcionados por el usuario para anular los accesorios predeterminados para el grupo de registros de CloudWatch Logs.  | 

## Propiedades de patrón
<a name="pattern-properties-35"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  Regla de eventos  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.Rule.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.Rule.html)  |  Devuelve una instancia de la regla Eventos creada por el patrón.  | 
|  KinesisFirehose  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStream.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStream.html)  |  Devuelve una instancia de la secuencia de entrega de Kinesis Firehose creada por el patrón.  | 
|  Bucket S3  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del bucket S3 creado por el patrón.  | 
|  ¿S3LoggingBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del depósito de registro creado por el patrón para el bucket S3.  | 
|  ¿EventsRole?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia del rol creado por el componente fijo para la regla CloudWatch Events.  | 
|  KinesisFireHoserole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia del rol de IAM creado por el patrón para la secuencia de entrega de Kinesis Firehose.  | 
|  KinesisFireHoselogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del grupo de registros creado por el patrón al que se envían los registros de acceso de Kinesis Firehose.  | 

## Configuración predeterminada
<a name="default-settings-35"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Reglas de Amazon CloudWatch Events
<a name="amazon-events-rule-35"></a>
+  Configure el rol de IAM de acceso mínimo con privilegios para que la regla de eventos se publique en Kinesis Firehose Delivery Stream. 

### Amazon Kinesis Firehose
<a name="amazon-kinesisfirehose-35"></a>
+  Habilite el registro de CloudWatch para Kinesis Firehose. 
+  Configurar el rol de IAM de acceso mínimo para Amazon Kinesis Firehose. 

### Bucket de Amazon S3
<a name="amazon-s3-bucket-35"></a>
+  Configurar el registro de acceso para el depósito. 
+  Habilite el cifrado del lado del servidor para el depósito mediante la clave KMS administrada por AWS. 
+  Activar el control de versiones para el bucket. 
+  No permita el acceso público para el cubo. 
+  Mantenga el depósito al eliminar la pila CloudFormation. 
+  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
<a name="architecture-35"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-events-rule-kinesisfirehose-s3.png)


## GitHub
<a name="github-35"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-events-rule-kinesisfirehose-s3](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-events-rule-kinesisfirehose-s3)  | 

# aws-events-rule-kinesisstreams
<a name="aws-events-rule-kinesisstreams"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1events\$1rule\$1kinesisstream  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-events-rule-kinesisstreams  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.eventsrulekinesisstream  | 

## Overview
<a name="overview-36"></a>

 Este constructo de soluciones de AWS implementa una regla de Amazon CloudWatch Events para enviar datos a un flujo de datos de Amazon Kinesis. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import * as cdk from '@aws-cdk/core';
import {EventsRuleToKinesisStreams, EventsRuleToKinesisStreamsProps} from "@aws-solutions-constructs/aws-events-rule-kinesisstreams";

const props: EventsRuleToKinesisStreamsProps = {
    eventRuleProps: {
      schedule: events.Schedule.rate(Duration.minutes(5)),
    }
};

new EventsRuleToKinesisStreams(this, 'test-events-rule-kinesis-stream', props);
```

## Initializer
<a name="initializer-36"></a>

```
new EventsRuleToKinesisStreams(scope: Construct, id: string, props: EventsRuleToKinesisStreamsProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`EventsRuleToKinesisStreamsProps`](#pattern-construct-props-36) 

## Patrón de construcción
<a name="pattern-construct-props-36"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  EventRuleProps  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.RuleProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.RuleProps.html)  |  Propiedades proporcionadas por el usuario para anular las propiedades predeterminadas de la regla CloudWatch Events.  | 
|  ¿ExistenteStreamObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html)  |  Instancia existente de Kinesis Stream, proporcionando tanto esto comokinesisStreamPropsSi se produce un error.  | 
|  ¿KinesisStreamProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.StreamProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.StreamProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la transmisión de Kinesis.  | 
|  CreateCloudWatchalarms  |  boolean  |  Si desea crear alarmas recomendadas de CloudWatch.  | 

## Patrón Propiedades
<a name="pattern-properties-36"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  Regla de eventos  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.Rule.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.Rule.html)  |  Devuelve una instancia de la regla Eventos creada por el patrón.  | 
|  Flujos de Kinesi  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html)  |  Devuelve una instancia de la secuencia Kinesis creada por el patrón.  | 
|  EventsRole?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia del rol creado por el componente fijo para la regla CloudWatch Events.  | 

## Configuración predeterminada
<a name="default-settings-36"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon CloudWatch Events
<a name="amazon-events-rule-36"></a>
+  Configure el rol de IAM de acceso mínimo con privilegios para que la regla de eventos se publique en el flujo de datos de Kinesis. 

### Amazon Kinesis Stream
<a name="amazon-kinesisstream-36"></a>
+  Habilite el cifrado del lado del servidor para Kinesis Data Stream mediante AWS Managed KMS Key. 

## Architecture
<a name="architecture-36"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-events-rule-kinesisstreams.png)


## GitHub
<a name="github-36"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-events-rule-kinesisstreams](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-events-rule-kinesisstreams)  | 

# aws-events-regla-lambda
<a name="aws-events-rule-lambda"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versionado semántico](https://semver.org/)El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1events\$1rule\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-events-rule-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.eventsrulelambda  | 

## Overview
<a name="overview-9"></a>

 Este construcción de soluciones de AWS implementa una regla de eventos de AWS y una función de AWS Lambda. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
const { EventsRuleToLambdaProps, EventsRuleToLambda } from '@aws-solutions-constructs/aws-events-rule-lambda';

const props: EventsRuleToLambdaProps = {
    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'
    },
    eventRuleProps: {
      schedule: events.Schedule.rate(Duration.minutes(5))
    }
};

new EventsRuleToLambda(this, 'test-events-rule-lambda', props);
```

## Initializer
<a name="initializer-9"></a>

```
new EventsRuleToLambda(scope: Construct, id: string, props: EventsRuleToLambdaProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`EventsRuleToLambdaProps`](#pattern-construct-props-9) 

## Patrón de construcción
<a name="pattern-construct-props-9"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  LambdaFontionProps  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda. Se pasa por alto si unexistingLambdaObjse encuentra.  | 
|  EventRuleProps  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.RuleProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.RuleProps.html)  |  El usuario proporcionó EventRuleProps para anular los valores predeterminados  | 

## Propiedades de patrón
<a name="pattern-properties-9"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  Regla de eventos  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.Rule.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.Rule.html)  |  Devuelve una instancia de la regla Eventos creada por el patrón.  | 
|  LambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 

## Configuración predeterminada
<a name="default-settings-9"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Reglas de Amazon CloudWatch Events
<a name="amazon-cloudwatch-events-rule"></a>
+  Conceder permisos de privilegios mínimos a CloudWatch Events para activar la función Lambda 

### Función de AWS Lambda
<a name="aws-lambda-function-5"></a>
+  Configuración del rol de IAM de acceso limitado para la función Lambda 
+  Habilitar conexiones de reutilización con la función Keep-Alive para NodeJS Lambda 
+  Habilitar el X-Ray streo
+  Configuración de las variables de entorno:
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

## Architecture
<a name="architecture-9"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-events-rule-lambda.png)


## GitHub
<a name="github-9"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-events-rule-lambda](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-events-rule-lambda)  | 

# aws-events-rule-sns
<a name="aws-events-rule-sns"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1events\$1rule\$1sns  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-events-rule-sns  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.eventsrulesns  | 

## Overview
<a name="overview-30"></a>

 Este patrón implementa una regla de Amazon CloudWatch Events conectada a un tema de Amazon SNS. 

 Aquí hay una definición mínima de patrón implementable: 

```
import { Duration } from '@aws-cdk/core';
import * as events from '@aws-cdk/aws-events';
import * as iam from '@aws-cdk/aws-iam';
import { EventsRuleToSnsProps, EventsRuleToSns } from "@aws-solutions-constructs/aws-events-rule-sns";

const props: EventsRuleToSnsProps = {
    eventRuleProps: {
      schedule: events.Schedule.rate(Duration.minutes(5)),
    }
};

const constructStack = new EventsRuleToSns(this, 'test-construct', props);

// Grant yourself permissions to use the Customer Managed KMS Key
const policyStatement = new iam.PolicyStatement({
    actions: ["kms:Encrypt", "kms:Decrypt"],
    effect: iam.Effect.ALLOW,
    principals: [ new iam.AccountRootPrincipal() ],
    resources: [ "*" ]
});

constructStack.encryptionKey?.addToResourcePolicy(policyStatement);
```

## Initializer
<a name="initializer-30"></a>

```
new EventsRuleToSNS(scope: Construct, id: string, props: EventsRuleToSNSProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`EventsRuleToSnsProps`](#pattern-construct-props-30) 

## Patrón de construcción
<a name="pattern-construct-props-30"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  EventRuleProps  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.RuleProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.RuleProps.html)  |  Propiedades proporcionadas por el usuario para anular las propiedades predeterminadas de la regla CloudWatch Events.  | 
|  ¿ExistentetoPicobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html)  |  Instancia existente del objeto SNS Topic, proporcionando tanto esto comotopicPropsprovocará un error.  | 
|  ¿TopicProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.TopicProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.TopicProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas del tema SNS. Se pasa por alto si unexistingTopicObjse encuentra.  | 
|  EnableEncryptionWithCustomerManagedKey?  |  boolean  |  Si desea utilizar una clave de cifrado administrada por el cliente, ya sea administrada por esta aplicación CDK o importada. Si se importa una clave de cifrado, debe especificarse en el campoencryptionKeypara esta construcción.  | 
|  ¿encryptionKey?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.Key.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.Key.html)  |  Una clave de cifrado opcional existente que se utilizará en lugar de la clave de cifrado predeterminada.  | 
|  EncryptionKeyProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.KeyProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.KeyProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la clave de cifrado.  | 

## Propiedades de patrón
<a name="pattern-properties-30"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  Regla de eventos  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.Rule.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.Rule.html)  |  Devuelve una instancia de la regla Eventos creada por el patrón.  | 
|  SNSTopic  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html)  |  Devuelve una instancia del tema SNS creado por el patrón.  | 
|  encryptionKey  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.Key.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.Key.html)  |  Devuelve una instancia de la clave de cifrado creada por el patrón.  | 

## Configuración predeterminada
<a name="default-settings-30"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon CloudWatch Events, regla
<a name="amazon-events-rule-30"></a>
+  Conceda permisos de privilegios mínimos a CloudWatch Events para publicar en el tema SNS. 

### Tema de Amazon SNS
<a name="amazon-sns-30"></a>
+  Configurar permisos de acceso de privilegios mínimos para el tema SNS. 
+  Habilite el cifrado en el lado de servidor para el tema SNS mediante la clave de AWS KMS administrada por el cliente. 
+  Aplicación del cifrado de los datos en tránsito. 

## Architecture
<a name="architecture-30"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-events-rule-sns.png)


## GitHub
<a name="github-30"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-events-rule-sns](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-events-rule-sns)  | 

# aws-events-rule-sqs
<a name="aws-events-rule-sqs"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versionado semántico](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1events\$1rule\$1sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-events-rule-sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.eventsrulesqs  | 

## Overview
<a name="overview-31"></a>

 Este patrón implementa una regla de Amazon CloudWatch Events conectada a una cola de Amazon SQS. 

 Aquí hay una definición mínima de patrón implementable: 

```
import { Duration } from '@aws-cdk/core';
import * as events from '@aws-cdk/aws-events';
import * as iam from '@aws-cdk/aws-iam';
import { EventsRuleToSqsProps, EventsRuleToSqs } from "@aws-solutions-constructs/aws-events-rule-sqs";

const props: EventsRuleToSqsProps = {
    eventRuleProps: {
      schedule: events.Schedule.rate(Duration.minutes(5))
    }
};

const constructStack = new EventsRuleToSqs(this, 'test-construct', props);

// Grant yourself permissions to use the Customer Managed KMS Key
const policyStatement = new iam.PolicyStatement({
    actions: ["kms:Encrypt", "kms:Decrypt"],
    effect: iam.Effect.ALLOW,
    principals: [ new iam.AccountRootPrincipal() ],
    resources: [ "*" ]
});

constructStack.encryptionKey?.addToResourcePolicy(policyStatement);
```

## Initializer
<a name="initializer-31"></a>

```
new EventsRuleToSqs(scope: Construct, id: string, props: EventsRuleToSqsProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`EventsRuleToSqsProps`](#pattern-construct-props-31) 

## Patrón de construcción
<a name="pattern-construct-props-31"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  EventRuleProps  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.RuleProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.RuleProps.html)  |  Propiedades proporcionadas por el usuario para anular las propiedades predeterminadas de la regla CloudWatch Events.  | 
|  ExistingQueueObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Una cola SQS opcional existente que se utilizará en lugar de la cola predeterminada. Proporcionando tanto esto comoqueuePropsprovocará un error.  | 
|  ¿Props en cola?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la cola SQS. Se pasa por alto si unexistingQueueObjse encuentra.  | 
|  ¿EnableQueuePurging?  |  boolean  |  Si se deben conceder permisos adicionales a la función Lambda, lo que le permite depurar la cola SQS. El valor predeterminado es false.  | 
|  DeployDeadLetterQueue?  |  boolean  |  Si se debe crear una cola secundaria para utilizarse como cola de mensajes fallidos. El valor predeterminado es true.  | 
|  DeadletterQueueProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la cola de letras muertas. Solo se usa si eldeployDeadLetterQueuese establece en verdadero.  | 
|  ¿maxReceiveCount?  |  number  |  El número de veces que un mensaje se puede quitar sin éxito antes de que se traslade a la cola de mensajes fallidos. El valor predeterminado es 15.  | 
|  EnableEncryptionWithCustomerManagedKey?  |  boolean  |  Si desea utilizar una clave de cifrado administrada por el cliente, ya sea administrada por esta aplicación CDK o importada. Si importa una clave de cifrado, debe especificarse en el campoencryptionKeypara esta construcción.  | 
|  encryptionKey  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.Key.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.Key.html)  |  Una clave de cifrado opcional existente que se utilizará en lugar de la clave de cifrado predeterminada.  | 
|  EncryptionKeyProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.KeyProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.KeyProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la clave de cifrado.  | 

## Propiedades de patrón
<a name="pattern-properties-31"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  Regla de eventos  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.Rule.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.Rule.html)  |  Devuelve una instancia de la regla Eventos creada por el patrón.  | 
|  SQSqueue  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Devuelve una instancia de la cola SQS creada por el patrón.  | 
|  encryptionKey  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.Key.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.Key.html)  |  Devuelve una instancia de la clave de cifrado creada por el patrón.  | 
|  DeadLetterQueue?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Devuelve una instancia de la cola de letras muertas creada por el patrón, si se implementa una.  | 

## Configuración predeterminada
<a name="default-settings-31"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon CloudWatch Events
<a name="amazon-events-rule-31"></a>
+  Conceda permisos de privilegios mínimos a CloudWatch Events para publicar en la cola de SQS. 

### Cola de Amazon SQS
<a name="amazon-sqs-31"></a>
+  Implemente una cola de mensajes fallidos para la cola de origen. 
+  Active el cifrado del lado del servidor para la cola de origen mediante una clave de AWS KMS administrada por el cliente. 
+  Aplicar el cifrado de los datos en tránsito. 

## Architecture
<a name="architecture-31"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-events-rule-sqs.png)


## GitHub
<a name="github-31"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-events-rule-sqs](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-events-rule-sqs)  | 

# aws-events-rule-step-función
<a name="aws-events-rule-step-function"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1events\$1rule\$1step\$1function  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-events-rule-step-function  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.eventsrulestepfunction  | 

## Overview
<a name="overview-10"></a>

 Este constructo de soluciones de AWS implementa una regla de eventos de AWS y una función de AWS Step. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { EventsRuleToStepFunction, EventsRuleToStepFunctionProps } from '@aws-solutions-constructs/aws-events-rule-step-function';

const startState = new stepfunctions.Pass(this, 'StartState');

const props: EventsRuleToStepFunctionProps = {
    stateMachineProps: {
      definition: startState
    },
    eventRuleProps: {
      schedule: events.Schedule.rate(Duration.minutes(5))
    }
};

new EventsRuleToStepFunction(this, 'test-events-rule-step-function-stack', props);
```

## Initializer
<a name="initializer-10"></a>

```
new EventsRuleToStepFunction(scope: Construct, id: string, props: EventsRuleToStepFunctionProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`EventsRuleToStepFunctionProps`](#pattern-construct-props-10) 

## Patrón de construcción
<a name="pattern-construct-props-10"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  StateMachineProps  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-stepfunctions.StateMachineProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-stepfunctions.StateMachineProps.html)  |  Los apoyos proporcionados por el usuario opcionales para anular los apoyos predeterminados para SFN.StateMachine  | 
|  EventRuleProps  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.RuleProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.RuleProps.html)  |  El usuario proporcionó EventRuleProps para anular los valores predeterminados  | 
|  CreateCloudWatchalarms  |  boolean  |  Si desea crear alarmas recomendadas de CloudWatch.  | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  Concede accesorios opcionales proporcionados por el usuario para anular los accesorios predeterminados para el grupo de registros de CloudWatch Logs.  | 

## Propiedades de patrón
<a name="pattern-properties-10"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿CloudWatchalarms?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html)  |  Devuelve una lista de una o más alarmas de CloudWatch creadas por el patrón.  | 
|  Regla de eventos  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.Rule.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.Rule.html)  |  Devuelve una instancia de la regla Eventos creada por el patrón.  | 
|  StateMachine  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-stepfunctions.StateMachine.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-stepfunctions.StateMachine.html)  |  Devuelve una instancia de la máquina de estado creada por el patrón.  | 
|  StateMachineLogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del grupo de registros creado por el patrón para la máquina de estado.  | 

## Configuración predeterminada
<a name="default-settings-10"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon CloudWatch Events
<a name="amazon-cloudwatch-events-rule-1"></a>
+  Conceder permisos de privilegios mínimos a CloudWatch Events para activar la función Lambda 

### AWS Step Functional
<a name="aws-step-function"></a>
+  Activar registro de CloudWatch para API Gateway 
+  Implementar las mejores prácticas de las alarmas CloudWatch para la función Step 

## Architecture
<a name="architecture-10"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-events-rule-step-function.png)


## GitHub
<a name="github-10"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-constructs/aws-events-rule-step-function](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-events-rule-step-function)  | 

# aws-yot-kinesisfiremanse-s3
<a name="aws-iot-kinesisfirehose-s3"></a>

![\[Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1iot\$1kinesisfirehose\$1s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-iot-kinesisfirehose-s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.iotkinesisfirehoses3  | 

## Overview
<a name="overview-11"></a>

 Este constructo de soluciones de AWS implementa una regla de tema de AWS IoT MQTT para enviar datos a una secuencia de entrega de Amazon Kinesis Data Firehose conectada a un bucket de Amazon S3. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { IotToKinesisFirehoseToS3Props, IotToKinesisFirehoseToS3 } from '@aws-solutions-constructs/aws-iot-kinesisfirehose-s3';

const props: IotToKinesisFirehoseToS3Props = {
    iotTopicRuleProps: {
        topicRulePayload: {
            ruleDisabled: false,
            description: "Persistent storage of connected vehicle telematics data",
            sql: "SELECT * FROM 'connectedcar/telemetry/#'",
            actions: []
        }
    }
};

new IotToKinesisFirehoseToS3(this, 'test-iot-firehose-s3', props);
```

## Initializer
<a name="initializer-11"></a>

```
new IotToKinesisFirehoseToS3(scope: Construct, id: string, props: IotToKinesisFirehoseToS3Props);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`IotToKinesisFirehoseToS3Props`](#pattern-construct-props-11) 

## Patrón de construcción
<a name="pattern-construct-props-11"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  IottopicRuleProps  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iot.CfnTopicRuleProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iot.CfnTopicRuleProps.html)  |  El usuario proporcionó CFNTopICRuleProps para anular los valores predeterminados  | 
|  ¿KinesisFireHoseProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStreamProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStreamProps.html)  |  El usuario ha proporcionado accesorios opcionales para anular los accesorios predeterminados para Kinesis Firehose Delivery Stream  | 
|  ¿ExistenteBuckeTobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Instancia existente del objeto S3 Bucket, proporcionando tanto esto comobucketPropsprovocará un error.  | 
|  ¿BucketProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html)  |  El usuario proporcionó accesorios para anular los accesorios predeterminados para el cubo S3. Si esto se proporciona, entonces también proporcionabucketPropses un error.  | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  Los accesorios opcionales proporcionados por el usuario para anular los accesorios predeterminados para el grupo de registros de CloudWatch Logs.  | 

## Propiedades de patrón
<a name="pattern-properties-11"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  IotActionsRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia de la función de IAM creada por el patrón de la regla IoT.  | 
|  IotTopICRule  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iot.CfnTopicRule.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iot.CfnTopicRule.html)  |  Devuelve una instancia de la regla de tema de IoT creada por el patrón.  | 
|  KinesisFirehose  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStream.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStream.html)  |  Devuelve una instancia de la secuencia de entrega de Kinesis Firehose creada por el patrón.  | 
|  KinesisFireHoselogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del grupo de registros creado por el patrón al que se envían los registros de acceso de Kinesis Firehose.  | 
|  KinesisFireHoserole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia del rol de IAM creado por el patrón para la secuencia de entrega de Kinesis Firehose.  | 
|  ¿S3 Bucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del bucket S3 creado por el patrón.  | 
|  ¿S3LoggingBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del depósito de registro creado por el patrón para el bucket S3.  | 

## Configuración predeterminada
<a name="default-settings-11"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Regla de Amazon IoT
<a name="amazon-iot-rule"></a>
+  Configurar el rol de IAM de acceso mínimo con privilegios para Amazon IoT 

### Amazon Kinesis Firehose
<a name="amazon-kinesis-firehose"></a>
+  Habilitar el registro de CloudWatch para Kinesis Firehose 
+  Configurar el rol de IAM de acceso mínimo con privilegios para Amazon Kinesis Firehose 

### Bucket de Amazon S3
<a name="amazon-s3-bucket-1"></a>
+  Configurar el registro de acceso para S3 Bucket 
+  Habilitar el cifrado del lado del servidor para S3 Bucket utilizando la clave KMS administrada por AWS 
+  Activar el control de versiones para S3 Bucket 
+  No permitir el acceso público para S3 Bucket 
+  Conservar el depósito de S3 al eliminar la pila de CloudFormation 
+  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
<a name="architecture-11"></a>

![\[Workflow diagram showing spray bottle, cleaning, bucket, and cloud search icons with arrows.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-iot-kinesisfirehose-s3.png)


## GitHub
<a name="github-11"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-yot-kinesisfirehose-s3](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-iot-kinesisfirehose-s3)  | 

# aws-yot-lambda
<a name="aws-iot-lambda"></a>

![\[Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versionado semántico](https://semver.org/)modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1iot\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-iot-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.iotlambda  | 

## Overview
<a name="overview-13"></a>

 Este patrón de AWS Solutions Constructs implementa una regla de tema de AWS IoT MQTT y un patrón de función de AWS Lambda. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { IotToLambdaProps, IotToLambda } from '@aws-solutions-constructs/aws-iot-lambda';

const props: IotToLambdaProps = {
    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'
    },
    iotTopicRuleProps: {
        topicRulePayload: {
            ruleDisabled: false,
            description: "Processing of DTC messages from the AWS Connected Vehicle Solution.",
            sql: "SELECT * FROM 'connectedcar/dtc/#'",
            actions: []
        }
    }
};

new IotToLambda(this, 'test-iot-lambda-integration', props);
```

## Initializer
<a name="initializer-13"></a>

```
new IotToLambda(scope: Construct, id: string, props: IotToLambdaProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`IotToLambdaProps`](#pattern-construct-props-13) 

## Patrón de construcción
<a name="pattern-construct-props-13"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  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.  | 
|  ¿IottopicruleProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iot.CfnTopicRuleProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iot.CfnTopicRuleProps.html)  |  El usuario proporcionó CFNTopICRuleProps para anular los valores predeterminados  | 

## Propiedades de patrón
<a name="pattern-properties-13"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  IotTopICRule  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iot.CfnTopicRule.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iot.CfnTopicRule.html)  |  Devuelve una instancia de la regla de tema de IoT creada por el patrón.  | 
|  LambdaFinction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 

## Configuración predeterminada
<a name="default-settings-13"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Regla de Amazon IoT
<a name="amazon-iot-rule-2"></a>
+  Configurar el rol de IAM de acceso mínimo con privilegios para Amazon IoT. 

### Función de AWS Lambda
<a name="aws-lambda-function-7"></a>
+  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. 
+  Active el rastreo de X-Ray.
+  Configuración de las variables de entorno:
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

## Architecture
<a name="architecture-13"></a>

![\[Diagram showing data flow from a source to Lambda function and then to cloud search.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-iot-lambda.png)


## GitHub
<a name="github-13"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-iot-lambda](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-iot-lambda)  | 

# aws-iot-lambda-dynamodb
<a name="aws-iot-lambda-dynamodb"></a>

![\[Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1iot\$1lambda\$1dynamodb  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-iot-lambda-dynamodb  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.iotlambdadynamodb  | 

## Overview
<a name="overview-12"></a>

 Este patrón de AWS Solutions Constructs implementa una regla temática de AWS IoT, una función de AWS Lambda y una tabla de Amazon DynamoDB con los permisos menos privilegiados. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { IotToLambdaToDynamoDBProps,  IotToLambdaToDynamoDB } from '@aws-solutions-constructs/aws-iot-lambda-dynamodb';

const props: IotToLambdaToDynamoDBProps = {
    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'
    },
    iotTopicRuleProps: {
        topicRulePayload: {
            ruleDisabled: false,
            description: "Processing of DTC messages from the AWS Connected Vehicle Solution.",
            sql: "SELECT * FROM 'connectedcar/dtc/#'",
            actions: []
        }
    }
};

new IotToLambdaToDynamoDB(this, 'test-iot-lambda-dynamodb-stack', props);
```

## Initializer
<a name="initializer-12"></a>

```
new IotToLambdaToDynamoDB(scope: Construct, id: string, props: IotToLambdaToDynamoDBProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`IotToLambdaToDynamoDBProps`](#pattern-construct-props-12) 

## Patrón de construcción
<a name="pattern-construct-props-12"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  LambdaFontionProps  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  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.  | 
|  IottopicRuleProps  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iot.CfnTopicRuleProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iot.CfnTopicRuleProps.html)  |  Proporcionadas por el usuario los accesorios predeterminados  | 
|  ¿DynamotableProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.TableProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.TableProps.html)  |  Los accesorios proporcionados por el usuario opcionales para anular los accesorios predeterminados para la tabla de DynamoDB  | 
|  ¿Permisos de tabla?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.TableProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.TableProps.html)  |  Permisos de tabla opcionales que se concederán a la función Lambda. Puede que se especifique una de las siguientes opciones:All,Read,ReadWrite, o bienWrite.  | 

## Propiedades de patrón
<a name="pattern-properties-12"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  DynamoTable  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.Table.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.Table.html)  |  Devuelve una instancia de la tabla DynamoDB creada por el patrón.  | 
|  IotTopICRule  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iot.CfnTopicRule.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iot.CfnTopicRule.html)  |  Devuelve una instancia de la regla de tema de IoT creada por el patrón.  | 
|  LambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 

## Configuración predeterminada
<a name="default-settings-12"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Regla de Amazon IoT
<a name="amazon-iot-rule-1"></a>
+  Configurar el rol de IAM de acceso mínimo con privilegios para Amazon IoT. 

### Función de AWS Lambda
<a name="aws-lambda-function-6"></a>
+  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. 
+  Active el rastreo de X-Ray.
+  Configuración de las variables de entorno:
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

### Amazon DynamoDB Tabla
<a name="amazon-dynamodb-table-3"></a>
+  Establezca el modo de facturación para la tabla de DynamoDB en Bajo demanda (pago por solicitud). 
+  Habilite el cifrado del lado del servidor para DynamoDB Table mediante la clave KMS administrada por AWS. 
+  Crea una clave de partición llamada 'id' para DynamoDB Table. 
+  Conservar la tabla al eliminar la pila CloudFormation. 
+  Habilite las copias de seguridad continuas y la recuperación a un momento dado. 

## Architecture
<a name="architecture-12"></a>

![\[Data flow diagram showing API Gateway, AWS Lambda, and Amazon CloudSearch components.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-iot-lambda-dynamodb.png)


## GitHub
<a name="github-12"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-iot-lambda-dynamodb](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-iot-lambda-dynamodb)  | 

# aws-kinesisfiremanse-s3
<a name="aws-kinesisfirehose-s3"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versionado semántico](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws-kinesis-firehose-s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-kinesisfirehose-s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.kinesisfirehoses3  | 

## Overview
<a name="overview-15"></a>

 Este constructo de soluciones de AWS implementa un flujo de entrega de Amazon Kinesis Data Firehose conectado a un bucket de Amazon S3. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { KinesisFirehoseToS3 } from '@aws-solutions-constructs/aws-kinesisfirehose-s3';

new KinesisFirehoseToS3(this, 'test-firehose-s3', {});
```

## Initializer
<a name="initializer-15"></a>

```
new KinesisFirehoseToS3(scope: Construct, id: string, props: KinesisFirehoseToS3Props);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`KinesisFirehoseToS3Props`](#pattern-construct-props-15) 

## Patrón de construcción
<a name="pattern-construct-props-15"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿BucketProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html)  |  El usuario ha proporcionado accesorios opcionales para anular los accesorios predeterminados para el cubo S3.  | 
|  ¿ExistenteBuckeTobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html)  |  Instancia existente opcional de S3 Bucket. Si se proporciona esto, entonces también proporcionabucketPropses un error.  | 
|  ExistingLogingBuckeTobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html)  |  Instancia existente opcional de registro de S3 Bucket para el S3 Bucket creado por el patrón.  | 
|  ¿KinesisFireHoseProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStreamProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStreamProps.html) \$1 any  |  El usuario ha proporcionado accesorios opcionales para anular los accesorios predeterminados para Kinesis Firehose Delivery Stream.  | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  El usuario ha proporcionado accesorios opcionales para anular los accesorios predeterminados para el LogGroup de CloudWatchLogLogs.  | 

## Propiedades de patrón
<a name="pattern-properties-15"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  KinesisFirehose  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStream.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStream.html)  |  Devuelve una instancia de KinesisFireHose.cfnDeliveryStream creada por la construcción.  | 
|  KinesisFireHoselogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del logs.logGroup creado por la construcción para la secuencia de entrega de Kinesis Data Firehose.  | 
|  KinesisFireHoserole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia del IAM.Role creado por la construcción para el flujo de entrega de Kinesis Data Firehose.  | 
|  ¿Bucket de S3?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia de S3.Bucket creada por la construcción.  | 
|  ¿S3LoggingBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia de S3.Bucket creada por la construcción como depósito de registro para el depósito principal.  | 

## Configuración predeterminada
<a name="default-settings-15"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon Kinesis Firehose
<a name="amazon-kinesis-firehose-2"></a>
+  Habilitar el registro de CloudWatch para Kinesis Firehose 
+  Configurar el rol de IAM de acceso mínimo con privilegios para Amazon Kinesis Firehose 

### Bucket de Amazon S3
<a name="amazon-s3-bucket-3"></a>
+  Configurar el registro de acceso para S3 Bucket 
+  Habilitar el cifrado del lado del servidor para S3 Bucket utilizando la clave KMS administrada por AWS 
+  Activar el control de versiones para S3 Bucket 
+  No permitir el acceso público para S3 Bucket 
+  Conservar el depósito de S3 al eliminar la pila de 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
<a name="architecture-15"></a>

![\[Diagram showing data flow between icons for spray nozzle, bucket, cloud search, and bucket.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-kinesisfirehose-s3.png)


## GitHub
<a name="github-15"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-kinesisfirehose-s3](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-kinesisfirehose-s3)  | 

# aws-kinesisfiremanse-s3-y-kinesisanalytics
<a name="aws-kinesisfirehose-s3-and-kinesisanalytics"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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. Éstos no están sujetos a la[Versionado semántico](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1kinesisfirehose\$1s3\$1and\$1kinesisanalytics  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-kinesisfirehose-s3-and-kinesisanalytics  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.kinesisfirehoses3kinesisanalytics  | 

## Overview
<a name="overview-14"></a>

 Este constructo de soluciones de AWS implementa una transmisión de entrega de Amazon Kinesis Firehose conectada a un bucket de Amazon S3 y una aplicación de Amazon Kinesis Analytics. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { KinesisFirehoseToAnalyticsAndS3 } from '@aws-solutions-constructs/aws-kinesisfirehose-s3-and-kinesisanalytics';

new KinesisFirehoseToAnalyticsAndS3(this, 'FirehoseToS3AndAnalyticsPattern', {
    kinesisAnalyticsProps: {
        inputs: [{
            inputSchema: {
                recordColumns: [{
                    name: 'ticker_symbol',
                    sqlType: 'VARCHAR(4)',
                    mapping: '$.ticker_symbol'
                }, {
                    name: 'sector',
                    sqlType: 'VARCHAR(16)',
                    mapping: '$.sector'
                }, {
                    name: 'change',
                    sqlType: 'REAL',
                    mapping: '$.change'
                }, {
                    name: 'price',
                    sqlType: 'REAL',
                    mapping: '$.price'
                }],
                recordFormat: {
                    recordFormatType: 'JSON'
                },
                recordEncoding: 'UTF-8'
            },
            namePrefix: 'SOURCE_SQL_STREAM'
        }]
    }
});
```

## Initializer
<a name="initializer-14"></a>

```
new KinesisFirehoseToAnalyticsAndS3(scope: Construct, id: string, props: KinesisFirehoseToAnalyticsAndS3Props);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`KinesisFirehoseToAnalyticsAndS3Props`](#pattern-construct-props-14) 

## Patrón de construcción
<a name="pattern-construct-props-14"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿KinesisFireHoseProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStreamProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStreamProps.html)  |  Props opcionales proporcionados por el usuario para anular los accesorios predeterminados para la transmisión de entrega de Kinesis Firehose.  | 
|  KinesisanalyticsProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisanalytics.CfnApplicationProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisanalytics.CfnApplicationProps.html)  |  Props opcionales proporcionados por el usuario para anular los accesorios predeterminados para la aplicación Kinesis Analytics.  | 
|  ¿ExistenteBuckeTobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html)  |  Instancia existente del objeto S3 Bucket. Si se proporciona esto, entonces también proporcionabucketPropses un error. \$1  | 
|  ¿BucketProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas del depósito. Se pasa por alto si unexistingBucketObjse encuentra.  | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  Proporcionadas por el usuario opcionales para anular los accesorios predeterminados para el grupo de registros de CloudWatch Logs.  | 

## Propiedades de patrón
<a name="pattern-properties-14"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  Kinesisanalytics  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisanalytics.CfnApplication.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisanalytics.CfnApplication.html)  |  Devuelve una instancia de la aplicación Kinesis Analytics creada por el patrón.  | 
|  KinesisFirehose  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStream.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStream.html)  |  Devuelve una instancia de la secuencia de entrega de Kinesis Firehose creada por el patrón.  | 
|  KinesisFireHoselogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del grupo de registros creado por el patrón al que se envían los registros de acceso de Kinesis Firehose.  | 
|  KinesisFireHoserole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia del rol de IAM creado por el patrón para la secuencia de entrega de Kinesis Firehose.  | 
|  ¿S3 Bucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del bucket S3 creado por el patrón.  | 
|  ¿S3LoggingBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del depósito de registro creado por el patrón para el bucket S3.  | 

## Configuración predeterminada
<a name="default-settings-14"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon Kinesis Firehose
<a name="amazon-kinesis-firehose-1"></a>
+  Habilitar el registro de CloudWatch para Kinesis Firehose 
+  Configurar el rol de IAM de acceso mínimo con privilegios para Amazon Kinesis Firehose 

### Bucket de Amazon S3
<a name="amazon-s3-bucket-2"></a>
+  Configurar el registro de acceso para S3 Bucket 
+  Habilitar el cifrado del lado del servidor para S3 Bucket utilizando la clave KMS administrada por AWS 
+  Activar el control de versiones para S3 Bucket 
+  No permitir el acceso público para S3 Bucket 
+  Conservar el depósito de S3 al eliminar la pila de 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 

### Amazon Kinesis Data Analytics
<a name="amazon-kinesis-data-analytics"></a>
+  Configurar el rol de IAM de acceso mínimo con privilegios para Amazon Kinesis Analytics 

## Architecture
<a name="architecture-14"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-kinesisfirehose-s3-and-kinesisanalytics.png)


## GitHub
<a name="github-14"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-kinesisfiremanse-s3-y-kinesisanalytics](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-kinesisfirehose-s3-and-kinesisanalytics)  | 

# aws-kinesisstreams-gluejob
<a name="aws-kinesisstreams-gluejob"></a>

![\[Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versión semántica](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1kinesis\$1streams\$1gluejob  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-kinesisstreams-gluejob  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.kinesisstreamsgluejob  | 

## Overview
<a name="overview-40"></a>

 Este constructo de soluciones de AWS implementa un flujo de datos de Amazon Kinesis y configura un Job de AWS Glue para realizar una transformación ETL personalizada con los recursos y propiedades adecuados para la interacción y la seguridad. También crea un depósito de Amazon S3 donde se puede cargar el script de Python para el Job de AWS Glue.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import * as glue from '@aws-cdk/aws-glue';
import * as s3assets from '@aws-cdk/aws-s3-assets';
import { KinesisstreamsToGluejob } from '@aws-solutions-constructs/aws-kinesisstreams-gluejob';

const fieldSchema: glue.CfnTable.ColumnProperty[] = [
    {
        name: 'id',
        type: 'int',
        comment: 'Identifier for the record',
    },
    {
        name: 'name',
        type: 'string',
        comment: 'Name for the record',
    },
    {
        name: 'address',
        type: 'string',
        comment: 'Address for the record',
    },
    {
        name: 'value',
        type: 'int',
        comment: 'Value for the record',
    },
];

const customEtlJob = new KinesisstreamsToGluejob(this, 'CustomETL', {
    glueJobProps: {
        command: {
            name: 'gluestreaming',
            pythonVersion: '3',
            scriptLocation: new s3assets.Asset(this, 'ScriptLocation', {
                path: `${__dirname}/../etl/transform.py`,
            }).s3ObjectUrl,
        },
    },
    fieldSchema: fieldSchema,
});
```

## Initializer
<a name="initializer-40"></a>

```
new KinesisstreamsToGluejob(scope: Construct, id: string, props: KinesisstreamsToGluejobProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`KinesisstreamsToGluejobProps`](#pattern-construct-props-40) 

## Patrón de construcción
<a name="pattern-construct-props-40"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿KinesisStreamProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.StreamProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.StreamProps.html)  |  Props opcionales proporcionados por el usuario para anular los accesorios predeterminados para Amazon Kinesis Data Stream.  | 
|  ¿ExistenteStreamObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html)  |  Instancia existente de Kinesis Stream, proporcionando tanto esto comokinesisStreamPropsprovocará un error.  | 
|  ¿Gluejobprops?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-glue.CfnJobProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-glue.CfnJobProps.html)  |  Los accesorios proporcionados por el usuario para anular los accesorios predeterminados para el trabajo de AWS Glue.  | 
|  ¿Existe GlueJob?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-glue.CfnJob.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-glue.CfnJob.html)  |  Instancia existente de AWS Glue Job, proporcionando tanto esto comoglueJobPropsprovocará un error.  | 
|  ¿La base de datos existente?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-glue.CfnDatabase.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-glue.CfnDatabase.html)  |  Base de datos existente de AWS Glue que se utilizará con esta construcción. Si esto está configurado, entoncesdatabasePropsSe pasa por alto. | 
|  ¿Props de Base de Datos?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-glue.CfnDatabaseProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-glue.CfnDatabaseProps.html)  |  Los accesorios proporcionados por el usuario para anular los accesorios predeterminados utilizados para crear la base de datos de AWS Glue. | 
|  ¿ExistingTable?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-glue.CfnTable.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-glue.CfnTable.html)  |  Instancia existente de la tabla AWS Glue. Si esto está configurado, entoncestablePropsyfieldSchemaSe ignoran. | 
|  ¿TableProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-glue.CfnTableProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-glue.CfnTableProps.html)  |  Los apoyos proporcionados por el usuario para anular los accesorios predeterminados utilizados para crear una tabla de AWS Glue. | 
|  ¿Esquema de camposEsquema?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-glue.CfnTable.ColumnProperty.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-glue.CfnTable.ColumnProperty.html)  |  Estructura de esquema proporcionada por el usuario para crear una tabla de AWS Glue. | 
|  OutputDataStore?  |  [https://github.com/awslabs/aws-solutions-constructs/blob/3fd15e984943fe295690d8b0654d77157ffda8e3/source/patterns/%40aws-solutions-constructs/aws-kinesisstreams-gluejob/README.md#sinkdatastoreprops](https://github.com/awslabs/aws-solutions-constructs/blob/3fd15e984943fe295690d8b0654d77157ffda8e3/source/patterns/%40aws-solutions-constructs/aws-kinesisstreams-gluejob/README.md#sinkdatastoreprops)  |  Los accesorios proporcionados por el usuario para un depósito de Amazon S3 que almacena los resultados del trabajo de AWS Glue. Actualmente solo admite Amazon S3 como tipo de almacén de datos de salida. | 

## SinkDataStoreProps
<a name="sink-properties-40"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  Existentes3OutputBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Instancia existente de bucket de S3 donde se deben escribir los datos. Proporcionando tanto esto comooutputBucketPropsprovocará un error.  | 
|  OutputBucketProps  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html)  |  Propiedades de depósito proporcionadas por el usuario para crear el depósito de Amazon S3 utilizado para almacenar la salida del trabajo de AWS Glue. | 
|  DataStoreType  |  [https://github.com/awslabs/aws-solutions-constructs/blob/3fd15e984943fe295690d8b0654d77157ffda8e3/source/patterns/%40aws-solutions-constructs/aws-kinesisstreams-gluejob/README.md#sinkstoretype](https://github.com/awslabs/aws-solutions-constructs/blob/3fd15e984943fe295690d8b0654d77157ffda8e3/source/patterns/%40aws-solutions-constructs/aws-kinesisstreams-gluejob/README.md#sinkstoretype)  |  Tipo de almacén de datos del receptor.  | 

## SinkStoreType
<a name="sink-type-40"></a>

Enumeración de tipos de data store que podrían incluir S3, DynamoDB, DocumentDB, RDS o Redshift. La implementación actual de construcciones solo admite S3, pero puede agregar otros tipos de salida en el futuro.


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  S3  |  string  |  Tipo de almacenamiento S3  | 

## Configuración predeterminada
<a name="default-settings-40"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon Kinesis
<a name="w23aab9d115c29b5"></a>
+  Configure el rol de IAM de acceso mínimo con privilegios para Amazon Kinesis Data Stream. 
+  Habilite el cifrado del lado del servidor para Amazon Kinesis Stream mediante una clave KMS administrada de AWS. 
+  Implemente las mejores prácticas de las alarmas de Amazon CloudWatch para Amazon Kinesis Stream. 

### Glue Job
<a name="w23aab9d115c29b7"></a>
+  Cree una configuración de seguridad de AWS Glue que configure el cifrado para CloudWatch, Job Marcadores y S3. CloudWatch y los marcadores de Job se cifran mediante la clave KMS administrada de AWS creada para AWS Glue Service. El bucket S3 se configura con el modo de cifrado SSE-S3. 
+  Configure directivas de función de servicio que permitan a AWS Glue leer un flujo de Amazon Kinesis Data Streams. 

### Base Glue datos
<a name="w23aab9d115c29b9"></a>
+  Cree una base de datos AWS Glue. Se agregará una tabla de AWS Glue a la base de datos. En esta tabla se define el esquema de los registros almacenados en búfer en Amazon Kinesis Data Stream. 

### Glue e
<a name="w23aab9d115c29c11"></a>
+  Cree una tabla de AWS Glue. La definición del esquema de tabla se basa en la estructura JSON de los registros almacenados en búfer en Amazon Kinesis Data Stream. 

### Función de IAM
<a name="w23aab9d115c29c13"></a>
+  Función de ejecución de trabajos que tiene privilegios de 1) leer el script ETL desde la ubicación del depósito de Amazon S3, 2) leer registros del flujo de datos de Amazon Kinesis y 3) ejecutar el trabajo de Amazon Glue. 

### Cucharón S3 de salida
<a name="w23aab9d115c29c15"></a>
+  Un bucket de Amazon S3 donde se almacenan los resultados de la transformación de ETL. Este depósito se pasará como argumento al trabajo de AWS Glue creado para que pueda utilizarse en el script ETL para escribir datos en él. 

## Architecture
<a name="architecture-40"></a>

![\[AWS Glue job diagram showing data flow from Kinesis to various storage destinations.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-kinesisstreams-gluejob.png)


## GitHub
<a name="github-40"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-kinesisstreams-gluejob](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-kinesisstreams-gluejob)  | 

# aws-kinesisstreams-kinesisfiremanse-s3
<a name="aws-kinesisstreams-kinesisfirehose-s3"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1kinesisstreams\$1kinesisfirehose\$1s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-kinesis-streams-kinesis-firehose-s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.kinesisstreamskinesisfirehoses3  | 

## Overview
<a name="overview-34"></a>

 Este constructo de soluciones de AWS implementa una secuencia de datos de Amazon Kinesis (KDS) conectada a una secuencia de entrega de Amazon Kinesis Data Firehose (KDF) conectada a un bucket de Amazon S3. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { KinesisStreamsToKinesisFirehoseToS3 } from '@aws-solutions-constructs/aws-kinesisstreams-kinesisfirehose-s3';

new KinesisStreamsToKinesisFirehoseToS3(this, 'test-stream-firehose-s3', {});
```

## Initializer
<a name="initializer-34"></a>

```
new KinesisStreamsToKinesisFirehoseToS3(scope: Construct, id: string, props: KinesisStreams...ToS3Props);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`KinesisStreams...ToS3Props`](#pattern-construct-props-34) 

## Patrón de construcción
<a name="pattern-construct-props-34"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿BucketProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html)  |  El usuario ha proporcionado accesorios opcionales para anular los accesorios predeterminados para el cubo S3.  | 
|  ¿CreaCloudWatchalarms?  |  boolean  |  Opcional si se deben crear alarmas recomendadas de CloudWatch.  | 
|  ¿ExistenteBuckeTobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html)  |  Instancia existente opcional del objeto S3 Bucket. Si se proporciona esto, entonces también proporcionabucketPropses un error.  | 
|  ExistingLogingBuckeTobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html)  |  Instancia existente opcional de registro del objeto Bucket S3 para el cubo S3 creado por el patrón.  | 
|  ¿ExistenteStreamObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html)  |  Instancia existente de Kinesis Stream, proporcionando tanto esto comokinesisStreamPropsprovocará un error.  | 
|  ¿KinesisFireHoseProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStreamProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStreamProps.html) \$1 any  |  El usuario ha proporcionado accesorios opcionales para anular los accesorios predeterminados para Kinesis Firehose Delivery Stream.  | 
|  ¿KinesisStreamProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.StreamProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.StreamProps.html)  |  El usuario ha proporcionado accesorios opcionales para anular los accesorios predeterminados para la transmisión de Kinesis.  | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  El usuario ha proporcionado accesorios opcionales para anular los accesorios predeterminados para el grupo de registro de CloudWatchLogs.  | 

## Propiedades de patrón
<a name="pattern-properties-34"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿Cloudwatchalarms?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html)  |  Devuelve una lista de instancias de CloudWatch.Alarm creadas por el componente fijo.  | 
|  KinesisFirehose  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStream.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesisfirehose.CfnDeliveryStream.html)  |  Devuelve una instancia de KinesisFireHose.cfnDeliveryStream creada por la construcción.  | 
|  KinesisFireHoselogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del logs.logGroup creado por la construcción para la secuencia de entrega de Kinesis Data Firehose.  | 
|  KinesisFireHoserole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia del IAM.Role creado por la construcción para el flujo de entrega de Kinesis Data Firehose.  | 
|  KinesisStreamRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia del IAM.Role creado por la construcción para la secuencia Kinesis.  | 
|  ¿Bucket S3?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia de S3.Bucket creada por la construcción.  | 
|  ¿S3LoggingBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia de S3.Bucket creada por la construcción como depósito de registro para el depósito principal.  | 

## Configuración predeterminada
<a name="default-settings-34"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon Kinesis Stream
<a name="amazon-kinesis-stream-34"></a>
+  Configurar el rol de IAM de acceso mínimo con privilegios para Kinesis Stream 
+  Habilitar el cifrado del lado del servidor para Kinesis Stream mediante la clave KMS administrada de AWS 
+  Implementar las mejores prácticas de las alarmas de CloudWatch para Kinesis Stream 

### Amazon Kinesis Firehose
<a name="amazon-kinesis-firehose-34"></a>
+  Habilitar el registro de CloudWatch para Kinesis Firehose 
+  Configurar el rol de IAM de acceso mínimo con privilegios para Amazon Kinesis Firehose 

### Bucket de Amazon S3
<a name="amazon-s3-bucket-34"></a>
+  Configurar el registro de acceso para bucket de S3 
+  Habilitar el cifrado del lado del servidor para el bucket S3 mediante la clave KMS administrada por AWS 
+  Aplicación del cifrado de los datos en tránsito 
+  Habilitar el control de versiones de bucket 
+  No permitir el acceso público para el bucket S3 
+  Conservar el depósito de S3 al eliminar la pila de CloudFormation 
+  Aplicar regla de ciclo de vida para mover versiones de objetos no actuales al almacenamiento de Glacier después de 90 días 

## Architecture
<a name="architecture-34"></a>

![\[Workflow diagram showing data flow between components for face liveness detection.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-kinesisstreams-kinesisfirehose-s3.png)


## GitHub
<a name="github-34"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-kinesisstreams-kinesisfirehose-s3](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-kinesisstreams-kinesisfirehose-s3)  | 

# aws-kinesisstreams-lambda
<a name="aws-kinesisstreams-lambda"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/). Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws-kinesis-streams-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-kinesisstreams-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.kinesisstreamslambda  | 

## Overview
<a name="overview-16"></a>

 Este constructo de soluciones de AWS implementa una función Kinesis Stream y Lambda con los recursos y propiedades adecuados para la interacción y la seguridad. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { KinesisStreamsToLambda } from '@aws-solutions-constructs/aws-kinesisstreams-lambda';

new KinesisStreamsToLambda(this, 'KinesisToLambdaPattern', {
    kinesisEventSourceProps: {
        startingPosition: lambda.StartingPosition.TRIM_HORIZON,
        batchSize: 1
    },
    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
<a name="initializer-16"></a>

```
new KinesisStreamsToLambda(scope: Construct, id: string, props: KinesisStreamsToLambdaProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`KinesisStreamsToLambdaProps`](#pattern-construct-props-16) 

## Patrón de construcción
<a name="pattern-construct-props-16"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda. Se pasa por alto si seexistingLambdaObjse encuentra.  | 
|  ¿KinesisStreamProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.StreamProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.StreamProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la transmisión de Kinesis.  | 
|  ¿ExistenteStreamObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html)  |  Instancia existente de Kinesis Stream, proporcionando tanto esto comokinesisStreamPropsprovocará un error.  | 
|  ¿KinesisEventSourceProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda-event-sources.KinesisEventSourceProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda-event-sources.KinesisEventSourceProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la asignación de origen de eventos Lambda.  | 
|  CreateCloudWatchalarms  |  boolean  |  Si desea crear alarmas recomendadas de CloudWatch.  | 

## Propiedades de patrón
<a name="pattern-properties-16"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  Flujos de  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kinesis.Stream.html)  |  Devuelve una instancia de la secuencia Kinesis creada por el patrón.  | 
|  Lambdafunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 
|  KinesisStreamRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia del rol de IAM creado por el patrón para la secuencia de Kinesis.  | 
|  ¿Cloudwatchalarms?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html)  |  Devuelve una lista de una o más alarmas de CloudWatch creadas por el patrón.  | 

## Configuración predeterminada
<a name="default-settings-16"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Amazon Kinesis Stream
<a name="amazon-kinesis-stream"></a>
+  Configure el rol de IAM de acceso mínimo con privilegios para Kinesis Stream. 
+  Habilite el cifrado del lado del servidor para Kinesis Stream mediante la clave KMS administrada por AWS. 
+  Implemente las alarmas de CloudWatch de las mejores prácticas para Kinesis Stream. 

### Función de AWS Lambda
<a name="aws-lambda-function-8"></a>
+  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. 
+  Active el rastreo de X-Ray.
+  Habilitar funciones de control de errores: habilite bisect on function Error; establezca la antigüedad máxima de registro predeterminada (24 horas); establezca el intento máximo de reintento predeterminado (500); e implemente la cola de letras muertas SQS como destino en caso de fallo.
+  Configuración de las variables de entorno:
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

## Architecture
<a name="architecture-16"></a>

![\[Diagram showing data flow between Servicios de AWS: CloudWatch, Lambda, and IAM Role.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-kinesisstreams-lambda.png)


## GitHub
<a name="github-16"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-kinesisstreams-lambda](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-kinesisstreams-lambda)  | 

# aws-lambda-dynamodb
<a name="aws-lambda-dynamodb"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1dynamodb  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-lambda-dynamodb  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdadynamodb  | 

## Overview
<a name="overview-17"></a>

 Este constructo de soluciones de AWS implementa la función AWS Lambda y la tabla de Amazon DynamoDB con permisos de mínimo privilegio. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { LambdaToDynamoDBProps,  LambdaToDynamoDB } from '@aws-solutions-constructs/aws-lambda-dynamodb';

const props: LambdaToDynamoDBProps = {
    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'
    }
};

new LambdaToDynamoDB(this, 'test-lambda-dynamodb-stack', props);
```

## Initializer
<a name="initializer-17"></a>

```
new LambdaToDynamoDB(scope: Construct, id: string, props: LambdaToDynamoDBProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`LambdaToDynamoDBProps`](#pattern-construct-props-17) 

## Patrón de construcción
<a name="pattern-construct-props-17"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  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.  | 
|  ¿DynamotableProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.TableProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.TableProps.html)  |  Los accesorios proporcionados por el usuario opcionales para anular los accesorios predeterminados para la tabla de DynamoDB  | 
|  ExistingTableObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.Table.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.Table.html)  |  Instancia existente del objeto de tabla DynamoDB, proporcionando tanto esto comodynamoTablePropsprovocará un error.  | 
|  ¿Permisos de tabla?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.TableProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.TableProps.html)  |  Permisos de tabla opcionales que se concederán a la función Lambda. Puede que se especifique una de las siguientes opciones:All,Read,ReadWrite, o bienWrite.  | 
|  TableEnvironmentVariableName?  |  string  |  Nombre opcional para el conjunto de variables de entorno de tabla DynamoDB para la función Lambda.  | 
|  ¿Existe VPC?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  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 puerta de enlace en la VPC para Amazon DynamoDB. Si se proporciona una VPC existente, eldeployVpcno se puedetrue. Utilizaec2.IVpcpara permitir que los clientes proporcionen VPC que existen fuera de la pila mediante el comando[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.Vpc.html#static-fromwbrlookupscope-id-options](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.Vpc.html#static-fromwbrlookupscope-id-options)Método de.  | 
|  ¿VPCProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la nueva VPC.enableDnsHostnames,enableDnsSupport,natGateways, ysubnetConfigurationestán establecidos por el patrón, por lo que cualquier valor para esas propiedades suministradas aquí será anulado. SideployVpcno estrueentonces esta propiedad será ignorada.  | 
|  ¿Implementar VPC?  |  boolean  |  Si se crea una nueva VPC basada envpcPropsen el que desplegar este patrón. Si se establece esto en true, se implementará la VPC mínima y más privada para ejecutar el patrón: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/aws-lambda-dynamodb.html) Si esta propiedad estrue, luegoexistingVpcNo se puede especificar . El valor predeterminado es false.  | 

## Propiedades de patrón
<a name="pattern-properties-17"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  DynamoTable  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.Table.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-dynamodb.Table.html)  |  Devuelve una instancia de la tabla DynamoDB creada por el patrón.  | 
|  Lambdafunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 
|  ¿VPC?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  Devuelve una interfaz en 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
<a name="default-settings-17"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Función de AWS Lambda
<a name="aws-lambda-function-9"></a>
+  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. 
+  Active el rastreo de X-Ray.
+  Configuración de las variables de entorno:
  +  `DDB_TABLE_NAME` (predeterminado)
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

### Amazon DynamoDB Tabla
<a name="amazon-dynamodb-table-4"></a>
+  Establezca el modo de facturación para la tabla de DynamoDB en Bajo demanda (pago por solicitud). 
+  Habilite el cifrado del lado del servidor para DynamoDB Table mediante la clave KMS administrada por AWS. 
+  Crea una clave de partición llamada 'id' para DynamoDB Table. 
+  Conservar la tabla al eliminar la pila CloudFormation. 
+  Habilite las copias de seguridad continuas y la recuperación a un momento dado. 

## Architecture
<a name="architecture-17"></a>

![\[Diagram showing data flow from OpenSearch and Lambda to DynamoDB and CloudSearch.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-lambda-dynamodb.png)


## GitHub
<a name="github-17"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-lambda-dynamodb](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-lambda-dynamodb)  | 

# aws-lambda-elasticsearch-kibana
<a name="aws-lambda-elasticsearch-kibana"></a>

![\[Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1elasticsearch\$1kibana  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografiado  |  @aws-solutions-constructs/aws-lambda-elasticsearch-kibana  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdaelasticsearchkibana  | 

## Overview
<a name="overview-18"></a>

 Este constructo de soluciones de AWS implementa una función de AWS Lambda y un dominio de Amazon Elasticsearch Service con permisos con menos privilegios.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { LambdaToElasticSearchAndKibana } from '@aws-solutions-constructs/aws-lambda-elasticsearch-kibana';
import { Aws } from "@aws-cdk/core";

const lambdaProps: lambda.FunctionProps = {
    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'
};

new LambdaToElasticSearchAndKibana(this, 'test-lambda-elasticsearch-kibana', {
    lambdaFunctionProps: lambdaProps,
    domainName: 'test-domain',
    // TODO: Ensure the Cognito domain name is globally unique
    cognitoDomainName: 'globallyuniquedomain' + Aws.ACCOUNT_ID;
});
```

## Initializer
<a name="initializer-18"></a>

```
new LambdaToElasticSearchAndKibana(scope: Construct, id: string, props: LambdaToElasticSearchAndKibanaProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`LambdaToElasticSearchAndKibanaProps`](#pattern-construct-props-18) 

## Patrón de construcción
<a name="pattern-construct-props-18"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda. Se pasa por alto si unexistingLambdaObjse encuentra.  | 
|  ¿EsDomainProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-elasticsearch.CfnDomainProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-elasticsearch.CfnDomainProps.html)  |  Los accesorios proporcionados por el usuario opcionales para anular los accesorios predeterminados para Amazon Elasticsearch Service  | 
|  domainName  |  string  |  Nombre de dominio para Cognito y Amazon Elasticsearch Service  | 
|  CognitoDomainName?  |  string  |  Nombre de dominio opcional de Cognito. Si se proporciona, se utilizará para el dominio Cognito, ydomainNamese utilizará para el dominio Elasticsearch.  | 
|  CreateCloudWatchalarms  |  boolean  |  Si desea crear alarmas recomendadas de CloudWatch.  | 
|  DomainEndPointEnvironmentVariableName?  |  string  |  Nombre opcional para el conjunto de variables de entorno de extremo de dominio ElasticSearch para la función Lambda.  | 

## Propiedades de patrón
<a name="pattern-properties-18"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿Cloudwatchalarms?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html)  |  Devuelve una lista de una o más alarmas de CloudWatch creadas por el patrón.  | 
|  ElasticSearchDomain  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-elasticsearch.CfnDomain.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-elasticsearch.CfnDomain.html)  |  Devuelve una instancia del dominio Elasticsearch creado por el patrón.  | 
|  ElasticSearchDomainRole  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.Role.html)  |  Devuelve una instancia del rol de IAM creado por el patrón para el dominio Elasticsearch.  | 
|  IdentityPool  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.CfnIdentityPool.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.CfnIdentityPool.html)  |  Devuelve una instancia del grupo de identidades de Cognito creado por el patrón.  | 
|  LambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 
|  userPool  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.UserPool.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.UserPool.html)  |  Devuelve una instancia del grupo de usuarios de Cognito creado por el patrón.  | 
|  UserPoolClient  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.UserPoolClient.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cognito.UserPoolClient.html)  |  Devuelve una instancia del cliente de grupo de usuarios de Cognito creado por el patrón.  | 

## Lambda function
<a name="lambda-function-18"></a>

Este patrón requiere una función Lambda que pueda publicar datos en el servicio Elasticsearch desde la secuencia de DynamoDB. Se proporciona una función de muestra[Aquí](https://github.com/awslabs/aws-solutions-constructs/blob/master/source/patterns/%40aws-solutions-constructs/aws-lambda-elasticsearch-kibana/test/lambda/index.js).

## Configuración predeterminada
<a name="default-settings-18"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Función de AWS Lambda
<a name="aws-lambda-function-10"></a>
+  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. 
+  Active el rastreo de X-Ray.
+  Configuración de las variables de entorno:
  +  `DOMAIN_ENDPOINT` (predeterminado)
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

### Amazon Cognito
<a name="amazon-cognito-2"></a>
+  Establezca la directiva de contraseñas para grupos de usuarios. 
+  Aplique el modo de seguridad avanzada para los grupos de usuarios. 

### Amazon Elasticsearch Service
<a name="amazon-elasticsearch-service-1"></a>
+  Implemente las prácticas recomendadas de CloudWatch Alarms para el dominio Elasticsearch. 
+  Proteja el acceso al panel de Kibana con Grupos de usuarios de Cognito. 
+  Habilite el cifrado del lado del servidor para el dominio Elasticsearch mediante la clave KMS administrada por AWS. 
+  Habilite el cifrado de nodo a nodo para el dominio Elasticsearch. 
+  Configure el clúster para el dominio Amazon ES. 

## Architecture
<a name="architecture-18"></a>

![\[Diagram showing data flow between AWS Lambda, Amazon Athena, and identity verification.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-lambda-elasticsearch-kibana.png)


## GitHub
<a name="github-18"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-lambda-elasticsearch-kibana](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-lambda-elasticsearch-kibana)  | 

# aws-lambda-s3
<a name="aws-lambda-s3"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-lambda-s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdas3  | 

## Overview
<a name="overview-19"></a>

 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
<a name="initializer-19"></a>

```
new LambdaToS3(scope: Construct, id: string, props: LambdaToS3Props);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`LambdaToS3Props`](#pattern-construct-props-19) 

## Patrón de construcción
<a name="pattern-construct-props-19"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  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?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html)  |  Instancia existente del objeto S3 Bucket. Si se proporciona esto, entonces también proporcionabucketPropses un error.  | 
|  ¿BucketProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html)  |  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?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  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 comando[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.Vpc.html#static-fromwbrlookupscope-id-options](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.Vpc.html#static-fromwbrlookupscope-id-options)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: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/aws-lambda-s3.html) Si esta propiedad estrue, luegoexistingVpcNo se puede especificar . El valor predeterminado es false.  | 
|  ¿VPCProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html)  |  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
<a name="pattern-properties-19"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  LambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 
|  ¿S3 Bucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del bucket S3 creado por el patrón.  | 
|  ¿S3LoggingBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del depósito de registro creado por el patrón para el bucket S3.  | 
|  ¿VPC?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  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
<a name="default-settings-19"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Función de AWS Lambda
<a name="aws-lambda-function-11"></a>
+  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
<a name="amazon-s3-bucket-4"></a>
+  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
<a name="architecture-19"></a>

![\[AWS Lambda function interacting with Amazon S3 bucket, mediated by an IAM role.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-lambda-s3.png)


## GitHub
<a name="github-19"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-lambda-s3](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-lambda-s3)  | 

# aws-lambda-ssmstringparameter
<a name="aws-lambda-ssmstringparameter"></a>

![\[Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1ssm\$1string\$1parameter  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-lambda-ssmstringparameter  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdassmstringparameter  | 

## Overview
<a name="overview-43"></a>

 Este constructo de soluciones de AWS implementa la función AWS Lambda y el parámetro AWS Systems Manager Parameter Store String con los permisos menos privilegiados. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
const { LambdaToSsmstringparameterProps,  LambdaToSsmstringparameter } from '@aws-solutions-constructs/aws-lambda-ssmstringparameter';

const props: LambdaToSsmstringparameterProps = {
    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'
    }, 
    stringParameterProps: { stringValue: "test-string-value" }
};

new LambdaToSsmstringparameter(this, 'test-lambda-ssmstringparameter-stack', props);
```

## Initializer
<a name="initializer-43"></a>

```
new LambdaToSsmstringparameter(scope: Construct, id: string, props: LambdaToSsmstringparameterProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`LambdaToSsmstringparameterProps`](#pattern-construct-props-43) 

## Patrón de construcción
<a name="pattern-construct-props-43"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda. Se pasa por alto si seexistingLambdaObjse encuentra.  | 
|  ExistingStringParameterObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ssm.StringParameter.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ssm.StringParameter.html)  |  Instancia existente del objeto de parámetro SSM String, proporcionando tanto esto comostringParameterPropsprovocará un error.  | 
|  StringParameterProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ssm.StringParameterProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ssm.StringParameterProps.html)  |  El usuario ha proporcionado accesorios opcionales para anular los apoyos predeterminados para el parámetro SSM String. SiexistingStringParameterObjno está establecido,stringParameterPropses obligatorio. El único soporte[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ssm.StringParameterProps.html#type](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ssm.StringParameterProps.html#type)es[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ssm.ParameterType.html#string](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ssm.ParameterType.html#string)si se proporciona un valor diferente, se anulará.  | 
|  StringParameterEnvironmentVariableName?  |  string  |  Nombre opcional para el conjunto de variables de entorno del parámetro SSM String para la función Lambda.  | 
|  ¿Existe VPC?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  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 el parámetro VPC for AWS Systems Manager. Si se proporciona una VPC existente, eldeployVpcno se puedetrue. Usaec2.IVpcpara permitir que los clientes suministren VPC que existen fuera de la pila mediante el comando[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.Vpc.html#static-fromwbrlookupscope-id-options](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.Vpc.html#static-fromwbrlookupscope-id-options)Método de.  | 
|  ¿VPCProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html)  |  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 estrueentonces esta propiedad será ignorada.  | 
|  ¿Implementar VPC?  |  boolean  |  Si se crea una VPC nueva 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: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/aws-lambda-ssmstringparameter.html) Si esta propiedad está establecida entrue, luegoexistingVpcNo se puede especificar . El valor predeterminado es false.  | 
|  StringParameterPermissions?  |  string  |  Permisos opcionales del parámetro SSM String para conceder a la función Lambda. Puede especificarse una de las siguientes opciones:Read,ReadWrite.  | 

## Propiedades de patrón
<a name="pattern-properties-43"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  Lambdafunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia delambda.Functioncreado por el componente fijo.  | 
|  StringParameter  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ssm.StringParameter.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ssm.StringParameter.html)  |  Devuelve una instancia dessm.StringParametercreado por el componente fijo.  | 
|  ¿VPC?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  Devuelve una interfaz en 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
<a name="default-settings-43"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Función de AWS Lambda
<a name="aws-lambda-function-9"></a>
+  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. 
+  Active el rastreo de X-Ray.
+  Configuración de las variables de entorno:
  +  `SSM_STRING_PARAMETER_NAME` (predeterminado)
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

### String de almacén de parámetros de Amazon Systems Manager
<a name="amazon-ssm-43"></a>
+  Habilite el acceso de sólo lectura para la función AWS Lambda asociada. 
+  Crea un nuevo parámetro de cadena SSM con los valores proporcionados. 
+  Conservar el parámetro SSM String al eliminar la pila CloudFormation. 

## Architecture
<a name="architecture-43"></a>

![\[AWS Lambda logo connected to CloudFormation and AWSCloudWatch icons via arrows.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-lambda-ssmstringparameter.png)


## GitHub
<a name="github-43"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-lambda-ssmstringparameter](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-lambda-ssmstringparameter)  | 

# aws-lambda-sagemakerendpoint
<a name="aws-lambda-sagemakerendpoint"></a>

![\[Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1sagemakerendpoint  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-lambda-sagemakerendpoint  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdasagemakerendpoint  | 

## Overview
<a name="overview-41"></a>

 Este constructo de soluciones de AWS implementa una función de AWS Lambda conectada a un punto final de Amazon Sagemaker.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { Duration } from '@aws-cdk/core';
import * as lambda from '@aws-cdk/aws-lambda';
import {
  LambdaToSagemakerEndpoint,
  LambdaToSagemakerEndpointProps,
} from '@aws-solutions-constructs/aws-lambda-sagemakerendpoint';

const constructProps: LambdaToSagemakerEndpointProps = {
  modelProps: {
    primaryContainer: {
      image: '{{AccountId}}.dkr.ecr.{{region}}.amazonaws.com/linear-learner:latest',
      modelDataUrl: 's3://{{bucket-name}}/{{prefix}}/model.tar.gz',
    },
  },
  lambdaFunctionProps: {
    runtime: lambda.Runtime.PYTHON_3_8,
    // This assumes a handler function in lib/lambda/index.py
    code: lambda.Code.fromAsset(`${__dirname}/lambda`),
    handler: 'index.handler',
    timeout: Duration.minutes(5),
    memorySize: 128,
  },
};

new LambdaToSagemakerEndpoint(this, 'LambdaToSagemakerEndpointPattern', constructProps);
```

## Initializer
<a name="initializer-41"></a>

```
new LambdaToSagemakerEndpoint(scope: Construct, id: string, props: LambdaToSagemakerEndpointProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`LambdaToSagemakerEndpointProps`](#pattern-construct-props-41) 

## Patrón de construcción
<a name="pattern-construct-props-41"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda. | 
|  ExistenteSageMakerendPointObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sagemaker.CfnEndpoint.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sagemaker.CfnEndpoint.html)  |  Un Enpoint Sagemaker existente opcional que se va a utilizar. Proporcionando tanto esto comoendpointPropsprovocará un error.  | 
|  ¿ModelProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sagemaker.CfnModelProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sagemaker.CfnModelProps.html) \$1 any  |  Propiedades proporcionadas por el usuario para anular las propiedades predeterminadas para el modelo de Sagemaker. Como mínimomodelProps.primaryContainerpara crear un modelo. De forma predeterminada, el patrón creará un rol con los permisos mínimos requeridos, pero el cliente puede proporcionar un rol personalizado con capacidades adicionales usandomodelProps.executionRoleArn.  | 
|  EndPointConfigProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sagemaker.CfnEndpointConfigProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sagemaker.CfnEndpointConfigProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la configuración de Sagemaker Endpoint. | 
|  ¿EndpointProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sagemaker.CfnEndpointProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sagemaker.CfnEndpointProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas para el extremo de Sagemaker. | 
|  ¿Existe VPC?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  VPC opcional existente en la que se debe implementar esta construcción. Cuando se implementan en una VPC, la función Lambda y Sagemaker Endpoint usarán ENI en la VPC para acceder a los recursos de red. Se creará un extremo de interfaz en la VPC para Amazon Sagemaker Runtime y Amazon S3 VPC Endpoint. Si se proporciona una VPC existente, eldeployVpcpropiedad no puede sertrue. | 
|  ¿VPCProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la nueva VPC.enableDnsHostnames,enableDnsSupport,natGatewaysysubnetConfigurationestán establecidos por el constructo, por lo que cualquier valor para las propiedades suministradas aquí será anulado. SideployVpcno estrue, esta propiedad será ignorada. | 
|  ¿Implementar VPC?  |  boolean  |  Si se crea una VPC nueva 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: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/aws-lambda-sagemakerendpoint.html) Si esta propiedad está establecida entrue, luegoexistingVpcNo se puede especificar . El valor predeterminado es false.  | 
|  SageMakerEnvironmentVariableName?  |  string  |  Nombre opcional para el conjunto de variables de entorno de punto final de SageMaker para la función Lambda. | 

## Propiedades de patrón
<a name="pattern-properties-41"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  Lambdafunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 
|  SageMakerEndPoint  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sagemaker.CfnEndpoint.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sagemaker.CfnEndpoint.html)  |  Devuelve una instancia del extremo de Sagemaker creado por el patrón.  | 
|  SageMakerEndPointConfig?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sagemaker.CfnEndpointConfig.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sagemaker.CfnEndpointConfig.html)  |  Devuelve una instancia del SageMaker EndpointConfig creado por el patrón, siexistingSagemakerEndpointObjno se proporciona. | 
|  ¿Modelo SageMakerModel?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sagemaker.CfnModel.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sagemaker.CfnModel.html)  |  Devuelve una instancia del modelo de Sagemaker creado por el patrón, siexistingSagemakerEndpointObjno se proporciona. | 
|  ¿VPC?  |  ec2.IVpc  |  Devuelve una instancia de la VPC creada por el patrón, sideployVpcestrue, o siexistingVpctoma el valor. | 

## Configuración predeterminada
<a name="default-settings-41"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Función de AWS Lambda
<a name="w23aab9d147c25b5"></a>
+  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. 
+  Permita que la función invoque el extremo de Sagemaker para inferencias. 
+  Configure la función para acceder a los recursos de la VPC, donde se implementa el extremo de Sagemaker. 
+  Active Rastreo de X-Ray. 
+  Configuración de las variables de entorno: 
  + `SAGEMAKER_ENDPOINT_NAME` (predeterminado)
  + `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

### Punto de enlace de Amazon Sagemaker
<a name="w23aab9d147c25b7"></a>
+  Configure privilegios limitados para crear recursos de Sagemaker. 
+  Implemente el modelo de Sagemaker, EndPointConfig y endpoint. 
+  Configure el extremo de Sagemaker que se va a implementar en una VPC. 
+  Implemente S3 VPC Endpoint y Sagemaker Runtime VPC Interface. 

## Architecture
<a name="architecture-41"></a>

![\[Diagram showing AWS Lambda connected to CloudWatch, SageMaker Endpoint, and IAM Roles.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-lambda-sagemakerendpoint.png)


## GitHub
<a name="github-41"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-lambda-sagemakerendpoint](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-lambda-sagemakerendpoint)  | 

# aws-lambda-secretsmanager
<a name="aws-lambda-secretsmanager"></a>

![\[Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1secretsmanager  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-lambda-secretsmanager  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdasecretsmanager  | 

## Overview
<a name="overview-42"></a>

 Este constructo de soluciones de AWS implementa la función AWS Lambda y el secreto de AWS Secrets Manager con los permisos menos privilegiados.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
const { LambdaToSecretsmanagerProps,  LambdaToSecretsmanager } from '@aws-solutions-constructs/aws-lambda-secretsmanager';

const props: LambdaToSecretsmanagerProps = {
    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'
    },
};

new LambdaToSecretsmanager(this, 'test-lambda-secretsmanager-stack', props);
```

## Initializer
<a name="initializer-42"></a>

```
new LambdaToSecretsmanager(scope: Construct, id: string, props: LambdaToSecretsmanagerProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`LambdaToSecretsmanagerProps`](#pattern-construct-props-42) 

## Patrón de construcción
<a name="pattern-construct-props-42"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  El usuario proporcionó accesorios para anular los accesorios predeterminados para la función Lambda.  | 
|  ¿SecretProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-secretsmanager.SecretProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-secretsmanager.SecretProps.html)  |  El usuario opcional proporcionó accesorios para anular los accesorios predeterminados para Secrets Manager.  | 
|  ¿ExistenteSecretObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-secretsmanager.Secret.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-secretsmanager.Secret.html)  |  Instancia existente de Secrets Manager objeto secreto, Si esto se establece entonces elsecretPropsse ignora.  | 
|  ¿GrantWriteAccess?  |  boolean  |  Acceso de escritura opcional al secreto para la función Lambda (sólo lectura por defecto).  | 
|  SecretenEnvironmentVariableName?  |  string  |  Nombre opcional para el conjunto de variables de entorno secretas de Secrets Manager para la función Lambda.  | 
|  ¿Existe VPC?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  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 AWS Secrets Manager. Si se proporciona una VPC existente, eldeployVpcno se puedetrue. Esto usaec2.IVpcpara permitir que los clientes suministren VPC que existen fuera de la pila mediante el comando[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.Vpc.html#static-fromwbrlookupscope-id-options](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.Vpc.html#static-fromwbrlookupscope-id-options)Método de.  | 
|  ¿VPCProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la nueva VPC.enableDnsHostnames,enableDnsSupport,natGateways, ysubnetConfigurationestán establecidos por el patrón, por lo que cualquier valor para esas propiedades suministradas aquí será anulado. SideployVpcno estrueesta propiedad se ignorará.  | 
|  ¿Implementar VPC?  |  boolean  |  Si se crea una VPC nueva 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: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/aws-lambda-secretsmanager.html) Si esta propiedad estrue, luegoexistingVpcNo se puede especificar . El valor predeterminado es false.  | 

## Propiedades de patrón
<a name="pattern-properties-42"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  Lambdafunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia delambda.Functioncreado por el componente fijo.  | 
|  secreta  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-secretsmanager.Secret.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-secretsmanager.Secret.html)  |  Devuelve una instancia desecretsmanager.Secretcreado por el componente fijo.  | 
|  ¿VPC?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  Devuelve una interfaz en 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
<a name="default-settings-42"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Función de AWS Lambda
<a name="aws-lambda-function-42"></a>
+  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. 
+  Active el rastreo de X-Ray.
+  Configuración de las variables de entorno:
  +  (predeterminado) SECRET\$1ARN que contiene el ARN del secreto como devuelto por CDK[SecretArn](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-secretsmanager.Secret.html#secretarn)Propiedad
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

### Secreto de Amazon Secrets Manager
<a name="aws-secretsmanger-secret"></a>
+  Habilitar el acceso de sólo lectura para la función AWS Lambda asociada 
+  Habilitar el cifrado del lado del servidor mediante una clave KMS predeterminada para la cuenta y la región 
+  Crea un nuevo secerto:
  + (predeterminado) nombre aleatorio
  + (predeterminado) valor aleatorio
+  Conservar el secreto al eliminar la pila de CloudFormation 

## Architecture
<a name="architecture-42"></a>

![\[Diagram showing AWS Lambda icon connecting to security and cloud search icons.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-lambda-secretsmanager.png)


## GitHub
<a name="github-42"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-lambda-secretsmanager](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-lambda-secretsmanager)  | 

# aws-lambda-sns
<a name="aws-lambda-sns"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1sns  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-lambda-sns  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdasns  | 

## Overview
<a name="overview-20"></a>

 Este constructo de soluciones de AWS implementa una función de AWS Lambda conectada a un tema de Amazon SNS.

 Aquí hay una definición mínima de patrón implementable en TypeScript:

```
import { LambdaToSns, LambdaToSnsProps } from "@aws-solutions-constructs/aws-lambda-sns";

new LambdaToSns(this, 'test-lambda-sns', {
    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
<a name="initializer-20"></a>

```
new LambdaToSns(scope: Construct, id: string, props: LambdaToSnsProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`LambdaToSnsProps`](#pattern-construct-props-20) 

## Patrón de construcción
<a name="pattern-construct-props-20"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda. Si se pasa por alto unexistingLambdaObjse encuentra.  | 
|  ¿ExistentetoPicobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html)  |  Instancia existente del objeto SNS Topic, proporcionando tanto esto comotopicPropsprovocará un error.  | 
|  ¿TopicProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.TopicProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.TopicProps.html)  |  Propiedades proporcionadas por el usuario opcionales para anular las propiedades predeterminadas para el tema SNS.  | 
|  ¿Existe VPC?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  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. Para ello se utilizaec2.IVpcpara permitir que los clientes suministren VPC que existen fuera de la pila mediante el comando[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.Vpc.html#static-fromwbrlookupscope-id-options](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.Vpc.html#static-fromwbrlookupscope-id-options)Método de.  | 
|  ¿Implementar VPC?  |  boolean  |  Si se va a crear una VPC nueva basada envpcPropsen el que desplegar este patrón. Si se establece este valor entrueimplementará la VPC mínima y más privada para ejecutar el patrón: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/aws-lambda-sns.html) Si esta propiedad estrue, luegoexistingVpcNo se puede especificar . El valor predeterminado es false.  | 
|  ¿VPCProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html)  |  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 estrueSi se pasa por alto esta propiedad.  | 
|  TopArnEnvironmentVariableName?  |  string  |  Nombre opcional para el conjunto de variables de entorno ARN del tema SNS para la función Lambda.  | 
|  TopNameEnvironmentVariableName?  |  string  |  Nombre opcional para el conjunto de variables de entorno de nombre de tema SNS para la función Lambda.  | 

## Propiedades de patrón
<a name="pattern-properties-20"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  LambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 
|  SNSTopic  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html)  |  Devuelve una instancia del tema SNS creado por el patrón.  | 
|  ¿VPC?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  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
<a name="default-settings-20"></a>

 La implementación inmediata del componente fijo sin anulación establecerá los siguientes valores predeterminados: 

### Función de AWS Lambda
<a name="aws-lambda-function-12"></a>
+  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. 
+  Active el rastreo de X-Ray.
+  Configuración de las variables de entorno:
  +  `SNS_TOPIC_NAME` (predeterminado)
  +  `SNS_TOPIC_ARN` (predeterminado)
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

### Tema de Amazon SNS
<a name="amazon-sns-topic"></a>
+  Configurar permisos de acceso de privilegios mínimos para el tema SNS. 
+  Habilite el cifrado del lado del servidor mediante la clave KMS administrada por AWS. 
+  Aplicación del cifrado de los datos en tránsito. 

## Architecture
<a name="architecture-20"></a>

![\[AWS Lambda connected to Amazon Simple Notification Service with IAM role below Lambda.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-lambda-sns.png)


## GitHub
<a name="github-20"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-lambda-sns](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-lambda-sns)  | 

# aws-lambda-sqs
<a name="aws-lambda-sqs"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versionado semántico](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-lambda-sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdasqs  | 

## Overview
<a name="overview-25"></a>

 Este constructo de soluciones de AWS implementa una función de AWS Lambda conectada a una cola de Amazon SQS.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
 import { LambdaToSqs, LambdaToSqsProps } from "@aws-solutions-constructs/aws-lambda-sqs";

 new LambdaToSqs(this, 'LambdaToSqsPattern', {
    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
<a name="initializer-25"></a>

```
 new LambdaToSqs(scope: Construct, id: string, props: LambdaToSqsProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`LambdaToSqsProps`](#pattern-construct-props-25) 

## Patrón de construcción
<a name="pattern-construct-props-25"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Una función Lambda opcional existente que se utilizará en lugar de la función predeterminada. Proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda.  | 
|  ExistingQueueObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Una cola SQS opcional existente que se utilizará en lugar de la cola predeterminada. Proporcionando tanto esto comoqueuePropsprovocará un error.  | 
|  ¿Props en cola?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la cola SQS.  | 
|  ¿EnableQueuePurging?  |  boolean  |  Si se deben conceder permisos adicionales a la función Lambda, lo que le permite depurar la cola SQS. El valor predeterminado es false.  | 
|  DeployDeadLetterQueue?  |  boolean  |  Si se crea una cola secundaria para utilizarse como cola de mensajes fallidos. El valor predeterminado es true.  | 
|  DeadletterQueueProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la cola de letras muertas. Solo se usa si eldeployDeadLetterQueuetoma el valor verdadero.  | 
|  ¿maxReceiveCount?  |  number  |  El número de veces que un mensaje se puede quitar sin éxito antes de que se traslade a la cola de mensajes fallidos. El valor predeterminado es 15.  | 
|  ¿Existe VPC?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  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. Unaec2.IVpcse utiliza para permitir que los clientes proporcionen VPC que existen fuera de la pila mediante el comando[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.Vpc.html#static-fromwbrlookupscope-id-options](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.Vpc.html#static-fromwbrlookupscope-id-options)Método de.  | 
|  ¿Implementar VPC?  |  boolean  |  Si se debe crear una VPC nueva basada envpcPropsen el que desplegar este patrón. Si se establece este valortrueimplementará la VPC mínima y más privada para ejecutar el patrón: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/aws-lambda-sqs.html) Si esta propiedad estrue, luegoexistingVpcNo se puede especificar . El valor predeterminado es false.  | 
|  ¿VPCProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.VpcProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la nueva VPC.enableDnsHostnames,enableDnsSupport,natGateways, ysubnetConfigurationestán establecidos por el patrón, por lo que cualquier valor para las propiedades suministradas aquí será anulado. SideployVpcno estrue, esta propiedad se pasará por alto.  | 
|  QueueEnvironmentVariableName?  |  string  |  Nombre opcional para el conjunto de variables de entorno URL de cola SQS para la función Lambda.  | 

## Patrón
<a name="pattern-properties-25"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  DeadLetterQueue?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Devuelve una instancia de la cola de letras muertas creada por el patrón, si se implementa una.  | 
|  LambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 
|  SQSqueue  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Devuelve una instancia de la cola SQS creada por el patrón.  | 
|  ¿VPC?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.IVpc.html)  |  Devuelve una instancia de la VPC creada o utilizada por el patrón (si la hay). Puede ser una VPC creada por el patrón o una VPC suministrada al constructor del patrón.  | 

## Configuración predeterminada
<a name="default-settings-25"></a>

 La implementación inmediata del componente fijo sin anulación establecerá los siguientes valores predeterminados: 

### Función de AWS Lambda
<a name="aws-lambda-function-25"></a>
+  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. 
+  Permita que la función sólo envíe mensajes a la cola (la depuración se puede habilitar usando el comando`enableQueuePurge`). 
+  Habilite el X-Ray streo
+  Configuración de las variables de entorno:
  +  `SQS_QUEUE_URL`
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

### Cola de Amazon SQS
<a name="amazon-sqs-queue-25"></a>
+  Aplicación de la cola de mensajes fallidos de SQS para la cola de SQS de origen. 
+  Habilite el cifrado en el lado de servidor para la cola de SQS de origen mediante la clave KMS administrada de AWS. 
+  Aplicación del cifrado de los datos en tránsito. 

## Architecture
<a name="architecture-25"></a>

![\[Icons representing cloud search, Lambda function, SQS queue, and DLQ in a workflow diagram.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-lambda-sqs.png)


## GitHub
<a name="github-25"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-lambda-sqs](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-lambda-sqs)  | 

# aws-lambda-sqs-lambda
<a name="aws-lambda-sqs-lambda"></a>

![\[Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versionado semántico](https://semver.org/)- El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1sqs\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-lambda-sqs-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdasqslambda  | 

## Overview
<a name="overview-27"></a>

 Este patrón de soluciones de AWS implementa (1) una función de AWS Lambda configurada para enviar mensajes a una cola; (2) una cola de Amazon SQS; y (3) una función de AWS Lambda configurada para consumir mensajes de la cola. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { LambdaToSqsToLambda, LambdaToSqsToLambdaProps } from "@aws-solutions-constructs/aws-lambda-sqs-lambda";

new LambdaToSqsToLambda(this, 'LambdaToSqsToLambdaPattern', {
    producerLambdaFunctionProps: {
        runtime: lambda.Runtime.NODEJS_14_X,
        // This assumes a handler function in lib/lambda/producer-function/index.js
        code: lambda.Code.fromAsset(`${__dirname}/lambda/producer-function`),
        handler: 'index.handler'
    },
    consumerLambdaFunctionProps: {
        runtime: lambda.Runtime.NODEJS_14_X,
        // This assumes a handler function in lib/lambda/consumer-function/index.js
        code: lambda.Code.fromAsset(`${__dirname}/lambda/consumer-function`),
        handler: 'index.handler'
    }
});
```

## Initializer
<a name="initializer-27"></a>

```
new LambdaToSqsToLambda(scope: Construct, id: string, props: LambdaToSqsToLambdaProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`LambdaToSqsToLambdaProps`](#pattern-construct-props-27) 

## Patrón de construcción
<a name="pattern-construct-props-27"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ProductorLambdaobj existenteProductor?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Una función Lambda opcional existente que se utilizará en lugar de la función predeterminada para enviar mensajes a la cola. Proporcionando tanto esto comoproducerLambdaFunctionPropsprovocará un error.  | 
|  ProductorLambdafunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda del productor.  | 
|  ExistingQueueObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Una cola SQS opcional existente que se utilizará en lugar de la cola predeterminada. Proporcionando tanto esto comoqueuePropsprovocará un error.  | 
|  ¿Props en cola?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la cola SQS. Proporcionando tanto esto comoexistingQueueObjprovocará un error.  | 
|  DeployDeadLetterQueue?  |  boolean  |  Si se va a crear una cola secundaria para utilizarse como cola de mensajes fallidos. El valor predeterminado es true.  | 
|  DeadletterQueueProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la cola de letras muertas. Solo se usa si se usa eldeployDeadLetterQueueLa propiedad se establece entrue.  | 
|  ¿maxReceiveCount?  |  number  |  El número de veces que un mensaje se puede quitar sin éxito antes de que se traslade a la cola de mensajes fallidos. El valor predeterminado es 15.  | 
|  ExistenteConsumerlambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Función Lambda opcional existente que se utilizará en lugar de la función predeterminada para recibir/consumir mensajes de la cola. Proporcionando tanto esto comoconsumerLambdaFunctionPropsprovocará un error.  | 
|  ConsumerLambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda de consumo.  | 
|  QueueEnvironmentVariableName?  |  string  |  Nombre opcional para el conjunto de variables de entorno URL de cola SQS para la función Lambda del productor.  | 

## Propiedades de patrón
<a name="pattern-properties-27"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ConsumerLambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda de consumo creada por el patrón.  | 
|  DeadLetterQueue?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Devuelve una instancia de la cola de letras muertas creada por el patrón, si se implementa una.  | 
|  ProductorLambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda productor creada por el patrón.  | 
|  SQSqueue  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Devuelve una instancia de la cola SQS creada por el patrón.  | 

## Configuración predeterminada
<a name="default-settings-27"></a>

 La implementación lista para usar de este constructo (sin propiedades anuladas) se ajustará a los siguientes valores predeterminados: 

### Funciones AWS Lambda
<a name="aws-lambda-function-27"></a>
+  Configurar el rol de IAM de acceso limitado con privilegios para las funciones de Lambda. 
+  Habilite la reutilización de conexiones con las funciones Keep-Alive para NodeJS Lambda. 
+  Habilite el X-Ray streo
+  Configuración de las variables de entorno:
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

### Cola de Amazon SQS
<a name="amazon-sqs-queue-27"></a>
+  Despliegue una cola de mensajes fallidos de la cola principal. 
+  Habilite el cifrado en el lado de servidor para la cola principal mediante una clave KMS gestionada de AWS. 
+  Aplicación del cifrado de los datos en tránsito 

## Architecture
<a name="architecture-27"></a>

![\[Diagram showing cloud search, Lambda functions, queue, and DLQ components in AWS architecture.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-lambda-sqs-lambda.png)


## GitHub
<a name="github-27"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-lambda-sqs-lambda](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-lambda-sqs-lambda)  | 

# aws-lambda-step-función
<a name="aws-lambda-step-function"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/). Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1step\$1function  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-lambda-step-function  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdastepfunction  | 

## Overview
<a name="overview-26"></a>

 Este constructo de soluciones de AWS implementa una función de AWS Lambda conectada a una función de pasos de AWS.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { LambdaToStepFunction } from '@aws-solutions-constructs/aws-lambda-step-function';
import * as stepfunctions from '@aws-cdk/aws-stepfunctions';

const startState = new stepfunctions.Pass(this, 'StartState');

new LambdaToStepFunction(this, 'LambdaToStepFunctionPattern', {
    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'
    },
    stateMachineProps: {
      definition: startState
    }
});
```

## Initializer
<a name="initializer-26"></a>

```
new LambdaToStepFunction(scope: Construct, id: string, props: LambdaToStepFunctionProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`LambdaToStepFunctionProps`](#pattern-construct-props-26) 

## Patrón de construcción
<a name="pattern-construct-props-26"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda. Se pasa por alto si unexistingLambdaObjse encuentra.  | 
|  StateMachineProps  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-stepfunctions.StateMachineProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-stepfunctions.StateMachineProps.html)  |  El usuario proporcionó accesorios para SFN.StateMachine. | 
|  CreateCloudWatchalarms  |  boolean  |  Si desea crear alarmas recomendadas de CloudWatch.  | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  Los accesorios opcionales proporcionados por el usuario para reemplazar los accesorios predeterminados para el grupo de registros de CloudWatch Logs.  | 
|  StateMachineEnvironmentVariableName  |  string  |  Nombre opcional para el conjunto de variables de entorno de máquina de estado de Step Functions para la función Lambda del productor.  | 

## Propiedades de patrón
<a name="pattern-properties-26"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿CloudWatcharms?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html)  |  Devuelve una lista de una o más alarmas de CloudWatch creadas por el patrón.  | 
|  LambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 
|  StateMachine  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-stepfunctions.StateMachine.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-stepfunctions.StateMachine.html)  |  Devuelve una instancia de la máquina de estado creada por el patrón.  | 
|  StateMachineLogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del grupo de registros creado por el patrón para la máquina de estado.  | 

## Configuración predeterminada
<a name="default-settings-26"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Función de AWS Lambda
<a name="aws-lambda-function-26"></a>
+  Configure un rol de IAM de acceso limitado con privilegios para la función Lambda.
+  Habilite la reutilización de conexiones con las funciones Keep-Alive para NodeJS Lambda.
+  Active el rastreo de X-Ray.
+  Configuración de las variables de entorno:
  +  `STATE_MACHINE_ARN` (predeterminado)
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

### Máquina de estado de AWS Step Functions
<a name="amazon-sf-state-machine-26"></a>
+  Implemente alarmas de CloudWatch de prácticas recomendadas para la máquina de estado de AWS Step Functions.

## Architecture
<a name="architecture-26"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-lambda-step-function.png)


## GitHub
<a name="github-26"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-lambda-step-function](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-lambda-step-function)  | 

# aws-s3-lambda
<a name="aws-s3-lambda"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1s3\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-s3-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.s3lambda  | 

## Overview
<a name="overview-21"></a>

 Este constructo de soluciones de AWS implementa un depósito de Amazon S3 conectado a una función de AWS Lambda.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { S3ToLambdaProps, S3ToLambda } from '@aws-solutions-constructs/aws-s3-lambda';

new S3ToLambda(this, 'test-s3-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
<a name="initializer-21"></a>

```
new S3ToLambda(scope: Construct, id: string, props: S3ToLambdaProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`S3ToLambdaProps`](#pattern-construct-props-21) 

## Patrón de construcción
<a name="pattern-construct-props-21"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda. Se pasa por alto si unexistingLambdaObjse encuentra.  | 
|  ¿ExistenteBuckeTobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Instancia existente del objeto S3 Bucket. Si esto se proporciona, entonces también proporcionabucketPropses un error.  | 
|  BucketProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas del depósito. Se pasa por alto si unexistingBucketObjse encuentra.  | 
|  S3EventSourceProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda-event-sources.S3EventSourceProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda-event-sources.S3EventSourceProps.html)  |  Los accesorios proporcionados por el usuario opcionales para anular los accesorios predeterminados para S3EventSourceProps  | 

## Propiedades de patrón
<a name="pattern-properties-21"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  LambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 
|  ¿S3 Bucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del bucket S3 creado por el patrón.  | 
|  ¿S3LoggingBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del depósito de registro creado por el patrón para el bucket S3.  | 

## Configuración predeterminada
<a name="default-settings-21"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Bucket de Amazon S3
<a name="amazon-s3-bucket-5"></a>
+  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 al eliminar 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.

### Función de AWS Lambda
<a name="aws-lambda-function-13"></a>
+  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. 
+  Active el rastreo de X-Ray.
+  Configuración de las variables de entorno:
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

## Architecture
<a name="architecture-21"></a>

![\[Diagram showing data flow from S3 bucket to Lambda function to CloudSearch domain.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-s3-lambda.png)


## GitHub
<a name="github-21"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-s3-lambda](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-s3-lambda)  | 

# aws-s3-sqs
<a name="aws-s3-sqs"></a>

![\[Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1s3\$1sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografiado  |  @aws-solutions-constructs/aws-s3-sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.s3sqs  | 

## Overview
<a name="overview-39"></a>

 Este constructo de soluciones de AWS implementa un depósito de Amazon S3 configurado para enviar notificaciones a una cola de Amazon SQS.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { S3ToSqs } from "@aws-solutions-constructs/aws-s3-sqs";

new S3ToSqs(stack, 'S3ToSQSPattern', {});
```

## Initializer
<a name="initializer-39"></a>

```
new S3ToSqs(scope: Construct, id: string, props: S3ToSqsProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`S3ToSqsProps`](#pattern-construct-props-39) 

## Patrón de construcción
<a name="pattern-construct-props-39"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteBuckeTobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Instancia existente del objeto S3 Bucket. Si esto se proporciona, entonces también proporcionabucketPropses un error.  | 
|  ¿BucketProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para el bucket S3.  | 
|  s3EventTypes?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.EventType.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.EventType.html)  |  Los tipos de eventos S3 que activarán la notificación. El valor predeterminado es s3.EventType.OBJECT\$1CREATED.  | 
|  S3EventFilters?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.NotificationKeyFilter.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.NotificationKeyFilter.html)  |  Las reglas de filtro de clave de objeto S3 para determinar qué objetos activan este evento. Si no se especifica, no se aplicará ninguna regla de filtro.  | 
|  ExistingQueueObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Una cola SQS opcional existente que se utilizará en lugar de la cola predeterminada. Proporcionando tanto esto comoqueuePropsprovocará un error. Si la cola SQS está cifrada, la clave KMS utilizada para el cifrado debe ser un CMK administrado por el cliente.  | 
|  ¿Props en cola?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la cola SQS. Se pasa por alto si unexistingQueueObjse encuentra.  | 
|  DeadletterQueueProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la cola de letras muertas. Solo se usa si eldeployDeadLetterQueuese establece en verdadero.  | 
|  DeployDeadLetterQueue?  |  boolean  |  Si se crea una cola secundaria para utilizarse como cola de mensajes fallidos. El valor predeterminado es true.  | 
|  ¿maxReceiveCount?  |  number  |  El número de veces que un mensaje se puede quitar sin éxito antes de que se traslade a la cola de mensajes fallidos. El valor predeterminado es 15.  | 
|  EnableEncryptionWithCustomerManagedKey?  |  boolean  |  Si desea utilizar una clave KMS, ya sea administrada por esta aplicación CDK o importada. Si se importa una clave de cifrado, debe especificarse en el campoencryptionKeypara esta construcción.  | 
|  encryptionKey  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.Key.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.Key.html)  |  Una clave de cifrado opcional existente que se utilizará en lugar de la clave de cifrado predeterminada.  | 
|  EncryptionKeyProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.KeyProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.KeyProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la clave de cifrado.  | 

## Propiedades de patrón
<a name="pattern-properties-39"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  SQSqueue  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Devuelve una instancia de la cola SQS creada por el patrón.  | 
|  DeadLetterQueue?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Devuelve una instancia de la cola de letras muertas creada por el patrón, si se implementa una.  | 
|  encryptionKey  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.Key.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.Key.html)  |  Devuelve una instancia de la clave de cifrado creada por el patrón.  | 
|  ¿S3 Bucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del bucket S3 creado por el patrón.  | 
|  ¿S3LoggingBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del depósito de registro creado por el patrón para el bucket S3.  | 

## Configuración predeterminada
<a name="default-settings-39"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Bucket de Amazon S3
<a name="amazon-s3-bucket-39"></a>
+  Configurar el registro de acceso para S3 Bucket 
+  Habilitar el cifrado del lado del servidor para S3 Bucket utilizando la clave KMS administrada por AWS 
+  Activar el control de versiones para S3 Bucket 
+  No permitir el acceso público para S3 Bucket 
+  Conservar el depósito de S3 al eliminar la pila de 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

### Cola de Amazon SQS
<a name="aws-sqs-queue-39"></a>
+  Configurar permisos de acceso de privilegios mínimos para SQS Queue 
+  Implementar cola de mensajes fallidos de SQS para la cola de origen SQS 
+  Habilite el cifrado en el lado de servidor para la cola de SQS mediante la clave KMS administrada por el cliente 
+  Aplicación del cifrado de los datos en tránsito 

## Architecture
<a name="architecture-39"></a>

![\[Diagram showing Amazon Simple Notification Service connecting to Amazon Simple Queue Service and AWS Lambda.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-s3-sqs.png)


## GitHub
<a name="github-39"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-s3-sqs](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-s3-sqs)  | 

# función de paso aws-s3
<a name="aws-s3-step-function"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1s3\$1step\$1function  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-s3-step-function  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.s3stepfunction  | 

## Overview
<a name="overview-22"></a>

 Este constructo de soluciones de AWS implementa un depósito de Amazon S3 conectado a una función de pasos de AWS.

**nota**  
Esta construcción utiliza Amazon EventBridge (Amazon CloudWatch Events) para activar AWS Step Functions. EventBridge es más flexible, pero activar Step Functions con notificaciones de eventos de S3 tiene menos latencia y es más rentable. Si el costo y/o la latencia son un problema, debe considerar implementar`aws-s3-lambda`y`aws-lambda-stepfunctions`en lugar de este constructo.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { S3ToStepFunction, S3ToStepFunctionProps } from '@aws-solutions-constructs/aws-s3-step-function';
import * as stepfunctions from '@aws-cdk/aws-stepfunctions';

const startState = new stepfunctions.Pass(this, 'StartState');

new S3ToStepFunction(this, 'test-s3-step-function-stack', {
    stateMachineProps: {
      definition: startState
    }
});
```

## Initializer
<a name="initializer-22"></a>

```
new S3ToStepFunction(scope: Construct, id: string, props: S3ToStepFunctionProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`S3ToStepFunctionProps`](#pattern-construct-props-22) 

## Patrón de construcción
<a name="pattern-construct-props-22"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteBuckeTobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html)  |  Instancia existente del objeto S3 Bucket. Si se proporciona esto, entonces también proporcionabucketPropses un error.  | 
|  ¿BucketProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas del depósito. Se pasa por alto si unexistingBucketObjse encuentra.  | 
|  StateMachineProps  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-stepfunctions.StateMachineProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-stepfunctions.StateMachineProps.html)  |  El usuario ha proporcionado accesorios opcionales para anular los accesorios predeterminados para SFN.StateMachine.  | 
|  ¿EventRuleProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.RuleProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.RuleProps.html)  |  El usuario opcional proporcionó EventRuleProps para anular los valores predeterminados.  | 
|  Implementar CloudTrail?  |  boolean  |  Si desea implementar un Trail en AWS CloudTrail para registrar eventos de API en Amazon S3. El valor predeterminado es true.  | 
|  CreateCloudWatchalarms  |  boolean  |  Si desea crear alarmas recomendadas de CloudWatch.  | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  Concede opcionales proporcionados por el usuario para anular los accesorios predeterminados para el grupo de registros de CloudWatch Logs.  | 

## Propiedades de patrón
<a name="pattern-properties-22"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿Trail de nubes?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudtrail.Trail.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudtrail.Trail.html)  |  Devuelve una instancia de la pista de Cloudtrail creada por el patrón.  | 
|  ¿CloudTrailBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del bucket creado por el patrón para almacenar datos de rastreo de Cloudtrail.  | 
|  CloudTrailLogingBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del depósito de registro creado por el patrón para el depósito principal utilizado por la pista de Cloudtrail.  | 
|  ¿CloudWatchalarms?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html)  |  Devuelve una lista de una o más alarmas de CloudWatch creadas por el patrón.  | 
|  ¿S3 Bucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del bucket S3 creado por el patrón.  | 
|  ¿S3LoggingBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del depósito de registro creado por el patrón para el bucket S3.  | 
|  StateMachine  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-stepfunctions.StateMachine.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-stepfunctions.StateMachine.html)  |  Devuelve una instancia de la máquina de estado creada por el patrón.  | 
|  StateMachineLogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del grupo de registros creado por el patrón para la máquina de estado.  | 

## Configuración predeterminada
<a name="default-settings-22"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Bucket de Amazon S3
<a name="amazon-s3-bucket-6"></a>
+  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.

### AWS CloudTrail
<a name="aws-cloudtrail"></a>
+  Configure un Trail en AWS CloudTrail para registrar eventos de API en Amazon S3 relacionados con el Bucket creado por el Construct. 

### Reglas de Amazon CloudWatch Events
<a name="amazon-cloudwatch-events-rule-2"></a>
+  Conceda permisos de privilegios mínimos a CloudWatch Events para activar la función Lambda. 

### AWS Step Function
<a name="aws-step-function-1"></a>
+  Active el registro de CloudWatch para API Gateway. 
+  Implemente las prácticas recomendadas de CloudWatch Alarms para la función Step. 

## Architecture
<a name="architecture-22"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-s3-step-function.png)


## GitHub
<a name="github-22"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-constructs/aws-s3-step-function](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-s3-step-function)  | 

# aws-sns-lambda
<a name="aws-sns-lambda"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1sns\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-sns-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.snslambda  | 

## Overview
<a name="overview-23"></a>

 Este constructo de soluciones de AWS implementa un Amazon SNS conectado a una función de AWS Lambda. 

 Aquí hay una definición mínima de patrón implementable en TypeScript:

```
import { SnsToLambda, SnsToLambdaProps } from "@aws-solutions-constructs/aws-sns-lambda";

new SnsToLambda(this, 'test-sns-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
<a name="initializer-23"></a>

```
new SnsToLambda(scope: Construct, id: string, props: SnsToLambdaProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`SnsToLambdaProps`](#pattern-construct-props-23) 

## Patrón de construcción
<a name="pattern-construct-props-23"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda. Se pasa por alto si seexistingLambdaObjse encuentra.  | 
|  ¿ExistentetoPicobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html)  |  Instancia existente del objeto SNS Topic, proporcionando tanto esto comotopicPropsprovocará un error.  | 
|  ¿TopicProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.TopicProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.TopicProps.html)  |  Propiedades proporcionadas por el usuario opcionales para anular las propiedades predeterminadas para el tema SNS.  | 

## Propiedades de patrón
<a name="pattern-properties-23"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  LambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 
|  snsTopic  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html)  |  Devuelve una instancia del tema SNS creado por el patrón.  | 

## Configuración predeterminada
<a name="default-settings-23"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Tema de Amazon SNS
<a name="amazon-sns-topic-1"></a>
+  Configurar permisos de acceso de privilegios mínimos para el tema SNS. 
+  Habilite el cifrado del lado del servidor mediante la clave KMS administrada por AWS. 
+  Aplicación del cifrado de los datos en tránsito. 

### Función de AWS Lambda
<a name="aws-lambda-function-14"></a>
+  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. 
+  Active el rastreo de X-Ray.
+  Configuración de las variables de entorno:
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

## Architecture
<a name="architecture-23"></a>

![\[Diagram showing data flow between icons representing different cloud services or components.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-sns-lambda.png)


## GitHub
<a name="github-23"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-sns-lambda](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-sns-lambda)  | 

# aws-sns-sqs
<a name="aws-sns-sqs"></a>

![\[Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versionado semántico](https://semver.org/)El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1sns\$1sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografiado  |  @aws-solutions-constructs/aws-sns-sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.snssqs  | 

## Overview
<a name="overview-28"></a>

 Este construcción de soluciones de AWS implementa un tema de Amazon SNS conectado a una cola de Amazon SQS.

 Aquí hay una definición mínima de patrón implementable en TypeScript:

```
import { SnsToSqs, SnsToSqsProps } from "@aws-solutions-constructs/aws-sns-sqs";
import * as iam from '@aws-cdk/aws-iam';

const snsToSqsStack = new SnsToSqs(this, 'SnsToSqsPattern', {});

// Grant yourself permissions to use the Customer Managed KMS Key
const policyStatement = new iam.PolicyStatement({
    actions: ["kms:Encrypt", "kms:Decrypt"],
    effect: iam.Effect.ALLOW,
    principals: [ new iam.AccountRootPrincipal() ],
    resources: [ "*" ]
});

snsToSqsStack.encryptionKey?.addToResourcePolicy(policyStatement);
```

## Initializer
<a name="initializer-28"></a>

```
new SnsToSqs(scope: Construct, id: string, props: SnsToSqsProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`SnsToSqsProps`](#pattern-construct-props-28) 

## Patrón de construcción
<a name="pattern-construct-props-28"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistentetoPicobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html)  |  Instancia existente del objeto SNS Topic, proporcionando tanto esto comotopicPropsprovocará un error.  | 
|  ¿TopicProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.TopicProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.TopicProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas del tema SNS. Se pasa por alto si unexistingTopicObjse encuentra.  | 
|  ExistingQueueObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Una cola SQS opcional existente que se utilizará en lugar de la cola predeterminada. Proporcionando tanto esto comoqueuePropsprovocará un error.  | 
|  ¿Props en cola?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la cola SQS. Se pasa por alto si unexistingQueueObjse encuentra.  | 
|  DeployDeadLetterQueue?  |  boolean  |  Si se crea una cola de secundaria para utilizarse como cola de mensajes fallidos. El valor predeterminado es true.  | 
|  DeadletterQueueProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la cola de letras muertas. Solo se usa si eldeployDeadLetterQueuese establece en true.  | 
|  ¿maxReceiveCount?  |  number  |  El número de veces que un mensaje se puede quitar sin éxito antes de que se traslade a la cola de mensajes fallidos. El valor predeterminado es 15.  | 
|  EnableEncryptionWithCustomerManagedKey?  |  boolean  |  Si desea utilizar una clave de cifrado administrada por el cliente, ya sea administrada por esta aplicación CDK o importada. Si importa una clave de cifrado, debe especificarse en el campoencryptionKeypara esta construcción.  | 
|  encryptionKey  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.Key.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.Key.html)  |  Una clave de cifrado opcional existente que se utilizará en lugar de la clave de cifrado predeterminada.  | 
|  EncryptionKeyProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.KeyProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.KeyProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la clave de cifrado.  | 

## Propiedades de patrón
<a name="pattern-properties-28"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  SNSTopic  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sns.Topic.html)  |  Devuelve una instancia del tema SNS creado por el patrón.  | 
|  encryptionKey  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.Key.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-kms.Key.html)  |  Devuelve una instancia de la clave de cifrado creada por el patrón.  | 
|  SQSqueue  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Devuelve una instancia de la cola SQS creada por el patrón.  | 
|  DeadLetterQueue?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Devuelve una instancia de la cola de letras muertas creada por el patrón, si se implementa una.  | 

## Configuración predeterminada
<a name="default-settings-28"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Tema de Amazon SNS
<a name="amazon-sns-topic-28"></a>
+  Configurar permisos de acceso de privilegios mínimos para el tema SNS. 
+  Habilite el cifrado del lado del servidor mediante la clave KMS administrada por AWS. 
+  Aplicación del cifrado de los datos en tránsito. 

### Cola de Amazon SQS
<a name="aws-lambda-function-28"></a>
+  Configurar permisos de acceso de privilegios mínimos para la cola de SQS. 
+  Implemente la cola de mensajes fallidos para la cola de SQS de origen. 
+  Habilite el cifrado en el lado de servidor para la cola de SQS mediante la clave KMS administrada por el cliente. 
+  Aplicación del cifrado de los datos en tránsito. 

## Architecture
<a name="architecture-28"></a>

![\[Servicios de AWS diagram showing SNS, SQS, and Lambda interactions with queues and notifications.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-sns-sqs.png)


## GitHub
<a name="github-28"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-sns-sqs](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-sns-sqs)  | 

# aws-sqs-lambda
<a name="aws-sqs-lambda"></a>

![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versionado semántico](https://semver.org/)El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**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**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1sqs\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) Mecanografía  |  @aws-solutions-constructs/aws-sqs-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.sqslambda  | 

## Overview
<a name="overview-24"></a>

 Este constructo de soluciones de AWS implementa una cola de Amazon SQS conectada a una función de AWS Lambda. 

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
const { SqsToLambda } = require('@aws-solutions-constructs/aws-sqs-lambda');

new SqsToLambda(stack, 'SqsToLambdaPattern', {
    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
<a name="initializer-24"></a>

```
new SqsToLambda(scope: Construct, id: string, props: SqsToLambdaProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`SqsToLambdaProps`](#pattern-construct-props-24) 

## Patrón de construcción
<a name="pattern-construct-props-24"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteLambdaobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Instancia existente del objeto Lambda Function, proporcionando tanto esto comolambdaFunctionPropsprovocará un error.  | 
|  ¿LambdaFunctionProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.FunctionProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la función Lambda. Se pasa por alto si unexistingLambdaObjse encuentra.  | 
|  ExistingQueueObj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Una cola SQS opcional existente que se utilizará en lugar de la cola predeterminada. Proporcionando tanto esto comoqueuePropsprovocará un error.  | 
|  ¿Props en cola?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas de la cola SQS. Se pasa por alto si unexistingQueueObjse encuentra.  | 
|  DeployDeadLetterQueue?  |  boolean  |  Si se crea una cola secundaria para utilizarse como cola de mensajes fallidos. El valor predeterminado es true.  | 
|  DeadletterQueueProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.QueueProps.html)  |  Props opcionales proporcionados por el usuario para anular los apoyos predeterminados para la cola de letras muertas. Solo se usa si eldeployDeadLetterQueuese establece en verdadero.  | 
|  ¿maxReceiveCount?  |  number  |  El número de veces que un mensaje se puede quitar sin éxito antes de que se traslade a la cola de mensajes fallidos. El valor predeterminado es 15.  | 

## Propiedades de patrón
<a name="pattern-properties-24"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  DeadLetterQueue?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Devuelve una instancia de la cola de letras muertas creada por el patrón, si se implementa una.  | 
|  LambdaFunction  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-lambda.Function.html)  |  Devuelve una instancia de la función Lambda creada por el patrón.  | 
|  SQSqueue  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-sqs.Queue.html)  |  Devuelve una instancia de la cola SQS creada por el patrón.  | 

## Configuración predeterminada
<a name="default-settings-24"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Cola de Amazon SQS
<a name="amazon-sqs-queue-1"></a>
+  Implemente la cola de mensajes fallidos de SQS para la cola de SQS de origen. 
+  Habilite el cifrado en el lado de servidor para la cola de SQS de origen mediante la clave KMS administrada de AWS. 
+  Cumplir el cifrado de los datos en tránsito. 

### Función de AWS Lambda
<a name="aws-lambda-function-15"></a>
+  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. 
+  Active el rastreo de X-Ray.
+  Configuración de las variables de entorno:
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(para Node 10.x y funciones superiores)

## Architecture
<a name="architecture-24"></a>

![\[Diagram showing Amazon Simple Queue Service connecting to AWS Lambda, which interacts with CloudWatch and a Role.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-sqs-lambda.png)


## GitHub
<a name="github-24"></a>


|  **Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más:**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -soluciones-constructs/aws-sqs-lambda](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-sqs-lambda)  | 

# core
<a name="core"></a>

![\[Two labels: "STABILITY" in gray and "EXPERIMENTAL" in orange.\]](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 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 la[Versiones semánticas](https://semver.org/)Modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

 La biblioteca principal incluye los componentes básicos de AWS Solutions Comstructs. Define las clases principales que se utilizan en el resto de construcciones de soluciones de AWS. 

## Propiedades predeterminadas para construcciones CDK de AWS
<a name="default-properties-for-aws-cdk-constructs"></a>

 La biblioteca principal establece las propiedades predeterminadas de los constructos CDK de AWS utilizados por los componentes fijos de soluciones de AWS. 

 Por ejemplo, el siguiente es el fragmento de propiedades predeterminadas para la construcción de S3 Bucket creada por AWS Solutions Constructs. De forma predeterminada, activará el cifrado del lado del servidor, el control de versiones del bucket, bloqueará todo el acceso público y configurará el registro de acceso S3. 

```
{
  encryption: s3.BucketEncryption.S3_MANAGED,
  versioned: true,
  blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL,
  removalPolicy: RemovalPolicy.RETAIN,
  serverAccessLogsBucket: loggingBucket
}
```

## Anular las propiedades predeterminadas
<a name="override-the-default-properties"></a>

 Las propiedades predeterminadas establecidas por la biblioteca Core pueden ser anuladas por las propiedades proporcionadas por el usuario. Por ejemplo, el usuario puede anular la propiedad Amazon S3 Block Public Access para cumplir requisitos específicos. 

```
  const stack = new cdk.Stack();

  const props: CloudFrontToS3Props = {
    bucketProps: {
      blockPublicAccess: {
        blockPublicAcls: false,
        blockPublicPolicy: true,
        ignorePublicAcls: false,
        restrictPublicBuckets: true
      }
    }
  };

  new CloudFrontToS3(stack, 'test-cloudfront-s3', props);

  expect(stack).toHaveResource("AWS::S3::Bucket", {
    PublicAccessBlockConfiguration: {
      BlockPublicAcls: false,
      BlockPublicPolicy: true,
      IgnorePublicAcls: false,
      RestrictPublicBuckets: true
    },
  });
```

## Advertencias de reemplazo de propiedades
<a name="property-override-warnings"></a>

 Cuando una propiedad proporcionada por el usuario reemplaza una propiedad predeterminada de la biblioteca Core, los componentes fijos emitirán uno o más mensajes de advertencia a la consola en los que se resaltan los cambios. Estos mensajes están destinados a proporcionar conocimiento de la situación al usuario y evitar anulaciones involuntarias que podrían crear riesgos de seguridad. Estos mensajes aparecerán siempre que se ejecuten comandos relacionados con la implementación/compilación, incluyendo`cdk deploy`,`cdk synth`,`npm test`, etc.: 

 Mensaje de ejemplo:`AWS_CONSTRUCTS_WARNING: An override has been provided for the property: BillingMode. Default value: 'PAY_PER_REQUEST'. You provided: 'PROVISIONED'.` 

### Alternar advertencias de anulación
<a name="toggling-override-warnings"></a>

 Los mensajes de advertencia de anulación están habilitados de forma predeterminada, pero se pueden activar o desactivar explícitamente mediante la opción`overrideWarningsEnabled`Variable de shell. 
+  Para explícitamente*Desactivación de*advertencias de anulación, ejecutar`export overrideWarningsEnabled=false`. 
+  Para explícitamente*Activar*advertencias de anulación, ejecutar`export overrideWarningsEnabled=true`. 
+  Para volver al valor predeterminado, ejecute`unset overrideWarningsEnabled`. 