

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Référence API
<a name="api-reference"></a>

 AWS Solutions Constructs (Constructs) est une extension open source d'AWS Cloud Development Kit (AWS CDK) qui fournit des modèles multi-services et bien architectés pour définir rapidement des solutions dans le code afin de créer une infrastructure prévisible et reproductible. L'objectif de Constructs est d'accélérer l'expérience des développeurs pour construire des solutions de n'importe quelle taille en utilisant des définitions basées sur des motifs pour leur architecture. 

 Les modèles définis dans Constructs sont des abstractions multi-services de haut niveau des constructions AWS CDK qui ont des configurations par défaut basées sur des meilleures pratiques bien conçues. La bibliothèque est organisée en modules logiques utilisant des techniques orientées objet pour créer chaque modèle de modèle architectural. 

 Le kit CDK est disponible dans les langues suivantes : 
+  JavaScript, TypeScript (Node.js ≥ 10.3.0) 
+  Python (Python ≥ 3,6) 
+ Java (Java ≥ 1,8)

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

 AWS Solutions Constructs est organisé en plusieurs modules. Ils sont nommés comme ceci : 
+  **aws-xxx** : Paquet de motifs bien conçu pour les services indiqués. Ce package contiendra des constructions qui contiennent plusieurs modules de service AWS CDK pour configurer le modèle donné. 
+  **xxx** : Paquets qui ne démarrent pas »**aws-**« sont des modules de base de Constructs qui sont utilisés pour configurer les meilleures pratiques par défaut pour les services utilisés dans la bibliothèque de modèles. 

## Contenu du module
<a name="module-contents"></a>

 Les modules contiennent les types suivants : 
+  **Modèles**- Toutes les constructions multi-services de niveau supérieur dans cette bibliothèque. 
+  **Autres types**- Toutes les classes non construites, interfaces, structures et énumérations qui existent pour prendre en charge les modèles. 

 Les modèles prennent un ensemble de propriétés (en entrée) dans leur constructeur ; l'ensemble des propriétés (et celles qui sont requises) peut être vu sur la page de documentation d'un modèle. 

 La page de documentation du modèle répertorie également les méthodes disponibles à appeler et les propriétés qui peuvent être utilisées pour récupérer des informations sur le modèle après son instanciation. 

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

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


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion sémantique de version](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1apigateway\$1dynamodb  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) Typecript  |  @aws-solutions-constructs/aws-apigateway-dynamodb  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.apigatewaydynamodb  | 

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

 Cette AWS Solutions Construct implémente une API REST Amazon API Gateway connectée à une table Amazon DynamoDB. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Modèle Construire des accessoires
<a name="pattern-construct-props"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour DynamoDB Table  | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut de la API Gateway.  | 
|  AllowCreateOperation  |  boolean  |  Indique s'il faut déployer API Gateway Method for Create opération sur la table DynamoDB.  | 
|  CreateRequestTemplate  |  string  |  Modèle de demande de API Gateway pour la méthode Create, obligatoire si AllowCreateOperation défini sur true  | 
|  AllowReadOpération  |  boolean  |  Indique s'il faut déployer API Gateway Method for Read opération sur la table DynamoDB.  | 
|  AllowUpdateOpération  |  boolean  |  Que ce soit pour déployer la méthode API Gateway pour l'opération de mise à jour sur la table DynamoDB.  | 
|  UpdateRequestTemplate  |  string  |  Modèle de demande de API Gateway pour la méthode Update, requis si allowUpdateOperation est défini sur true  | 
|  AllowDeleteOpération  |  boolean  |  Indique s'il faut déployer API Gateway Method for Delete opération sur la table 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)  |  Des accessoires fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour le groupe de journaux CloudWatch Logs.  | 

## Propriétés du modèle
<a name="pattern-properties"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de l'API Gateway API créée par le modèle.  | 
|  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)  |  Renvoie une instance du rôle IAM créé par le modèle qui active la journalisation des accès à partir de l'API Gateway API vers 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)  |  Renvoie une instance du groupe de journaux créé par le modèle auquel les journaux d'accès API REST de API Gateway d'API sont envoyés.  | 
|  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)  |  Renvoie une instance du rôle IAM créé par le modèle pour l'API Gateway API.  | 
|  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)  |  Renvoie une instance de la table DynamoDB créée par le modèle.  | 

## Paramètres par défaut
<a name="default-settings"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon API Gateway
<a name="amazon-api-gateway"></a>
+  Déployer un point de terminaison API optimisé pour les périphériques 
+  Activer la journalisation CloudWatch pour API Gateway 
+  Configurer le rôle IAM d'accès minimal aux privilèges pour API Gateway 
+  Définissez l'AuthorizationType par défaut pour toutes les méthodes d'API sur IAM 
+  Activer le suivi X-Ray

### Amazon DynamoDB Table
<a name="amazon-dynamodb-table"></a>
+  Définir le mode de facturation de la table DynamoDB à la demande (Paiement par demande) 
+  Activer le chiffrement côté serveur pour la table DynamoDB à l'aide de la clé KMS gérée par AWS 
+  Crée une clé de partition appelée 'id' pour la table DynamoDB 
+  Conserver la table lors de la suppression de la pile CloudFormation 
+  Activer les sauvegardes continues et la restauration à un instant dans le passé 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1apigateway\$1iot  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-apigateway-iot  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.apigatewayiot  | 

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

 Ce modèle AWS Solutions Construct implémente une API REST Amazon API Gateway connectée au modèle AWS IoT. 

 Cette construction crée un proxy HTTPS évolutif entre API Gateway et AWS IoT. Cela est utile lorsque vous souhaitez autoriser les périphériques hérités qui ne prennent pas en charge le protocole MQTT ou MQTT/WebSocket à interagir avec la plate-forme AWS IoT. 

 Cette implémentation permet de publier des messages en écriture seule sur des rubriques MQTT données, et prend également en charge les mises à jour instantanées des périphériques HTTPS pour autoriser des éléments dans le registre des périphériques. Il n'implique pas les fonctions Lambda pour la transmission de messages par proxy, et s'appuie plutôt sur l'intégration directe API Gateway vers AWS IoT qui prend en charge les messages JSON ainsi que les messages binaires. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Modèle de construction des accessoires
<a name="pattern-construct-props-32"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  IoTendpoint  |  string  |  Le sous-domaine de point de terminaison AWS IoT pour intégrer la API Gateway avec (par exemple a1234567890123-ats).  | 
|  ApigateWayCreateApiKey ?  |  boolean  |  Si défini surtrue, une clé API est créée et associée à un UsagePlan. L'utilisateur doit spécifier l'en-tête `x-api-key` lors de l'accès à RestApi. Valeur par défaut définie surfalse.  | 
|  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)  |  Rôle IAM utilisé par API Gateway pour accéder à AWS IoT. Si ce n'est pas spécifié, un rôle par défaut est créé avec un accès générique ('\$1') à tous les sujets et objets.  | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut de l'API Gateway 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)  |  Options fournies par l'utilisateur pour remplacer les accessoires par défaut pour le groupe de journaux CloudWatch Logs.  | 

## Propriétés du modèle
<a name="pattern-properties-32"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  AppiGateway  |  [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)  |  Renvoie une instance de l'API REST API Gateway créée par le modèle.  | 
|  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)  |  Renvoie une instance du rôle IAM créé par le modèle qui active la journalisation des accès à partir de l'API Gateway API vers 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)  |  Renvoie une instance du groupe de journaux créé par le modèle auquel les journaux d'accès API REST de API Gateway d'API sont envoyés.  | 
|  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)  |  Renvoie une instance du rôle IAM créé par le modèle pour l'API Gateway API.  | 

## Paramètres par défaut
<a name="default-settings-32"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon API Gateway
<a name="amazon-api-gateway-32"></a>
+  Déployer un point de terminaison API optimisé pour les périphériques 
+  Crée des ressources API avec`POST`Méthode de publication des messages dans des rubriques IoT 
+  Crée des ressources API avec`POST`Méthode de publication des messages dans`ThingShadow`and`NamedShadows` 
+  Activez la journalisation CloudWatch pour API Gateway 
+  Configurer le rôle IAM pour API Gateway avec accès à toutes les rubriques et objets 
+  Définissez l'AuthorizationType par défaut pour toutes les méthodes d'API sur IAM 
+  Activez le suivi X-Ray Tray 
+  Crée un UsagePlan et s'associe à`prod`stage 

 Vous trouverez ci-dessous une description des différentes ressources et méthodes exposées par API Gateway après le déploiement de Construct. Consultez[Exemples](#examples-32)pour plus d'informations sur la façon de tester facilement ces terminaux à l'aide de`curl`. 


|  **Méthode**  |  **Ressource**  |  **Paramètre (s) de requête**  |  **Code (s) renvoyé (s)**  |  **Description**  | 
| --- | --- | --- | --- | --- | 
|  POST  |  /message/<topics>  |  qos  |  200/403/500  |  En appelant ce point de terminaison, vous devez transmettre les rubriques sur lesquelles vous souhaitez publier (par exemple, `/message/device/foo`).  | 
|  POST  |  /shadow/<thingName>  |  Aucune  |  200/403/500  |  Cette route permet de mettre à jour le document fictif d'une chose, compte tenu de sonthingNameà l'aide de type shadow non nommé (classique). La caisse doit être conforme à la structure d'ombre standard comprenant unstatenoeud et associédesiredandreportedNœud. Consultez[Mise à jour des ombres de périphérique](#updating-device-shadows-32)pour obtenir un exemple.  | 
|  POST  |  /shadow/<thingName>/<shadowName>  |  Aucune  |  200/403/500  |  Cette route permet de mettre à jour le document d'ombre nommé d'une chose, compte tenu de sonthingNameet l'shadowNameà l'aide du type Ombre nommé. La caisse doit être conforme à la structure d'ombre standard comprenant unstatenoeud et associédesiredandreportedNœud. Consultez[Mise à jour des ombres nommées](#updating-named-shadows-32)pour obtenir un exemple.  | 

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

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


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

Les exemples suivants fonctionnent uniquement avec`API_KEY`, puisque l'autorisation IAM nécessite également un jeton SigV4 pour être spécifié, assurez-vous que le`apiGatewayCreateApiKey`de vos accessoires Construct est définie sur`true`lors du déploiement de la pile, sinon les exemples ci-dessous ne fonctionneront pas.

### Publication d'un message
<a name="publishing-a-message-32"></a>

Vous pouvez utiliser`curl`pour publier un message sur différentes rubriques MQTT à l'aide de l'API HTTPS. L'exemple ci-dessous affichera un message sur le`device/foo`Rubrique.

```
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"}'
```

Remarque: Remplacez par.`stage-id`,`region`, et`api-key`avec vos valeurs de déploiement.

Vous pouvez enchaîner les noms de rubriques dans l'URL et l'API accepte jusqu'à 7 sous-rubriques sur lesquelles vous pouvez publier. Par exemple, l'exemple ci-dessous publie un message dans la rubrique`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"}'
```

### Mise à jour des ombres de périphérique
<a name="updating-device-shadows-32"></a>

Pour mettre à jour le document instantané associé à une chose donnée, vous pouvez émettre une demande d'état instantané en utilisant un nom de chose. consultez suivante sur la façon de mettre à jour un shadow de chose.

```
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" }}}'
```

### Mise à jour des ombres nommées
<a name="updating-named-shadows-32"></a>

Pour mettre à jour le document instantané associé à l'ombre nommée d'une chose donnée, vous pouvez émettre une demande d'état d'ombre à l'aide d'un nom de chose et d'un nom d'ombre. Reportez-vous à l'exemple suivant sur la mise à jour d'une ombre nommée.

```
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" }}}'
```

### Envoi des charges utiles binaires
<a name="sending-binary-payloads-32"></a>

Il est possible d'envoyer une charge utile binaire à l'API proxy, jusqu'au service AWS IoT. Dans l'exemple suivant, nous envoyons le contenu de l'`README.md`associé à ce module (traité comme une donnée binaire) à`device/foo`à l'aide de l'`application/octet-stream`Type de contenu.

```
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
```

 Remarque: Exécutez cette commande dans le répertoire de ce projet. Vous pouvez ensuite tester l'envoi d'un autre type de fichiers binaires à partir de votre système de fichiers. 

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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique de versions](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1apigateway\$1kinesisstreams  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) Typecript  |  @aws-solutions-constructs/aws-apigateway-kinesisstreams  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.apigatewaykinesisstreams  | 

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

 Ce modèle implémente une API REST Amazon API Gateway connectée à un flux de données Amazon Kinesis. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-29"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut de l'API Gateway API.  | 
|  PutRecordRequestTemplate ?  |  string  |  Modèle de demande de API Gateway pour l'action PutRecord. Si ce n'est pas fourni, une valeur par défaut sera utilisée.  | 
|  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)  |  Modèle de requête API Gateway pour l'action PutRecord. Si ce n'est pas fourni, une valeur par défaut sera créée.  | 
|  PutRecordsRequestTemplate ?  |  string  |  Modèle de demande de API Gateway pour l'action PutRecords. Si ce n'est pas fourni, une valeur par défaut sera utilisée.  | 
|  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)  |  Modèle de requête API Gateway pour l'action PutRecords. Si ce n'est pas fourni, une valeur par défaut sera créée.  | 
|  L'existence de Streamobj ?  |  [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)  |  Instance existante de Kinesis Stream, fournissant à la fois ceci etkinesisStreamPropsprovoquera une erreur.  | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour le flux 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)  |  Exemples facultatifs fournis par l'utilisateur pour remplacer les accessoires par défaut pour le groupe de journaux CloudWatch Logs.  | 

## Propriétés de modèle
<a name="pattern-properties-29"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de l'API Gateway API créée par le modèle.  | 
|  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)  |  Renvoie une instance du rôle IAM créé par le modèle pour l'API Gateway 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)  |  Renvoie une instance du rôle IAM créé par le modèle qui active la journalisation des accès à partir de l'API Gateway API vers 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)  |  Renvoie une instance du groupe de journaux créé par le modèle auquel les journaux d'accès API REST de API Gateway d'API sont envoyés.  | 
|  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)  |  Renvoie une instance du flux Kinesis créé par le modèle.  | 

## Exemple d'utilisation de l'API
<a name="sample-api-usage"></a>


|  **Méthode**  |  **Chemin de la demande**  |  **Corps de la demande**  |  **Action de la file**  |  **Description**  | 
| --- | --- | --- | --- | --- | 
|  POST  |  /record  |  <pre>{ <br />  "data": "Hello World!", <br />  "partitionKey": "pk001"<br />}</pre>  |  kinesis:PutRecord  |  Écrit un seul enregistrement de données dans le flux.  | 
|  POST  |  /records  |  <pre>{ <br />    "records": [<br />      { "data": "abc", <br />        "partitionKey": "pk001" <br />      }, <br />      { "data": "xyz", <br />        "partitionKey": "pk001" <br />      }<br />     ] <br />}</pre>  |  kinesis:PutRecords  |  Écrit plusieurs enregistrements de données dans le flux en un seul appel.  | 

## Paramètres par défaut
<a name="default-settings-29"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon API Gateway
<a name="amazon-api-gateway-29"></a>
+  Déployez un point de terminaison API optimisé pour les périphériques. 
+  Activez la journalisation CloudWatch pour API Gateway. 
+  Configurez le rôle IAM d'accès le moins privilégié pour API Gateway. 
+  Définissez l'AuthorizationType par défaut pour toutes les méthodes d'API sur IAM. 
+  Activer le suivi X-Ray. 
+  Valider le corps de la requête avant de transmettre des données à Kinesis. 

### Amazon Kinesis Data Stream
<a name="amazon-sqs-queue"></a>
+  Configurez le rôle IAM d'accès le moins privilégié pour le flux Kinesis. 
+  Activez le chiffrement côté serveur pour Kinesis Stream à l'aide de la clé KMS gérée AWS. 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion sémantique](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1apigateway\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-apigateway-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.apigatewaylambda  | 

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

 AWS Solutions Construct implémente une API REST Amazon API Gateway connectée à une fonction AWS Lambda.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-1"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut de l'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)  |  Des accessoires facultatifs fournis par l'utilisateur pour remplacer les accessoires par défaut pour le groupe de journaux CloudWatch Logs.  | 

## Propriétés de modèle
<a name="pattern-properties-1"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance du rôle IAM créé par le modèle qui active la journalisation des accès à partir de l'API Gateway API vers 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)  |  Renvoie une instance du groupe de journaux créé par le modèle auquel les journaux d'accès API REST de API Gateway d'API sont envoyés.  | 
|  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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 
|  AppiGateway  |  [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)  |  Renvoie une instance de l'API Gateway API créée par le modèle.  | 

## Paramètres par défaut
<a name="default-settings-1"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon API Gateway
<a name="amazon-api-gateway-1"></a>
+  Déploiement d'un terminal d'API optimisé pour les périphériques 
+  Activer la journalisation CloudWatch pour API Gateway 
+  Configurer le rôle IAM d'accès minimal aux privilèges pour API Gateway 
+  Définissez l'AuthorizationType par défaut pour toutes les méthodes d'API sur IAM 
+  Activer le suivi X-Ray
+  Définir les variables d'environnement :
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

### Fonction AWS Lambda
<a name="aws-lambda-function"></a>
+  Configuration du rôle IAM d'accès limité pour la fonction Lambda 
+  Activer la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda 
+  Activer le suivi X-Ray

## 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/fr_fr/solutions/latest/constructs/images/aws-apigateway-lambda.png)


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-construction/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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans toute version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique des versions](https://semver.org/)modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1apigateway\$1sagemakerendpoint  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-apigateway-sagemakerendpoint  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.apigatewaysagemakerendpoint  | 

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

 AWS Solutions Construct implémente une API REST Amazon API Gateway connectée à un point de terminaison Amazon SageMaker.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-33"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut de l'API Gateway API.  | 
|  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)  |  Rôle IAM utilisé par API Gateway pour appeler le point de terminaison SageMaker. Si ce n'est pas spécifié, un rôle par défaut est créé avec accès àendpointName.  | 
|  EnpointName  |  string  |  Nom du point de terminaison d'inférence SageMaker déployé.  | 
|  ResourceName ?  |  string  |  Nom de ressource facultatif où la méthode GET sera disponible.  | 
|  chemin de la ressource  |  string  |  Chemin de la ressource pour la méthode GET. La variable définie ici peut être référencée dansrequestMappingTemplate.  | 
|  RequestMappingTemplate  |  string  |  Modèle de mappage pour convertir les requêtes GET reçues sur l'API REST en requêtes POST attendues par le point de terminaison SageMaker.  | 
|  ResponseMappingTemplate ?  |  string  |  Modèle de mappage facultatif pour convertir les réponses reçues du point de terminaison 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)  |  Exemples facultatifs fournis par l'utilisateur pour remplacer les accessoires par défaut pour le groupe de journaux CloudWatch Logs.  | 

## Propriétés du modèle
<a name="pattern-properties-33"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de l'API Gateway API créée par le modèle.  | 
|  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)  |  Renvoie une instance du rôle IAM créé par le modèle pour l'API Gateway 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)  |  Renvoie une instance du rôle IAM créé par le modèle qui active la journalisation des accès à partir de l'API Gateway API vers 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)  |  Renvoie une instance du groupe de journaux créé par le modèle auquel les journaux d'accès API REST de API Gateway d'API sont envoyés.  | 

## Exemple d'utilisation de l'API
<a name="sample-api-usage"></a>

**Remarque:** Chaque point de terminaison SageMaker est unique et la réponse de l'API dépend du modèle déployé. L'exemple donné ci-dessous suppose que l'échantillon de[cet article 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/). Pour obtenir une référence sur la façon dont cela serait mis en œuvre, veuillez vous référer à[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éthode**  |  **Chemin de la demande**  |  **Chaîne de requête**  |  **Action SageMaker**  |  **Description**  | 
| --- | --- | --- | --- | --- | 
|  GET  |  /321  |  items=101,131,162  |  sagemaker:InvokeEndpoint  |  Récupère les prédictions d'un utilisateur et d'éléments spécifiques.  | 

## Paramètres par défaut
<a name="default-settings-33"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon API Gateway
<a name="amazon-api-gateway-33"></a>
+  Déployer un point de terminaison API optimisé pour les périphériques 
+  Activer la journalisation CloudWatch pour API Gateway 
+  Configurer le rôle IAM d'accès minimal aux privilèges pour API Gateway 
+  Définissez l'AuthorizationType par défaut pour toutes les méthodes d'API sur IAM 
+  Activer le suivi X-Ray 
+  Valider les paramètres de demande avant de transmettre les données à SageMaker 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion de versions sémantiques](https://semver.org/)modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1apigateway\$1sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) Typecript  |  @aws-solutions-constructs/aws-apigateway-sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.apigatewaysqs  | 

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

 AWS Solutions Construct implémente une API REST Amazon API Gateway connectée à une file d'attente Amazon SQS.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-2"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut de la API Gateway.  | 
|  QueueProps ?  |  [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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut de la file d'attente.  | 
|  Déploiement DeadletterQueue ?  |  boolean  |  Indique s'il faut déployer une file d'attente secondaire à utiliser comme file d'attente de lettres mortes. La valeur par défaut est true.  | 
|  MaxReceiveCount  |  number  |  Nombre de fois qu'un message peut être défile d'attente sans succès avant d'être déplacé vers la file d'attente de lettres mortes.  | 
|  AllowCreateOperation ?  |  boolean  |  Indique s'il faut déployer une méthode API Gateway pour les opérations Create sur la file d'attente (par exemple SQS:SendMessage).  | 
|  CreateRequestTemplate ?  |  string  |  Remplacer le modèle de demande API Gateway par défaut pour la méthode Create, siallowCreateOperationa la valeurtrue. | 
|  AllowreadOperation ?  |  boolean  |  Indique s'il faut déployer une méthode API Gateway pour les opérations Read sur la file d'attente (par exemple SQS:ReceiveMessage).  | 
|  ReadRequestTemplate ?  |  string  |  Remplacer le modèle de requête API Gateway par défaut pour la méthode Read, siallowReadOperationa la valeurtrue. | 
|  AllowDeleteOperation ?  |  boolean  |  Indique s'il faut déployer une méthode API Gateway pour les opérations Delete sur la file d'attente (c'est-à-dire SQS:DeleteMessage).  | 
|  DeleteRequestTemplate ?  |  string  |  Remplacer le modèle de demande API Gateway par défaut pour la méthode Delete, siallowDeleteOperationa la valeurtrue. | 
|  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)  |  Accessoires fournis par l'utilisateur pour remplacer les accessoires par défaut du groupe de journaux CloudWatch Logs.  | 

## Propriétés du modèle
<a name="pattern-properties-2"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  AppiGateway  |  [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)  |  Renvoie une instance de l'API Gateway API créée par le modèle.  | 
|  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)  |  Renvoie une instance du rôle IAM créé par le modèle qui active la journalisation des accès à partir de l'API Gateway API vers 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)  |  Renvoie une instance du groupe de journaux créé par le modèle auquel les journaux d'accès API REST de API Gateway d'API sont envoyés.  | 
|  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)  |  Renvoie une instance du rôle IAM créé par le modèle pour l'API Gateway API.  | 
|  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)  |  Renvoie une instance de la file d'attente de lettres mortes créée par le modèle, si une instance est déployée.  | 
|  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)  |  Renvoie une instance de la file d'attente SQS créée par le modèle.  | 

## Exemples de scénario d'utilisation
<a name="sample-api-usage"></a>


|  **Méthode**  |  **Chemin de la demande**  |  **Corps de la demande**  |  **Action de la file**  |  **Description**  | 
| --- | --- | --- | --- | --- | 
|  GET  |  /  |   |  sqs::ReceiveMessage  |  Récupère un message de la file d'attente.  | 
|  POST  |  /  |  \$1 "data": "Hello World\$1" \$1  |  sqs::SendMessage  |  Remet un message dans la file d'attente.  | 
|  DELETE  |  /message?receiptHandle=[value]  |   |  sqs::DeleteMessage  |  Supprime un message spécifié de la file d'attente  | 

## Paramètres par défaut
<a name="default-settings-2"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon API Gateway
<a name="amazon-api-gateway-2"></a>
+  Déployer un point de terminaison API optimisé pour les périphériques 
+  Activer la journalisation CloudWatch pour API Gateway 
+  Configurer le rôle IAM d'accès minimal aux privilèges pour API Gateway 
+  Définissez l'AuthorizationType par défaut pour toutes les méthodes d'API sur IAM 
+  Activer le suivi X-Ray

### File d'attente Amazon SQS
<a name="amazon-sqs-queue"></a>
+  Déployer la file d'attente de lettres mortes SQS pour la file d'attente SQS source 
+  Activer le chiffrement côté serveur pour la file d'attente SQS source à l'aide de la clé KMS gérée par AWS 
+  Application du chiffrement des données en transit 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans toute version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


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

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

 Cette solution AWS Construct implémente une distribution Amazon CloudFront devant une API REST Amazon API Gateway.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction
<a name="pattern-construct-props-4"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  ExistingApigatewayObj  |  [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 API Gateway régionale qui sera frontée avec 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)  |  Des accessoires facultatifs fournis par l'utilisateur pour remplacer les accessoires par défaut pour la distribution CloudFront.  | 
|  InserThttpSecurityHeaders ?  |  boolean  |  Props fournis par l'utilisateur en option pour activer/désactiver l'injection automatique des en-têtes de sécurité HTTP des meilleures pratiques dans toutes les réponses de CloudFront  | 

## Propriétés de modèle
<a name="pattern-properties-4"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de l'API Gateway API créée par le modèle.  | 
|  CloudFrontLoggingBucket ?  |  [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)  |  Renvoie une instance du compartiment de journalisation créé par le modèle pour la distribution Web 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)  |  Renvoie une instance de la distribution Web CloudFront créée par le modèle.  | 
|  EdgelAmbDAFunctionVersion ?  |  [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)  |  Renvoie une instance de la version de la fonction de bord Lambda créée par le motif.  | 

## Paramètres par défaut
<a name="default-settings-4"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon CloudFront
<a name="amazon-cloudfront-1"></a>
+  Configurer la journalisation d'accès pour CloudFront WebDistribution 
+  Activer l'injection automatique des en-têtes de sécurité HTTP des meilleures pratiques dans toutes les réponses de CloudFront WebDistribution 

### Amazon API Gateway
<a name="amazon-api-gateway-4"></a>
+  L'objet API Gateway fourni par l'utilisateur est utilisé tel quel 
+  Activer le suivi X-Ray

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans toute version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique de version](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1cloudfront\$1apigateway\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-cloudfront-apigateway-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.cloudfrontapigatewaylambda  | 

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

 Cette solution AWS Construct implémente une distribution Amazon CloudFront devant une API REST basée sur Amazon API Gateway Lambda.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-3"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  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)  |  Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour 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)  |  Des accessoires facultatifs fournis par l'utilisateur pour remplacer les accessoires par défaut pour la distribution CloudFront.  | 
|  InserThttpSecurityHeaders ?  |  boolean  |  Props fournis par l'utilisateur en option pour activer/désactiver l'injection automatique des en-têtes de sécurité HTTP des meilleures pratiques dans toutes les réponses 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)  |  Des accessoires fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour le groupe de journaux CloudWatch Logs.  | 

## Propriétés du modèle
<a name="pattern-properties-3"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  AppiGateway  |  [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)  |  Renvoie une instance de l'API Gateway API créée par le modèle.  | 
|  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)  |  Renvoie une instance du rôle IAM créé par le modèle qui active la journalisation des accès à partir de l'API Gateway API vers 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)  |  Renvoie une instance du groupe de journaux créé par le modèle auquel les journaux d'accès API REST de API Gateway d'API sont envoyés.  | 
|  CloudFrontLoggingBucket ?  |  [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)  |  Renvoie une instance du compartiment de journalisation créé par le modèle pour la distribution Web 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)  |  Renvoie une instance de la distribution Web CloudFront créée par le modèle.  | 
|  EdgelAmbDAFunctionVersion ?  |  [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)  |  Renvoie une instance de la version de la fonction de bord Lambda créée par le motif.  | 
|  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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 

## Paramètres par défaut
<a name="default-settings-3"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon CloudFront
<a name="amazon-cloudfront"></a>
+  Configurer la journalisation d'accès pour CloudFront WebDistribution 
+  Activer l'injection automatique des en-têtes de sécurité HTTP des meilleures pratiques dans toutes les réponses de CloudFront WebDistribution 

### Amazon API Gateway
<a name="amazon-api-gateway-3"></a>
+  Déployer un point de terminaison API régional 
+  Activer la journalisation CloudWatch pour API Gateway 
+  Configurer le rôle IAM d'accès minimal aux privilèges pour API Gateway 
+  Définissez l'AuthorizationType par défaut pour toutes les méthodes d'API sur IAM 
+  Activer le suivi X-Ray

### Fonction AWS Lambda
<a name="aws-lambda-function-1"></a>
+  Configurer le rôle IAM d'accès limité pour la fonction Lambda 
+  Activer la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda 
+  Activer le suivi X-Ray
+  Définir les variables d'environnement :
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion des versions sémantiques](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1cloudfront\$1mediastore  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-cloudfront-mediastore  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.cloudfrontmediastore  | 

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

 Ce module AWS Solutions Construct implémente une distribution Amazon CloudFront connectée à un conteneur AWS Elemental MediaStore.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-38"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  ExistingMediaStoreContainerObj ?  |  [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)  |  Conteneur MediaStore fourni en option par l'utilisateur pour remplacer le conteneur MediaStore par défaut.  | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour le conteneur 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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour la distribution CloudFront.  | 
|  InserThttpSecurityHeaders ?  |  boolean  |  Props fournis par l'utilisateur en option pour activer/désactiver l'injection automatique des en-têtes de sécurité HTTP des meilleures pratiques dans toutes les réponses de CloudFront.  | 

## Propriétés du modèle
<a name="pattern-properties-38"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de la distribution Web CloudFront créée par le modèle.  | 
|  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)  |  Renvoie une instance du conteneur MediaStore créé par le modèle.  | 
|  CloudFrontLoggingBucket  |  [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)  |  Renvoie une instance du compartiment de journalisation créé par le modèle pour la distribution Web 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)  |  Renvoie une instance de la stratégie de demande d'origine CloudFront créée par le modèle pour la distribution Web CloudFront.  | 
|  CloudFrontOriginAccessIdentity ?  |  [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)  |  Renvoie une instance de l'identité d'accès d'origine CloudFront créée par le modèle pour la distribution Web CloudFront.  | 
|  EdgelAmbDAFunctionVersion  |  [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)  |  Renvoie une instance de la version de la fonction de bord Lambda créée par le motif.  | 

## Paramètres par défaut
<a name="default-settings-38"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon CloudFront
<a name="amazon-cloudfront-2"></a>
+  Configurer la journalisation des accès pour la distribution Web CloudFront 
+  Activer la stratégie de demande d'origine CloudFront pour le conteneur AWS Elemental MediaStore 
+  Définir`User-Agent`en-tête personnalisé avec identité d'accès à l'origine CloudFront 
+  Activer l'injection automatique des en-têtes de sécurité HTTP des meilleures pratiques dans toutes les réponses de la distribution Web CloudFront 

### AWS Elemental MediaStore
<a name="amazon-elemental-mediastore"></a>
+  Définir la stratégie de suppression pour conserver la ressource 
+  Définissez le nom du conteneur avec le nom de la pile CloudFormation 
+  Définir les paramètres par défaut[Stratégie de partage des ressources cross-origin (CORS) de conteneur](https://docs.aws.amazon.com/mediastore/latest/ug/cors-policy.html) 
+  Définir les paramètres par défaut[stratégie de cycle de vie des objets](https://docs.aws.amazon.com/mediastore/latest/ug/policies-object-lifecycle.html) 
+  Définir les paramètres par défaut[stratégie de conteneur](https://docs.aws.amazon.com/mediastore/latest/ug/policies.html)pour autoriser uniquement`aws:UserAgent`avec identité d'accès à l'origine CloudFront 
+  Définir les paramètres par défaut[stratégie de métriques](https://docs.aws.amazon.com/mediastore/latest/ug/policies-metric.html) 
+  Activer la journalisation des accès

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans toute version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique de version](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1cloudfront\$1s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-cloudfront-s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.cloudfronts3  | 

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

 Ce composant AWS Solutions Construct implémente une distribution Amazon CloudFront devant un compartiment Amazon S3.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-5"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  Bucketobj existant ?  |  [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)  |  Instance existante de l'objet S3 Bucket. Si cela est fourni, alors fournir égalementbucketPropsest une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut du compartiment. Ignoré si unexistingBucketObjest fourni.  | 
|  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)  |  Des accessoires facultatifs fournis par l'utilisateur pour remplacer les accessoires par défaut pour la distribution CloudFront.  | 
|  InserThttpSecurityHeaders ?  |  boolean  |  Props fournis par l'utilisateur en option pour activer/désactiver l'injection automatique des en-têtes de sécurité HTTP des meilleures pratiques dans toutes les réponses de CloudFront  | 

## Propriétés du modèle
<a name="pattern-properties-5"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de la distribution Web CloudFront créée par le modèle.  | 
|  S3Bucket ?  |  [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)  |  Renvoie une instance du compartiment S3 créé par le modèle.  | 
|  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)  |  Renvoie une instance du compartiment de journalisation créé par le modèle pour le compartiment S3.  | 
|  EdgelAmbDAFunctionVersion ?  |  [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)  |  Renvoie une instance de la version de la fonction de bord Lambda créée par le motif.  | 
|  CloudFrontLoggingBucket ?  |  [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)  |  Renvoie une instance du compartiment de journalisation créé par le modèle pour la distribution Web CloudFront.  | 

## Paramètres par défaut
<a name="default-settings-5"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon CloudFront
<a name="amazon-cloudfront-2"></a>
+  Configurer la journalisation d'accès pour CloudFront WebDistribution 
+  Activer l'injection automatique des en-têtes de sécurité HTTP des meilleures pratiques dans toutes les réponses de CloudFront WebDistribution 

### Bucket Amazon S3
<a name="amazon-s3-bucket"></a>
+  Configurer la journalisation d'accès pour le compartiment S3 
+  Activer le chiffrement côté serveur pour le compartiment S3 à l'aide de la clé KMS gérée par AWS 
+  Activer le contrôle de version pour S3 Bucket 
+  Ne pas autoriser l'accès public pour le compartiment S3 
+  Conserver le compartiment S3 lors de la suppression de la pile CloudFormation 
+  Application du chiffrement des données en transit 
+  Applique la règle de cycle de vie pour déplacer les versions d'objets non actuelles vers le stockage Glacier après 90 jours 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans toute version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique des versions](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1cognito\$1apigateway\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-cognito-apigateway-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.cognitoapigatewaylambda  | 

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

 Cette solution AWS Construct implémente Amazon Cognito sécurise une API REST basée sur Amazon API Gateway Lambda.

 Voici une définition de modèle déployable minimale dans 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 vous définissez des ressources et des méthodes sur votre API (par exemple`proxy = false`), vous devez appeler le`addAuthorizers()`après que l'API est complètement définie. Cela garantit que toutes les méthodes de votre API sont protégées.

 Voici un exemple de 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);
```

 *Paramètres* 
+  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) 

## Props de construction de modèle
<a name="pattern-construct-props-6"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour 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)  |  Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour le pool d'utilisateurs 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)  |  Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour 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)  |  Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour le groupe de journaux CloudWatch Logs.  | 

## Propriétés de modèle
<a name="pattern-properties-6"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de l'API Gateway API créée par le modèle.  | 
|  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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 
|  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)  |  Renvoie une instance du pool d'utilisateurs Cognito créé par le modèle.  | 
|  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)  |  Renvoie une instance du client de pool d'utilisateurs Cognito créé par le modèle.  | 
|  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)  |  Renvoie une instance du rôle IAM créé par le modèle qui active la journalisation des accès à partir de l'API Gateway API vers 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)  |  Renvoie une instance du groupe de journaux créé par le modèle auquel les journaux d'accès API REST de API Gateway d'API sont envoyés.  | 
|  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)  |  Renvoie une instance de l'autorisation API Gateway créée par le modèle.  | 

## Paramètres par défaut
<a name="default-settings-6"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon Cognito
<a name="amazon-cognito"></a>
+  Définition d'une stratégie de mot de passe pour les groupes 
+  Appliquer le mode de sécurité avancé pour les pools d'utilisateurs 

### Amazon API Gateway
<a name="amazon-api-gateway-5"></a>
+  Déployer un point de terminaison API optimisé pour les périphériques 
+  Activer la journalisation CloudWatch pour API Gateway 
+  Configurer le rôle IAM d'accès minimal aux privilèges pour API Gateway 
+  Définissez l'AuthorizationType par défaut pour toutes les méthodes d'API sur IAM 
+  Activer le suivi X-Ray

### Fonction AWS Lambda
<a name="aws-lambda-function-2"></a>
+  Configuration du rôle IAM d'accès limité pour la fonction Lambda 
+  Activer la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda 
+  Activer le suivi X-Ray
+  Définir les variables d'environnement :
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-construction/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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans toute version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique de versions](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1dynamodb\$1stream\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-dynamodb-stream-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.dynamodbstreamlambda  | 

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

 Ce modèle AWS Solutions Construct implémente une table Amazon DynamoDB avec flux pour appeler la fonction AWS Lambda avec les autorisations les moins privilégiées.

 Voici une définition de modèle déployable minimale : 

```
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);
```

 *Paramètres* 
+  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) 

## Modèle de construction d'accessoires
<a name="pattern-construct-props-8"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  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)  |  Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour DynamoDB Table  | 
|  ExistantTableObj ?  |  [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)  |  Instance existante de l'objet de table DynamoDB, fournissant à la fois ceci etdynamoTablePropsprovoquera une erreur.  | 
|  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)  |  Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour la source d'événements DynamoDB  | 

## Propriétés du modèle
<a name="pattern-properties-8"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de la table DynamoDB créée par le modèle.  | 
|  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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 

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

Ce modèle nécessite une fonction Lambda qui peut publier des données dans le service Elasticsearch à partir du flux DynamoDB. Un exemple de fonction est fourni[Ici](https://github.com/awslabs/aws-solutions-constructs/blob/master/source/patterns/%40aws-solutions-constructs/aws-dynamodb-stream-lambda/test/lambda/index.js).

## Paramètres par défaut
<a name="default-settings-8"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon DynamoDB Table
<a name="amazon-dynamodb-table-2"></a>
+  Définir le mode de facturation de la table DynamoDB à la demande (Paiement par demande) 
+  Activer le chiffrement côté serveur pour la table DynamoDB à l'aide de la clé KMS gérée par AWS 
+  Crée une clé de partition appelée 'id' pour la table DynamoDB 
+  Conserver la table lors de la suppression de la pile CloudFormation 
+  Activer les sauvegardes continues et la restauration à un instant dans le passé 

### Fonction AWS Lambda
<a name="aws-lambda-function-4"></a>
+  Configuration du rôle IAM d'accès limité pour la fonction Lambda 
+  Activer la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda 
+  Activer le suivi X-Ray
+  Activer les fonctionnalités de gestion des défaillances : activer bisect sur la fonction Erreur ; définir l'âge maximal des enregistrements par défaut (24 heures) ; définir les tentatives de relance maximales par défaut (500) ; et déployer la file d'attente des lettres mortes SQS comme destination en cas d'échec
+  Définir les variables d'environnement :
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-constructions/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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique des versions](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


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

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

 Cette solution AWS Construct implémente la table Amazon DynamoDB avec flux, une fonction AWS Lambda et un Amazon Elasticsearch Service avec les autorisations les moins privilégiées.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Modèle de construction de modèle
<a name="pattern-construct-props-7"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  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)  |  Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour DynamoDB Table  | 
|  ExistantTableObj ?  |  [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)  |  Instance existante de l'objet de table DynamoDB, fournissant à la fois ceci etdynamoTablePropsprovoquera une erreur.  | 
|  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)  |  Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour la source d'événements 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)  |  Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour Amazon Elasticsearch Service  | 
|  domainName  |  string  |  Nom de domaine pour Cognito et Amazon Elasticsearch Service  | 
|  CreateCloudWatchArms  |  boolean  |  Indique s'il faut créer des alarmes CloudWatch recommandées.  | 

## Propriétés du modèle
<a name="pattern-properties-7"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  Cloudwatch Alarm ?  |  [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)  |  Renvoie la liste d'une ou plusieurs alarmes CloudWatch créées par le modèle.  | 
|  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)  |  Renvoie une instance de la table DynamoDB créée par le modèle.  | 
|  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)  |  Renvoie une instance du domaine Elasticsearch créé par le modèle.  | 
|  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)  |  Renvoie une instance du pool d'identités Cognito créé par le modèle.  | 
|  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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 
|  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)  |  Renvoie une instance du pool d'utilisateurs Cognito créé par le modèle.  | 
|  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)  |  Renvoie une instance du client de pool d'utilisateurs Cognito créé par le modèle.  | 

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

Ce modèle nécessite une fonction Lambda qui peut publier des données dans le service Elasticsearch à partir du flux DynamoDB. Un exemple de fonction est fourni[Ici](https://github.com/awslabs/aws-solutions-constructs/blob/master/source/patterns/%40aws-solutions-constructs/aws-dynamodb-stream-lambda-elasticsearch-kibana/test/lambda/index.js).

## Paramètres par défaut
<a name="default-settings-7"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon DynamoDB Table
<a name="amazon-dynamodb-table-1"></a>
+  Définir le mode de facturation de la table DynamoDB à la demande (Paiement par demande) 
+  Activer le chiffrement côté serveur pour la table DynamoDB à l'aide de la clé KMS gérée par AWS 
+  Crée une clé de partition appelée 'id' pour la table DynamoDB 
+  Conserver la table lors de la suppression de la pile CloudFormation 
+  Activer les sauvegardes continues et la restauration à un instant dans le passé 

### Fonction AWS Lambda
<a name="aws-lambda-function-3"></a>
+  Configuration d'un rôle IAM à accès limité pour la fonction Lambda 
+  Activer la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda 
+  Activer le suivi X-Ray
+  Activer les fonctionnalités de gestion des défaillances : activer bisect sur la fonction Erreur ; définir l'âge maximal des enregistrements par défaut (24 heures) ; définir les tentatives de relance maximales par défaut (500) ; et déployer la file d'attente des lettres mortes SQS comme destination en cas d'échec
+  Définir les variables d'environnement :
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

### Amazon Cognito
<a name="amazon-cognito-1"></a>
+  Définir la stratégie de mot de passe des groupes d'utilisateurs 
+  Appliquer le mode de sécurité avancé pour les pools d'utilisateurs 

### Amazon Elasticsearch Service
<a name="amazon-elasticsearch-service"></a>
+  Déployer les meilleures pratiques des alarmes CloudWatch pour le domaine Elasticsearch 
+  Sécurisez l'accès au tableau de bord Kibana avec Cognito User Pools 
+  Activer le chiffrement côté serveur pour le domaine Elasticsearch à l'aide de la clé KMS gérée par AWS 
+  Activer le chiffrement nœud à nœud pour le domaine Elasticsearch 
+  Configuration du cluster pour le domaine Amazon ES 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-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-evenements-rule-kinesisfirehose-s3
<a name="aws-events-rule-kinesisfirehose-s3"></a>

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


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion sémantique](https://semver.org/)Le modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1events\$1rule\$1kinesisfirehose\$1s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-events-rule-kinesisfirehose-s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.eventsrulekinesisfirehoses3  | 

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

 AWS Solutions Construct implémente une règle Amazon CloudWatch Events pour envoyer des données à un flux de distribution Amazon Kinesis Data Firehose connecté à un compartiment Amazon S3. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-35"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  EventTruleProps  |  [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)  |  Propriétés fournies par l'utilisateur pour remplacer les propriétés par défaut de la règle 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)  |  Des accessoires facultatifs fournis par l'utilisateur pour remplacer les accessoires par défaut pour Kinesis Firehose Delivery Stream.  | 
|  Bucketobj existant ?  |  [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)  |  Instance existante de l'objet S3 Bucket. Si cela est fourni, alors fournir égalementbucketPropsest une erreur.  | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour le compartiment 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)  |  Options fournies par l'utilisateur pour remplacer les accessoires par défaut pour le groupe de journaux CloudWatch Logs.  | 

## Propriétés de modèle
<a name="pattern-properties-35"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  EventsRègle  |  [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)  |  Renvoie une instance de la règle Events créée par le modèle.  | 
|  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)  |  Renvoie une instance du flux de livraison Kinesis Firehose créé par le modèle.  | 
|  S3Bucket  |  [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)  |  Renvoie une instance du compartiment S3 créé par le modèle.  | 
|  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)  |  Renvoie une instance du compartiment de journalisation créé par le modèle pour le compartiment 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)  |  Renvoie une instance du rôle créé par la construction pour la règle 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)  |  Renvoie une instance du rôle IAM créé par le modèle pour le flux de livraison 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)  |  Renvoie une instance du groupe de journaux créé par le modèle auquel les journaux d'accès Kinesis Firehose sont envoyés.  | 

## Paramètres par défaut
<a name="default-settings-35"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Règle Amazon CloudWatch Events
<a name="amazon-events-rule-35"></a>
+  Configurez le rôle IAM d'accès minimal aux privilèges pour que la règle des événements soit publiée dans le flux de distribution Kinesis Firehose. 

### Amazon Kinesis Firehose
<a name="amazon-kinesisfirehose-35"></a>
+  Activez la journalisation CloudWatch pour Kinesis Firehose. 
+  Paramètre le rôle IAM pour Amazon Kinesis Firehose. 

### Compartiment Amazon S3
<a name="amazon-s3-bucket-35"></a>
+  Configurez la journalisation d'accès pour le compartiment. 
+  Activez le chiffrement côté serveur pour le compartiment à l'aide de la clé KMS gérée par AWS. 
+  Activer la gestion de version pour le compartiment. 
+  N'autorisez pas l'accès public au compartiment. 
+  Conservez le compartiment lors de la suppression de la pile CloudFormation. 
+  Applique la règle de cycle de vie pour déplacer les versions d'objets non actuelles vers le stockage Glacier après 90 jours. 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique de version](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1events\$1rule\$1kinesisstream  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-events-rule-kinesisstreams  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.eventsrulekinesisstream  | 

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

 Cette solution AWS Construct implémente une règle Amazon CloudWatch Events pour envoyer des données à un flux de données Amazon Kinesis. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Modèle de construction d'accessoires
<a name="pattern-construct-props-36"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  EventTruleProps  |  [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)  |  Propriétés fournies par l'utilisateur pour remplacer les propriétés par défaut de la règle CloudWatch Events.  | 
|  L'existence de Streamobj ?  |  [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)  |  Instance existante de Kinesis Stream, fournissant à la fois ceci etkinesisStreamPropsprovoquera une erreur.  | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour le flux Kinesis.  | 
|  CreateCloudWatchArms  |  boolean  |  Indique s'il faut créer des alarmes CloudWatch recommandées.  | 

## Propriétés de modèle
<a name="pattern-properties-36"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  EventsRègle  |  [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)  |  Renvoie une instance de la règle Events créée par le modèle.  | 
|  Stream Kinesis  |  [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)  |  Renvoie une instance du flux Kinesis créé par le modèle.  | 
|  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)  |  Renvoie une instance du rôle créé par la construction pour la règle CloudWatch Events.  | 

## Paramètres par défaut
<a name="default-settings-36"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon CloudWatch Events
<a name="amazon-events-rule-36"></a>
+  Configurez le rôle IAM d'accès minimal aux privilèges pour que la règle des événements soit publiée dans le flux de données Kinesis. 

### Amazon Kinesis Stream
<a name="amazon-kinesisstream-36"></a>
+  Activez le chiffrement côté serveur pour Kinesis Data Stream à l'aide de la clé KMS gérée AWS. 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-constructs/aws-events-rule-kinesisstreams](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-events-rule-kinesisstreams)  | 

# aws-événements-rule-lambda
<a name="aws-events-rule-lambda"></a>

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


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans toute version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1events\$1rule\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-events-rule-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.eventsrulelambda  | 

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

 Ce modèle AWS Solutions Construct implémente une règle AWS Events et une fonction AWS Lambda. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Modèle
<a name="pattern-construct-props-9"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  EventTruleProps  |  [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)  |  L'utilisateur a fourni EvenTruleProps pour remplacer les valeurs par défaut  | 

## Propriétés de modèle
<a name="pattern-properties-9"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  EventsRègle  |  [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)  |  Renvoie une instance de la règle Events créée par le modèle.  | 
|  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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 

## Paramètres par défaut
<a name="default-settings-9"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon CloudWatch Events
<a name="amazon-cloudwatch-events-rule"></a>
+  Accorder les autorisations les moins privilèges aux événements CloudWatch pour déclencher la fonction Lambda 

### Fonction AWS Lambda
<a name="aws-lambda-function-5"></a>
+  Configuration du rôle IAM d'accès limité pour la fonction Lambda 
+  Activer la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda 
+  Activer le suivi X-Ray
+  Définir les variables d'environnement :
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-constructions/aws-evenements-rule-lambda](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-events-rule-lambda)  | 

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

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


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion de version sémantique](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1events\$1rule\$1sns  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-events-rule-sns  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.eventsrulesns  | 

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

 Ce modèle implémente une règle Amazon CloudWatch Events connectée à une rubrique Amazon SNS. 

 Voici une définition de modèle déployable minimale : 

```
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);
```

 *Paramètres* 
+  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) 

## Modèle de construction d'accessoires
<a name="pattern-construct-props-30"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  EventTruleProps  |  [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)  |  Propriétés fournies par l'utilisateur pour remplacer les propriétés par défaut de la règle CloudWatch Events.  | 
|  ExistantTopicObj ?  |  [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)  |  Instance existante de l'objet SNS Topic, fournissant à la fois ceci ettopicPropsprovoquera une erreur.  | 
|  SujetProps ?  |  [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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la rubrique SNS. Ignoré si uneexistingTopicObjest fourni.  | 
|  EnableEncryptionWithCustomerManagedKey ?  |  boolean  |  Indique s'il faut utiliser une clé de chiffrement gérée par le client, soit gérée par cette application CDK, soit importée. Si vous importez une clé de chiffrement, elle doit être spécifiée dans laencryptionKeypour cette construction.  | 
|  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)  |  Une clé de chiffrement existante facultative à utiliser à la place de la clé de chiffrement par défaut.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la clé de chiffrement.  | 

## Propriétés du modèle
<a name="pattern-properties-30"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  EventsRègle  |  [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)  |  Renvoie une instance de la règle Events créée par le modèle.  | 
|  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)  |  Renvoie une instance de la rubrique SNS créée par le modèle.  | 
|  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)  |  Renvoie une instance de la clé de chiffrement créée par le modèle.  | 

## Paramètres par défaut
<a name="default-settings-30"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon CloudWatch Events règle
<a name="amazon-events-rule-30"></a>
+  Accordez les autorisations les moins privilèges aux événements CloudWatch afin de les publier dans la rubrique SNS. 

### Rubrique Amazon SNS
<a name="amazon-sns-30"></a>
+  Configurez les autorisations d'accès les moins privilèges pour la rubrique SNS. 
+  Activer le chiffrement côté serveur pour la rubrique SNS à l'aide de la clé AWS KMS gérée par le client. 
+  Application du chiffrement des données en transit. 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-constructs/aws-events-rule-sns](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-events-rule-sns)  | 

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

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


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion de versions sémantiques](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1events\$1rule\$1sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-events-rule-sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.eventsrulesqs  | 

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

 Ce modèle implémente une règle Amazon CloudWatch Events connectée à une file d'attente Amazon SQS. 

 Voici une définition de modèle déployable minimale : 

```
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);
```

 *Paramètres* 
+  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) 

## Modèle de construction
<a name="pattern-construct-props-31"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  EventTruleProps  |  [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)  |  Propriétés fournies par l'utilisateur pour remplacer les propriétés par défaut de la règle CloudWatch Events.  | 
|  QueueObj existant ?  |  [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)  |  Une file d'attente SQS existante facultative à utiliser à la place de la file d'attente par défaut. Fournissant à la fois ceci etqueuePropsprovoquera une erreur.  | 
|  QueueProps ?  |  [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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la file d'attente SQS. Ignoré si unexistingQueueObjest fourni.  | 
|  EnableQueueUrging ?  |  boolean  |  Indique s'il faut accorder des autorisations supplémentaires à la fonction Lambda lui permettant de purger la file d'attente SQS. La valeur par défaut est false.  | 
|  Déploiement DeadletterQueue ?  |  boolean  |  Indique s'il faut créer une file d'attente secondaire à utiliser comme file d'attente de lettres mortes. La valeur par défaut est 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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut de la file d'attente de lettres mortes. Utilisé uniquement si ledeployDeadLetterQueueest défini sur true.  | 
|  MaxReceiveCount ?  |  number  |  Nombre de fois qu'un message peut être déplacé sans succès avant d'être déplacé vers la file d'attente de lettres mortes. La valeur par défaut est 15.  | 
|  EnableEncryptionWithCustomerManagedKey ?  |  boolean  |  Indique s'il faut utiliser une clé de chiffrement gérée par le client, soit gérée par cette application CDK, soit importée. Si vous importez une clé de chiffrement, elle doit être spécifiée dans laencryptionKeypour cette construction.  | 
|  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)  |  Une clé de chiffrement existante facultative à utiliser à la place de la clé de chiffrement par défaut.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la clé de chiffrement.  | 

## Propriétés de modèle
<a name="pattern-properties-31"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  EventsRègle  |  [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)  |  Renvoie une instance de la règle Events créée par le modèle.  | 
|  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)  |  Renvoie une instance de la file d'attente SQS créée par le modèle.  | 
|  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)  |  Renvoie une instance de la clé de chiffrement créée par le modèle.  | 
|  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)  |  Renvoie une instance de la file d'attente de lettres mortes créée par le modèle, si une instance est déployée.  | 

## Paramètres par défaut
<a name="default-settings-31"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon CloudWatch Events
<a name="amazon-events-rule-31"></a>
+  Accordez les autorisations les moins privilèges aux événements CloudWatch afin de les publier dans la file d'attente SQS. 

### File d'attente Amazon SQS
<a name="amazon-sqs-31"></a>
+  Déployer une file d'attente de lettres mortes pour la file d'attente source. 
+  Activer le chiffrement côté serveur pour la file d'attente source à l'aide d'une clé AWS KMS gérée par le client. 
+  Application du chiffrement des données en transit. 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-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-function
<a name="aws-events-rule-step-function"></a>

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


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion de version sémantique](https://semver.org/)modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1events\$1rule\$1step\$1function  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) Typecript  |  @aws-solutions-constructs/aws-events-rule-step-function  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.eventsrulestepfunction  | 

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

 Cette solution AWS Solutions Construct implémente une règle AWS Events et une fonction AWS Step. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-10"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour SFN.StateMachine  | 
|  EventTruleProps  |  [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)  |  L'utilisateur a fourni EventRuleProps pour remplacer les valeurs par défaut  | 
|  CreateCloudWatchArms  |  boolean  |  Indique s'il faut créer des alarmes CloudWatch recommandées.  | 
|  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 fournis par l'utilisateur pour remplacer les accessoires par défaut pour le groupe de journaux CloudWatch Logs.  | 

## Propriétés de modèle
<a name="pattern-properties-10"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  CloudwatAlarm ?  |  [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)  |  Renvoie une liste d'une ou plusieurs alarmes CloudWatch créées par le modèle.  | 
|  EventsRègle  |  [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)  |  Renvoie une instance de la règle Events créée par le modèle.  | 
|  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)  |  Renvoie une instance de la machine d'état créée par le modèle.  | 
|  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)  |  Renvoie une instance du groupe de journaux créé par le modèle pour la machine d'état.  | 

## Paramètres par défaut
<a name="default-settings-10"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon CloudWatch Events
<a name="amazon-cloudwatch-events-rule-1"></a>
+  Accorder les autorisations les moins privilèges aux événements CloudWatch pour déclencher la fonction Lambda 

### AWS Step Functions
<a name="aws-step-function"></a>
+  Activer la journalisation CloudWatch pour API Gateway 
+  Déployer les meilleures pratiques des alarmes CloudWatch pour la fonction Step 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/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-iot-kinesisfirehose-s3
<a name="aws-iot-kinesisfirehose-s3"></a>

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


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Ceux-ci ne sont pas assujettis à la[Gestion de version sémantique](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1iot\$1kinesisfirehose\$1s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) Typecript  |  @aws-solutions-constructs/aws-iot-kinesisfirehose-s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.iotkinesisfirehoses3  | 

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

 Cette solution AWS Solutions Construct implémente une règle de rubrique AWS IoT MQTT pour envoyer des données à un flux de distribution Amazon Kinesis Data Firehose connecté à un compartiment Amazon S3. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-11"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  L'utilisateur a fourni CFNTopicRuleProps pour remplacer les valeurs par défaut  | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour Kinesis Firehose Delivery Stream  | 
|  Bucketobj existant ?  |  [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)  |  Instance existante de l'objet S3 Bucket, fournissant à la fois ceci etbucketPropsentraînera une erreur.  | 
|  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)  |  L'utilisateur a fourni des accessoires pour remplacer les accessoires par défaut pour le compartiment S3. Si cela est fourni, alors fournir égalementbucketPropsest une erreur.  | 
|  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)  |  Accessoires facultatifs fournis par l'utilisateur pour remplacer les accessoires par défaut du groupe de journaux CloudWatch Logs.  | 

## Propriétés du modèle
<a name="pattern-properties-11"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance du rôle IAM créé par le modèle pour la règle 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)  |  Renvoie une instance de la règle de rubrique IoT créée par le modèle.  | 
|  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)  |  Renvoie une instance du flux de livraison Kinesis Firehose créé par le modèle.  | 
|  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)  |  Renvoie une instance du groupe de journaux créé par le modèle auquel les journaux d'accès Kinesis Firehose sont envoyés.  | 
|  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)  |  Renvoie une instance du rôle IAM créé par le modèle pour le flux de livraison Kinesis Firehose.  | 
|  S3Bucket ?  |  [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)  |  Renvoie une instance du compartiment S3 créé par le modèle.  | 
|  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)  |  Renvoie une instance du compartiment de journalisation créé par le modèle pour le compartiment S3.  | 

## Paramètres par défaut
<a name="default-settings-11"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Règle Amazon IoT
<a name="amazon-iot-rule"></a>
+  Configurer le rôle IAM d'accès minimal aux privilèges pour Amazon IoT 

### Amazon Kinesis Firehose
<a name="amazon-kinesis-firehose"></a>
+  Activer la journalisation CloudWatch pour Kinesis Firehose 
+  Configurer le rôle IAM d'accès minimal aux privilèges pour Amazon Kinesis Firehose 

### Bucket Amazon S3
<a name="amazon-s3-bucket-1"></a>
+  Configurer la journalisation d'accès pour le compartiment S3 
+  Activer le chiffrement côté serveur pour le compartiment S3 à l'aide de la clé KMS gérée par AWS 
+  Activer le contrôle de version pour S3 Bucket 
+  Ne pas autoriser l'accès public pour le compartiment S3 
+  Conserver le compartiment S3 lors de la suppression de la pile CloudFormation 
+  Applique la règle de cycle de vie pour déplacer les versions d'objets non actuelles vers le stockage Glacier après 90 jours 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-constructs/aws-iot-kinesisfirehose-s3](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-iot-kinesisfirehose-s3)  | 

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

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


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique de versions](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1iot\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-iot-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.iotlambda  | 

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

 Ce modèle AWS Solutions Constructs implémente une règle de rubrique AWS IoT MQTT et un modèle de fonction AWS Lambda. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-13"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsentraînera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  IotopicRuleProps ?  |  [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)  |  L'utilisateur a fourni CFNTopicRuleProps pour remplacer les valeurs par défaut  | 

## Propriétés de modèle
<a name="pattern-properties-13"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de la règle de rubrique IoT créée par le modèle.  | 
|  LambdaUnction  |  [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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 

## Paramètres par défaut
<a name="default-settings-13"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Règle Amazon IoT
<a name="amazon-iot-rule-2"></a>
+  Configurez le rôle IAM d'accès le moins élevé pour Amazon IoT. 

### Fonction AWS Lambda
<a name="aws-lambda-function-7"></a>
+  Configurez le rôle IAM d'accès limité pour la fonction Lambda. 
+  Activez la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda. 
+  Activer le suivi X-Ray.
+  Définir les variables d'environnement :
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

## 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/fr_fr/solutions/latest/constructs/images/aws-iot-lambda.png)


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-constructions/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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion sémantique](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1iot\$1lambda\$1dynamodb  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) Typecript  |  @aws-solutions-constructs/aws-iot-lambda-dynamodb  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.iotlambdadynamodb  | 

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

 Ce modèle AWS Solutions Constructs implémente une règle de rubrique AWS IoT, une fonction AWS Lambda et une table Amazon DynamoDB avec les autorisations les moins privilégiées. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Modèle de construction
<a name="pattern-construct-props-12"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  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)  |  Les accessoires fournis par l'utilisateur pour remplacer les accessoires par défaut  | 
|  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)  |  Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour DynamoDB Table  | 
|  TableAutorisations ?  |  [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)  |  Autorisations de table facultatives à accorder à la fonction Lambda. L'une des options suivantes peut être spécifiée :All,Read,ReadWrite, ouWrite.  | 

## Propriétés de modèle
<a name="pattern-properties-12"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de la table DynamoDB créée par le modèle.  | 
|  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)  |  Renvoie une instance de la règle de rubrique IoT créée par le modèle.  | 
|  LambdaUnction  |  [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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 

## Paramètres par défaut
<a name="default-settings-12"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon IoT Règle
<a name="amazon-iot-rule-1"></a>
+  Configurez le rôle IAM d'accès le moins élevé pour Amazon IoT. 

### Fonction AWS Lambda
<a name="aws-lambda-function-6"></a>
+  Configurez le rôle IAM d'accès limité pour la fonction Lambda. 
+  Activez la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda. 
+  Activer le suivi X-Ray.
+  Définir les variables d'environnement :
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

### Amazon DynamoDB Table
<a name="amazon-dynamodb-table-3"></a>
+  Définissez le mode de facturation de la table DynamoDB sur On-Demand (Paiement par demande). 
+  Activez le chiffrement côté serveur pour la table DynamoDB à l'aide de la clé KMS gérée par AWS. 
+  Crée une clé de partition appelée 'id' pour DynamoDB Table. 
+  Conservez la table lors de la suppression de la pile CloudFormation. 
+  Permet de procéder à des sauvegardes continues et à une restauration à un instant dans le passé. 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-constructions/aws-iot-lambda-dynamodb](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-iot-lambda-dynamodb)  | 

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

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


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion de version sémantique](https://semver.org/)modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


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

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

 Cette solution AWS Solutions Construct implémente un flux de diffusion Amazon Kinesis Data Firehose connecté à un compartiment Amazon S3. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-15"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Des accessoires facultatifs fournis par l'utilisateur pour remplacer les accessoires par défaut pour le compartiment S3.  | 
|  Bucketobj existant ?  |  [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)  |  Instance existante facultative de S3 Bucket. Si cela est fourni, alors fournir égalementbucketPropsest une erreur.  | 
|  ExistingLoggingBucketObj ?  |  [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)  |  Instance existante facultative de journalisation du compartiment S3 pour le compartiment S3 créé par le modèle.  | 
|  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  |  Des accessoires facultatifs fournis par l'utilisateur pour remplacer les accessoires par défaut pour 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)  |  Les accessoires facultatifs fournis par l'utilisateur pour remplacer les accessoires par défaut pour CloudWatchLogs LogGroup.  | 

## Propriétés du modèle
<a name="pattern-properties-15"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de KinesisFireHose.cfnDeliveryStream créée par la construction.  | 
|  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)  |  Renvoie une instance du logs.logGroup créé par la construction pour le flux de diffusion 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)  |  Renvoie une instance de l'IAM.Role créée par la construction pour le flux de livraison Kinesis Data Firehose.  | 
|  S3Bucket ?  |  [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)  |  Renvoie une instance de S3.Bucket créée par la construction.  | 
|  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)  |  Renvoie une instance de S3.Bucket créée par la construction en tant que compartiment de journalisation pour le compartiment principal.  | 

## Paramètres par défaut
<a name="default-settings-15"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon Kinesis Firehose
<a name="amazon-kinesis-firehose-2"></a>
+  Activer la journalisation CloudWatch pour Kinesis Firehose 
+  Configurer le rôle IAM d'accès minimal aux privilèges pour Amazon Kinesis Firehose 

### Bucket Amazon S3
<a name="amazon-s3-bucket-3"></a>
+  Configurer la journalisation d'accès pour le compartiment S3 
+  Activer le chiffrement côté serveur pour le compartiment S3 à l'aide de la clé KMS gérée par AWS 
+  Activer le contrôle de version pour S3 Bucket 
+  Ne pas autoriser l'accès public pour le compartiment S3 
+  Conserver le compartiment S3 lors de la suppression de la pile CloudFormation 
+  Application du chiffrement des données en transit 
+ Applique la règle de cycle de vie pour déplacer les versions d'objets non actuelles vers le stockage Glacier après 90 jours 

## 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/fr_fr/solutions/latest/constructs/images/aws-kinesisfirehose-s3.png)


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-construction/aws-kinesisfirehose-s3](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-kinesisfirehose-s3)  | 

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

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


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion de versions sémantiques](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1kinesisfirehose\$1s3\$1and\$1kinesisanalytics  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-kinesisfirehose-s3-and-kinesisanalytics  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.kinesisfirehoses3kinesisanalytics  | 

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

 Cette solution AWS Construct implémente un flux de distribution Amazon Kinesis Firehose connecté à un compartiment Amazon S3 et à une application Amazon Kinesis Analytics. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-14"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour le flux de distribution 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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut de l'application Kinesis Analytics.  | 
|  Bucketobj existant ?  |  [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)  |  Instance existante de l'objet S3 Bucket. Si cela est fourni, alors fournir égalementbucketPropsest une erreur. \$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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut du compartiment. Ignoré siexistingBucketObjest fourni.  | 
|  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)  |  Accessoires fournis par l'utilisateur facultatifs pour remplacer les accessoires par défaut du groupe de journaux CloudWatch Logs.  | 

## Propriétés du modèle
<a name="pattern-properties-14"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de l'application Kinesis Analytics créée par le modèle.  | 
|  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)  |  Renvoie une instance du flux de livraison Kinesis Firehose créé par le modèle.  | 
|  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)  |  Renvoie une instance du groupe de journaux créé par le modèle auquel les journaux d'accès Kinesis Firehose sont envoyés.  | 
|  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)  |  Renvoie une instance du rôle IAM créé par le modèle pour le flux de livraison Kinesis Firehose.  | 
|  S3Bucket ?  |  [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)  |  Renvoie une instance du compartiment S3 créé par le modèle.  | 
|  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)  |  Renvoie une instance du compartiment de journalisation créé par le modèle pour le compartiment S3.  | 

## Paramètres par défaut
<a name="default-settings-14"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon Kinesis Firehose
<a name="amazon-kinesis-firehose-1"></a>
+  Activer la journalisation CloudWatch pour Kinesis Firehose 
+  Configurer le rôle IAM d'accès minimal aux privilèges pour Amazon Kinesis Firehose 

### Amazon S3.
<a name="amazon-s3-bucket-2"></a>
+  Configurer la journalisation d'accès pour le compartiment S3 
+  Activer le chiffrement côté serveur pour le compartiment S3 à l'aide de la clé KMS gérée par AWS 
+  Activer le contrôle de version pour S3 Bucket 
+  Ne pas autoriser l'accès public pour le compartiment S3 
+  Conserver le compartiment S3 lors de la suppression de la pile CloudFormation 
+  Application du chiffrement des données en transit 
+ Applique la règle de cycle de vie pour déplacer les versions d'objets non actuelles vers le stockage Glacier après 90 jours 

### Amazon Kinesis Data Analytics
<a name="amazon-kinesis-data-analytics"></a>
+  Configurer le rôle IAM d'accès minimal aux privilèges pour Amazon Kinesis Analytics 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-constructs/aws-kinesisfirehose-s3-et-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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Ceux-ci ne sont pas assujettis à la[Version sémantique](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1kinesis\$1streams\$1gluejob  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-kinesisstreams-gluejob  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.kinesisstreamsgluejob  | 

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

 Cette solution AWS Construct déploie un flux de données Amazon Kinesis et configure une Job AWS Glue pour effectuer une transformation ETL personnalisée avec les ressources/propriétés appropriées pour l'interaction et la sécurité. Il crée également un compartiment Amazon S3 où le script Python pour AWS Glue Job peut être téléchargé.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-40"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut du flux de données Amazon Kinesis.  | 
|  L'existence de Streamobj ?  |  [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)  |  Instance existante de Kinesis Stream, fournissant à la fois ceci etkinesisStreamPropsprovoquera une erreur.  | 
|  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)  |  Props fournis par l'utilisateur pour remplacer les accessoires par défaut pour le travail AWS Glue.  | 
|  ExistementGlueJob ?  |  [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)  |  Instance existante d'AWS Glue Job, fournissant à la fois ceci etglueJobPropsprovoquera une erreur.  | 
|  Une base de données existante ?  |  [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 données AWS Glue existante à utiliser avec cette construction. Si cela est défini, alorsdatabasePropsest ignoré. | 
|  DatabaseProps ?  |  [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)  |  Props fournis par l'utilisateur pour remplacer les accessoires par défaut utilisés pour créer la base de données AWS Glue. | 
|  Table existante ?  |  [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)  |  Instance existante de la table AWS Glue. Si cela est défini, alorstablePropsandfieldSchemasont ignorés. | 
|  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)  |  Props fournis par l'utilisateur pour remplacer les accessoires par défaut utilisés pour créer une table AWS Glue. | 
|  FieldSchema ?  |  [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)  |  Structure de schéma fournie par l'utilisateur pour créer une table AWS Glue. | 
|  Sortie Datastore ?  |  [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)  |  Accessoires fournis par l'utilisateur pour un compartiment Amazon S3 qui stocke la sortie de la tâche AWS Glue. Actuellement, Amazon S3 ne prend en charge que le type de banque de données en sortie. | 

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


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  Existants3OutputBucket ?  |  [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)  |  Instance existante du compartiment S3 dans laquelle les données doivent être écrites. Fournir à la fois ceci etoutputBucketPropsprovoquera une erreur.  | 
|  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)  |  Propriétés de compartiment fournies par l'utilisateur pour créer le compartiment Amazon S3 utilisé pour stocker la sortie du travail 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)  |  Type de magasin de données de lavabo.  | 

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

Énumération des types de stockage de données pouvant inclure S3, DynamoDB, DocumentDB, RDS ou Redshift. L'implémentation de construction actuelle ne prend en charge que S3, mais il est possible d'ajouter d'autres types de sortie à l'avenir.


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  S3  |  string  |  Type de stockage S3  | 

## Paramètres par défaut
<a name="default-settings-40"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Flux Amazon Kinesis
<a name="w23aab9d115c29b5"></a>
+  Configurez le rôle IAM d'accès le moins privilégié pour le flux de données Amazon Kinesis. 
+  Activez le chiffrement côté serveur pour Amazon Kinesis Stream à l'aide d'une clé KMS gérée AWS. 
+  Déployez les meilleures pratiques Amazon CloudWatch Alarmes pour Amazon Kinesis Stream. 

### Job de Glue
<a name="w23aab9d115c29b7"></a>
+  Créez une configuration de sécurité AWS Glue qui configure le chiffrement pour CloudWatch, Job Bookmarks et S3. CloudWatch et Job Bookmarks sont chiffrés à l'aide de la clé KMS gérée AWS créée pour AWS Glue Service. Le compartiment S3 est configuré avec le mode de chiffrement SSE-S3. 
+  Configurez des stratégies de rôle de service qui permettent à AWS Glue de lire depuis Amazon Kinesis Data Streams. 

### Base de données glue
<a name="w23aab9d115c29b9"></a>
+  Créez une base de données AWS Glue. Une table AWS Glue sera ajoutée à la base de données. Ce tableau définit le schéma des enregistrements mis en mémoire tampon dans le flux de données Amazon Kinesis. 

### Table de Glue
<a name="w23aab9d115c29c11"></a>
+  Créez une table AWS Glue. La définition du schéma de table est basée sur la structure JSON des enregistrements mis en mémoire tampon dans le flux de données Amazon Kinesis. 

### Rôle IAM
<a name="w23aab9d115c29c13"></a>
+  Rôle d'exécution de tâche qui dispose des privilèges suivants : 1) lecture du script ETL à partir de l'emplacement du compartiment Amazon S3, 2) lecture des enregistrements du flux de données Amazon Kinesis et 3) exécution du travail Amazon Glue. 

### S3 de sortie
<a name="w23aab9d115c29c15"></a>
+  Compartiment Amazon S3 où stocker la sortie de la transformation ETL. Ce compartiment sera transmis en tant qu'argument au travail AWS Glue créé afin qu'il puisse être utilisé dans le script ETL pour y écrire des données. 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-construction/aws-kinesisstreams-gluejob](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-kinesisstreams-gluejob)  | 

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

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


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique des versions](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1kinesisstreams\$1kinesisfirehose\$1s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-kinesis-streams-kinesis-firehose-s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.kinesisstreamskinesisfirehoses3  | 

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

 Cette solution AWS Construct implémente un flux de données Amazon Kinesis (KDS) connecté au flux de distribution Amazon Kinesis Data Firehose (KDF) connecté à un compartiment Amazon S3. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-34"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Des accessoires facultatifs fournis par l'utilisateur pour remplacer les accessoires par défaut pour le compartiment S3.  | 
|  Créer CloudWatchArms ?  |  boolean  |  Facultatif si vous souhaitez créer des alarmes CloudWatch recommandées.  | 
|  Bucketobj existant ?  |  [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)  |  Instance existante facultative de l'objet S3 Bucket. Si cela est fourni, alors fournir égalementbucketPropsest une erreur.  | 
|  ExistingLoggingBucketObj ?  |  [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)  |  Instance existante facultative de journalisation de l'objet S3 Bucket pour le compartiment S3 créé par le modèle.  | 
|  L'existence de Streamobj ?  |  [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)  |  Instance existante de Kinesis Stream, fournissant à la fois ceci etkinesisStreamPropsprovoquera une erreur.  | 
|  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  |  Des accessoires facultatifs fournis par l'utilisateur pour remplacer les accessoires par défaut pour 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)  |  L'utilisateur a fourni des accessoires facultatifs pour remplacer les accessoires par défaut pour le flux 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)  |  Des accessoires facultatifs fournis par l'utilisateur pour remplacer les accessoires par défaut pour le groupe de journaux CloudWatchLogs.  | 

## Propriétés du modèle
<a name="pattern-properties-34"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  CloudwatAlarm ?  |  [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)  |  Renvoie une liste des instances CloudWatch.Alarm créées par la construction.  | 
|  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)  |  Renvoie une instance de KinesisFireHose.cfnDeliveryStream créée par la construction.  | 
|  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)  |  Renvoie une instance du logs.logGroup créé par la construction pour le flux de diffusion 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)  |  Renvoie une instance de l'IAM.Role créée par la construction pour le flux de livraison 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)  |  Renvoie une instance de l'IAM.Role créée par la construction pour le flux Kinesis.  | 
|  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)  |  Renvoie une instance de S3.Bucket créée par la construction.  | 
|  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)  |  Renvoie une instance de S3.Bucket créée par la construction en tant que compartiment de journalisation pour le compartiment principal.  | 

## Paramètres par défaut
<a name="default-settings-34"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon Kinesis Stream
<a name="amazon-kinesis-stream-34"></a>
+  Configurer le rôle IAM d'accès minimal aux privilèges pour Kinesis Stream 
+  Activer le chiffrement côté serveur pour Kinesis Stream à l'aide de la clé KMS gérée AWS 
+  Déployer les meilleures pratiques des alarmes CloudWatch pour Kinesis Stream 

### Amazon Kinesis Firehose
<a name="amazon-kinesis-firehose-34"></a>
+  Activer la journalisation CloudWatch pour Kinesis Firehose 
+  Configurer le rôle IAM d'accès minimal aux privilèges pour Amazon Kinesis Firehose 

### Amazon S3 Bucket
<a name="amazon-s3-bucket-34"></a>
+  Configuration de la journalisation des accès pour le compartiment S3 
+  Activer le chiffrement côté serveur pour le compartiment S3 à l'aide de la clé KMS gérée par AWS 
+  Application du chiffrement des données en transit 
+  Activer le contrôle de version du compartiment 
+  Ne pas autoriser l'accès public pour le compartiment S3 
+  Conserver le compartiment S3 lors de la suppression de la pile CloudFormation 
+  Appliquer une règle de cycle de vie pour déplacer des versions d'objets non actuelles vers le stockage Glacier après 90 jours 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-construction/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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique de version](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws-kinesis-streams-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-kinesisstreams-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.kinesisstreamslambda  | 

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

 AWS Solutions Construct déploie une fonction Kinesis Stream et Lambda avec les ressources/propriétés appropriées pour l'interaction et la sécurité. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-16"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour le flux Kinesis.  | 
|  L'existence de Streamobj ?  |  [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)  |  Instance existante de Kinesis Stream, fournissant à la fois ceci etkinesisStreamPropsprovoquera une erreur.  | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour le mappage de source d'événement Lambda.  | 
|  CreateCloudWatchArms  |  boolean  |  Indique s'il faut créer des alarmes CloudWatch recommandées.  | 

## Propriétés de modèle
<a name="pattern-properties-16"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  Stream 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)  |  Renvoie une instance du flux Kinesis créé par le modèle.  | 
|  LambdaFonction  |  [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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 
|  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)  |  Renvoie une instance du rôle IAM créé par le modèle pour le flux Kinesis.  | 
|  Cloudwatch Alarm ?  |  [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)  |  Renvoie la liste d'une ou plusieurs alarmes CloudWatch créées par le modèle.  | 

## Paramètres par défaut
<a name="default-settings-16"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Amazon Kinesis Stream
<a name="amazon-kinesis-stream"></a>
+  Configurez le rôle IAM d'accès le moins élevé pour Kinesis Stream. 
+  Activez le chiffrement côté serveur pour Kinesis Stream à l'aide de la clé KMS gérée par AWS. 
+  Déployez les meilleures pratiques des alarmes CloudWatch pour Kinesis Stream. 

### Fonction AWS Lambda
<a name="aws-lambda-function-8"></a>
+  Configurez le rôle IAM d'accès limité pour la fonction Lambda. 
+  Activez la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda. 
+  Activer le suivi X-Ray.
+  Activer les fonctionnalités de gestion des défaillances : activer le bisect sur la fonction Erreur ; définir l'âge maximal des enregistrements par défaut (24 heures) ; définir les tentatives de relance maximales par défaut (500) ; et déployer la file d'attente des lettres mortes SQS comme destination en cas d'échec.
+  Définir les variables d'environnement :
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-construction/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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique de versions](https://semver.org/)modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1dynamodb  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) Typecript  |  @aws-solutions-constructs/aws-lambda-dynamodb  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdadynamodb  | 

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

 Cette solution AWS Construct implémente la fonction AWS Lambda et la table Amazon DynamoDB avec les autorisations les moins privilèges. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-17"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  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)  |  Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour DynamoDB Table  | 
|  ExistantTableObj ?  |  [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)  |  Instance existante de l'objet de table DynamoDB, fournissant à la fois ceci etdynamoTablePropsprovoquera une erreur.  | 
|  TableAutorisations ?  |  [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)  |  Autorisations de table facultatives à accorder à la fonction Lambda. L'une des options suivantes peut être spécifiée :All,Read,ReadWrite, ouWrite.  | 
|  TableEnvironmentVariableName ?  |  string  |  Nom facultatif de la variable d'environnement de table DynamoDB définie pour la fonction Lambda.  | 
|  VPC existant ?  |  [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)  |  Un VPC existant optionnel dans lequel ce modèle doit être déployé. Lorsqu'elle est déployée dans un VPC, la fonction Lambda utilise ENI dans le VPC pour accéder aux ressources réseau et un point de terminaison de passerelle est créé dans le VPC pour Amazon DynamoDB. Si un VPC existant est fourni, ledeployVpcne peut pas êtretrue. Cela utiliseec2.IVpcpour permettre aux clients de fournir des VPC qui existent en dehors de la pile à l'aide de la méthode[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éthode.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut du nouveau VPC.enableDnsHostnames,enableDnsSupport,natGateways, etsubnetConfigurationsont définies par le modèle, donc toutes les valeurs pour ces propriétés fournies ici seront remplacées. SideployVpcn'est pastrueCette propriété sera ignorée.  | 
|  Déploiement de VPC ?  |  boolean  |  Que ce soit pour créer un VPC basé survpcPropsdans lequel déployer ce modèle. La définition de cette valeur sur true déploiera le VPC minimal et le plus privé pour exécuter le modèle : [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/aws-lambda-dynamodb.html) Si cette propriété esttrue, puisexistingVpcne peut pas être spécifié. La valeur par défaut est false.  | 

## Propriétés du modèle
<a name="pattern-properties-17"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de la table DynamoDB créée par le modèle.  | 
|  LambdaUNction  |  [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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 
|  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)  |  Renvoie une interface sur le VPC utilisé par le modèle (le cas échéant). Il peut s'agir d'un VPC créé par le modèle ou du VPC fourni au constructeur de modèle.  | 

## Paramètres par défaut
<a name="default-settings-17"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Fonction AWS Lambda
<a name="aws-lambda-function-9"></a>
+  Configurez le rôle IAM d'accès limité pour la fonction Lambda. 
+  Activez la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda. 
+  Activer le suivi X-Ray.
+  Définir les variables d'environnement :
  +  `DDB_TABLE_NAME` (default)
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

### Amazon DynamoDB Table
<a name="amazon-dynamodb-table-4"></a>
+  Définissez le mode de facturation de la table DynamoDB sur On-Demand (Paiement par demande). 
+  Activez le chiffrement côté serveur pour la table DynamoDB à l'aide de la clé KMS gérée par AWS. 
+  Crée une clé de partition appelée 'id' pour DynamoDB Table. 
+  Conservez la table lors de la suppression de la pile CloudFormation. 
+  Activez les sauvegardes continues et la restauration à un instant dans le passé. 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-constructions/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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans toute version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique de version](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1elasticsearch\$1kibana  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-lambda-elasticsearch-kibana  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdaelasticsearchkibana  | 

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

 AWS Solutions Construct implémente une fonction AWS Lambda et un domaine Amazon Elasticsearch Service avec les autorisations les moins privilégiées.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-18"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  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)  |  Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour Amazon Elasticsearch Service  | 
|  domainName  |  string  |  Nom de domaine pour Cognito et Amazon Elasticsearch Service  | 
|  CognitoNom de domaine ?  |  string  |  Nom de domaine Cognito facultatif. S'il est fourni, il sera utilisé pour le domaine Cognito, etdomainNamesera utilisé pour le domaine Elasticsearch.  | 
|  CreateCloudWatchArms  |  boolean  |  Indique s'il faut créer des alarmes CloudWatch recommandées.  | 
|  DomainEndPointEnVironmentVariableName ?  |  string  |  Nom facultatif pour la variable d'environnement de point de terminaison de domaine ElasticSearch définie pour la fonction Lambda.  | 

## Propriétés du modèle
<a name="pattern-properties-18"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  Cloudwatch Alarm ?  |  [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)  |  Renvoie la liste d'une ou plusieurs alarmes CloudWatch créées par le modèle.  | 
|  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)  |  Renvoie une instance du domaine Elasticsearch créé par le modèle.  | 
|  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)  |  Renvoie une instance du rôle IAM créé par le modèle pour le domaine 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)  |  Renvoie une instance du pool d'identités Cognito créé par le modèle.  | 
|  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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 
|  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)  |  Renvoie une instance du pool d'utilisateurs Cognito créé par le modèle.  | 
|  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)  |  Renvoie une instance du client de pool d'utilisateurs Cognito créé par le modèle.  | 

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

Ce modèle nécessite une fonction Lambda qui peut publier des données dans le service Elasticsearch à partir du flux DynamoDB. Un exemple de fonction est fourni[Ici](https://github.com/awslabs/aws-solutions-constructs/blob/master/source/patterns/%40aws-solutions-constructs/aws-lambda-elasticsearch-kibana/test/lambda/index.js).

## Paramètres par défaut
<a name="default-settings-18"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Fonction AWS Lambda
<a name="aws-lambda-function-10"></a>
+  Configurez le rôle IAM d'accès limité pour la fonction Lambda. 
+  Activez la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda. 
+  Activer le suivi X-Ray.
+  Définir les variables d'environnement :
  +  `DOMAIN_ENDPOINT` (default)
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

### Amazon Cognito
<a name="amazon-cognito-2"></a>
+  Définir la stratégie de mot de passe pour les pools d'utilisateurs 
+  Appliquez le mode de sécurité avancé pour les pools d'utilisateurs. 

### Amazon Elasticsearch Service
<a name="amazon-elasticsearch-service-1"></a>
+  Déployez les meilleures pratiques CloudWatch Alarmes pour le domaine Elasticsearch. 
+  Sécurisez l'accès au tableau de bord Kibana avec les pools d'utilisateurs Cognito. 
+  Activez le chiffrement côté serveur pour le domaine Elasticsearch à l'aide de la clé KMS gérée par AWS. 
+  Activer le chiffrement nœud à nœud pour le domaine Elasticsearch. 
+  Configurez le cluster pour le domaine 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/fr_fr/solutions/latest/constructs/images/aws-lambda-elasticsearch-kibana.png)


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans toute version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique de version](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-lambda-s3  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdas3  | 

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

 Ce kit AWS Solutions Construct implémente une fonction AWS Lambda connectée à un compartiment Amazon S3.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-19"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  Bucketobj existant ?  |  [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)  |  Instance existante de l'objet S3 Bucket. Si cela est fourni, alors fournir égalementbucketPropsest une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut du compartiment. Ignoré si unexistingBucketObjest fourni.  | 
|  Autorisations BucketPermissions ?  |  string[]  |  Autorisations de compartiment facultatives à accorder à la fonction Lambda. Un ou plusieurs des éléments suivants peuvent être spécifiés :Delete,Put,Read,ReadWrite,Write.  | 
|  VPC existant ?  |  [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)  |  Un VPC existant optionnel dans lequel ce modèle doit être déployé. Lorsqu'elle est déployée dans un VPC, la fonction Lambda utilise ENI dans le VPC pour accéder aux ressources réseau et un point de terminaison d'interface est créé dans le VPC pour Amazon SQS. Si un VPC existant est fourni, ledeployVpcne peut pas êtretrue. Cela utiliseec2.IVpcpour permettre aux clients de fournir des VPC qui existent en dehors de la pile à l'aide de la méthode[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éthode.  | 
|  Déploiement de VPC ?  |  boolean  |  S'il faut créer un VPC basé survpcPropsdans lequel déployer ce modèle. Définissez surtruedéploiera le VPC minimal et le plus privé pour exécuter le modèle : [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/aws-lambda-s3.html) Si cette propriété esttrue, puisexistingVpcne peut pas être spécifié. La valeur par défaut est 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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut du nouveau VPC.enableDnsHostnames,enableDnsSupport,natGatewaysandsubnetConfigurationsont définies par le modèle, donc toutes les valeurs pour ces propriétés fournies ici seront remplacées. SideployVpcn'est pastrueCette propriété sera ignorée.  | 
|  BucketEnvironmentVariableName ?  |  string  |  Nom facultatif de la variable d'environnement de compartiment S3 définie pour la fonction Lambda.  | 

## Propriétés du modèle
<a name="pattern-properties-19"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 
|  S3Bucket ?  |  [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)  |  Renvoie une instance du compartiment S3 créé par le modèle.  | 
|  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)  |  Renvoie une instance du compartiment de journalisation créé par le modèle pour le compartiment S3.  | 
|  Un 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)  |  Renvoie une instance du VPC utilisé par le modèle (le cas échéant). Il peut s'agir d'un VPC créé par le modèle ou du VPC fourni au constructeur de modèle.  | 

## Paramètres par défaut
<a name="default-settings-19"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Fonction AWS Lambda
<a name="aws-lambda-function-11"></a>
+  Configurez le rôle IAM d'accès limité pour la fonction Lambda. 
+  Activez la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda. 
+  Activer le suivi X-Ray
+  Définissez les variables d'environnement :
  +  `S3_BUCKET_NAME` (default)
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

### Bucket Amazon S3
<a name="amazon-s3-bucket-4"></a>
+  Configurez la journalisation d'accès pour le compartiment S3. 
+  Activez le chiffrement côté serveur pour le compartiment S3 à l'aide de la clé KMS gérée par AWS. 
+  Activez le contrôle de version pour S3 Bucket. 
+  N'autorisez pas l'accès public pour le compartiment S3. 
+  Conservez le compartiment S3 lors de la suppression de la pile CloudFormation. 
+  Application du chiffrement des données en transit. 
+  Applique la règle de cycle de vie pour déplacer les versions d'objets non actuelles vers le stockage Glacier après 90 jours. 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-construction/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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion de version sémantique](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1ssm\$1string\$1parameter  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-lambda-ssmstringparameter  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdassmstringparameter  | 

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

 Ce module AWS Solutions Construct implémente la fonction AWS Lambda et le paramètre Chaîne de stockage de paramètres AWS Systems Manager avec les autorisations les moins privilégiées. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-43"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  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)  |  Instance existante de l'objet de paramètre SSM String, fournissant à la fois ceci etstringParameterPropsprovoquera une erreur.  | 
|  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)  |  Des accessoires facultatifs fournis par l'utilisateur pour remplacer les accessoires par défaut pour le paramètre SSM String. SiexistingStringParameterObjn'est pas défini,stringParameterPropsLe paramètre est obligatoire. Le seul pris en charge[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)est[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 une valeur différente est fournie, elle sera remplacée.  | 
|  StringParameterEnvironmentVariableName ?  |  string  |  Nom facultatif de la variable d'environnement de paramètre SSM String définie pour la fonction Lambda.  | 
|  VPC existant ?  |  [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)  |  Un VPC existant optionnel dans lequel ce modèle doit être déployé. Lorsqu'elle est déployée dans un VPC, la fonction Lambda utilise les ENI du VPC pour accéder aux ressources réseau et un point de terminaison d'interface est créé dans le paramètre VPC for AWS Systems Manager. Si un VPC existant est fourni, ledeployVpcne peut pas êtretrue. Cela utiliseec2.IVpcpour permettre aux clients de fournir des VPC qui existent en dehors de la pile à l'aide de la méthode[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éthode.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut du nouveau VPC.enableDnsHostnames,enableDnsSupport,natGatewaysandsubnetConfigurationsont définies par le modèle, donc toutes les valeurs pour ces propriétés fournies ici seront remplacées. SideployVpcn'est pastrueCette propriété sera ignorée.  | 
|  Déploiement de VPC ?  |  boolean  |  Que ce soit pour créer un VPC basé survpcPropsdans lequel déployer ce modèle. Paramètre surtruedéploiera le VPC minimal et le plus privé pour exécuter le modèle : [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/aws-lambda-ssmstringparameter.html) Si cette propriété est définie surtrue, puisexistingVpcne peut pas être spécifié. La valeur par défaut est false.  | 
|  StringParameterPermissions ?  |  string  |  Autorisations de paramètre SSM String facultatives à accorder à la fonction Lambda. L'un des éléments suivants peut être spécifié :Read,ReadWrite.  | 

## Propriétés de modèle
<a name="pattern-properties-43"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  LambdaFonction  |  [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)  |  Retourne une instance delambda.Functioncréé par la construction.  | 
|  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)  |  Retourne une instance dessm.StringParametercréé par la construction.  | 
|  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)  |  Renvoie une interface sur le VPC utilisé par le modèle (le cas échéant). Il peut s'agir d'un VPC créé par le modèle ou du VPC fourni au constructeur de modèle.  | 

## Paramètres par défaut
<a name="default-settings-43"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Fonction AWS Lambda
<a name="aws-lambda-function-9"></a>
+  Configurez le rôle IAM d'accès limité pour la fonction Lambda. 
+  Activez la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda. 
+  Activez le suivi X-Ray.
+  Définir les variables d'environnement :
  +  `SSM_STRING_PARAMETER_NAME` (default)
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

### Chaîne de stockage de paramètres Amazon AWS Systems Manager
<a name="amazon-ssm-43"></a>
+  Activez l'accès en lecture seule pour la fonction AWS Lambda associée. 
+  Crée un nouveau paramètre SSM String avec les valeurs fournies. 
+  Conservez le paramètre SSM String lors de la suppression de la pile CloudFormation. 

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

![\[AWS Lambda logo connected to CloudFormation and AWSCloudWatch icons via arrows.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/aws-lambda-ssmstringparameter.png)


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans toute version future. Ceux-ci ne sont pas assujettis à la[Gestion de versions sémantiques](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Builts et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1sagemakerendpoint  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-lambda-sagemakerendpoint  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdasagemakerendpoint  | 

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

 Cette solution AWS Construct implémente une fonction AWS Lambda connectée à un point de terminaison Amazon Sagemaker.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Modèle de construction
<a name="pattern-construct-props-41"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. | 
|  ExistantSageMakerendPointTobj ?  |  [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 existant en option à utiliser. Fournir à la fois ceci etendpointPropsprovoquera une erreur.  | 
|  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  |  Propriétés fournies par l'utilisateur pour remplacer les propriétés par défaut du modèle Sagemaker. Au moinsmodelProps.primaryContainerdoit être fourni pour créer un modèle. Par défaut, le modèle créera un rôle avec les autorisations minimales requises, mais le client peut fournir un rôle personnalisé avec des fonctionnalités supplémentaires en utilisantmodelProps.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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la configuration 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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut du point de terminaison Sagemaker. | 
|  VPC existant ?  |  [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)  |  Un VPC existant optionnel dans lequel cette construction doit être déployée. Lorsqu'ils sont déployés dans un VPC, la fonction Lambda et Sagemaker Endpoint utilisent les ENI du VPC pour accéder aux ressources réseau. Un point de terminaison d'interface sera créé dans le VPC pour Amazon Sagemaker Runtime et Amazon S3 VPC Endpoint. Si un VPC existant est fourni, ledeployVpcne peut pas êtretrue. | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut du nouveau VPC.enableDnsHostnames,enableDnsSupport,natGatewaysandsubnetConfigurationsont définis par la construction, donc toutes les valeurs pour ces propriétés fournies ici seront remplacées. SideployVpcn'est pastrue, cette propriété sera ignorée. | 
|  Déploiement de VPC ?  |  boolean  |  Que ce soit pour créer un nouveau VPC basé survpcPropsdans lequel déployer ce modèle. Paramètre surtruedéploiera le VPC minimal et le plus privé pour exécuter le modèle : [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/aws-lambda-sagemakerendpoint.html) Si cette propriété est définie surtrue, puisexistingVpcne peut pas être spécifié. La valeur par défaut est false.  | 
|  SageMakerEnvironmentVariableName ?  |  string  |  Nom facultatif de la variable d'environnement de point de terminaison SageMaker définie pour la fonction Lambda. | 

## Propriétés de modèle
<a name="pattern-properties-41"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  LambdaUNction  |  [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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 
|  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)  |  Renvoie une instance du point de terminaison Sagemaker créé par le modèle.  | 
|  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)  |  Renvoie une instance de SageMaker EndpointConfig créée par le modèle, siexistingSagemakerEndpointObjn'est pas fourni. | 
|  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)  |  Renvoie une instance du modèle Sagemaker créé par le modèle, siexistingSagemakerEndpointObjn'est pas fourni. | 
|  VPC ?  |  ec2.IVpc  |  Renvoie une instance du VPC créée par le modèle, sideployVpcesttrue, ou siexistingVpcest fourni. | 

## Paramètres par défaut
<a name="default-settings-41"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Fonction AWS Lambda
<a name="w23aab9d147c25b5"></a>
+  Configurez le rôle IAM d'accès limité pour la fonction Lambda. 
+  Activez la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda. 
+  Autorisez la fonction à appeler le point de terminaison Sagemaker pour les inférences. 
+  Configurez la fonction pour accéder aux ressources du VPC, où le point de terminaison Sagemaker est déployé. 
+  Activez le suivi X-Ray 
+  Définir les variables d'environnement : 
  + `SAGEMAKER_ENDPOINT_NAME` (default)
  + `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

### Amazon SageMaker
<a name="w23aab9d147c25b7"></a>
+  Configurez des privilèges limités pour créer des ressources Sagemaker. 
+  Déployez le modèle Sagemaker, EndPointConfig et le point de terminaison. 
+  Configurez le point de terminaison Sagemaker à déployer dans un VPC. 
+  Déployez le point de terminaison VPC S3 et l'interface VPC Runtime de Sagemaker. 

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

![\[Diagram showing AWS Lambda connected to CloudWatch, SageMaker Endpoint, and IAM Roles.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/aws-lambda-sagemakerendpoint.png)


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-construction/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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion de versions sémantiques](https://semver.org/)Le modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1secretsmanager  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-lambda-secretsmanager  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdasecretsmanager  | 

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

 Cette solution AWS Construct implémente la fonction AWS Lambda et le secret AWS Secrets Manager avec les autorisations les moins privilégiées.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-42"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  L'utilisateur a fourni des accessoires pour remplacer les accessoires par défaut pour la fonction 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)  |  Les accessoires facultatifs fournis par l'utilisateur pour remplacer les accessoires par défaut pour Secrets Manager.  | 
|  SecretoBJ existe-t-il ?  |  [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)  |  Instance existante de l'objet secret Secrets Manager, Si cela est défini, alors la propriétésecretPropsest ignoré.  | 
|  GrantwriteAccess ?  |  boolean  |  Accès facultatif en écriture au secret pour la fonction Lambda (lecture seule par défaut).  | 
|  SecretEnVironmentNomVariableName ?  |  string  |  Nom facultatif de la variable d'environnement secrète Secrets Manager définie pour la fonction Lambda.  | 
|  VPC existant ?  |  [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)  |  Un VPC existant optionnel dans lequel ce modèle doit être déployé. Lorsqu'elle est déployée dans un VPC, la fonction Lambda utilise les ENI du VPC pour accéder aux ressources réseau et un point de terminaison d'interface est créé dans le VPC for AWS Secrets Manager. Si un VPC existant est fourni, ledeployVpcne peut pas êtretrue. Cela utiliseec2.IVpcpour permettre aux clients de fournir des VPC qui existent en dehors de la pile à l'aide de la méthode[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éthode.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut du nouveau VPC.enableDnsHostnames,enableDnsSupport,natGateways, etsubnetConfigurationsont définies par le modèle, donc toutes les valeurs pour ces propriétés fournies ici seront remplacées. SideployVpcn'est pastrueCette propriété sera ignorée.  | 
|  Déploiement de VPC ?  |  boolean  |  Que ce soit pour créer un VPC basé survpcPropsdans lequel déployer ce modèle. Paramètre surtruedéploiera le VPC minimal et le plus privé pour exécuter le modèle : [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/aws-lambda-secretsmanager.html) Si cette propriété esttrue, puisexistingVpcne peut pas être spécifié. La valeur par défaut est false.  | 

## Propriétés du modèle
<a name="pattern-properties-42"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  LambdaFonction  |  [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)  |  Retourne une instance delambda.Functioncréé par la construction.  | 
|  secret  |  [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)  |  Retourne une instance desecretsmanager.Secretcréé par la construction.  | 
|  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)  |  Renvoie une interface sur le VPC utilisé par le modèle (le cas échéant). Il peut s'agir d'un VPC créé par le modèle ou du VPC fourni au constructeur de modèle.  | 

## Paramètres par défaut
<a name="default-settings-42"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Fonction AWS Lambda
<a name="aws-lambda-function-42"></a>
+  Configurez le rôle IAM d'accès limité pour la fonction Lambda. 
+  Activez la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda. 
+  Activez le suivi X-Ray.
+  Définissez les variables d'environnement :
  +  (par défaut) SECRET\$1ARN contenant l'ARN du secret comme retour par CDK[SecretArn](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-secretsmanager.Secret.html#secretarn)La propriété
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

### Secret Amazon Secrets Manager
<a name="aws-secretsmanger-secret"></a>
+  Activer l'accès en lecture seule pour la fonction AWS Lambda associée 
+  Activer le chiffrement côté serveur à l'aide d'une clé KMS par défaut pour le compte et la région 
+  Nous créons un secret :
  + (par défaut) nom aléatoire
  + valeur aléatoire (par défaut)
+  Conserver le secret lors de la suppression de la pile CloudFormation 

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

![\[Diagram showing AWS Lambda icon connecting to security and cloud search icons.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/aws-lambda-secretsmanager.png)


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion de versions sémantiques](https://semver.org/)Le modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1sns  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-lambda-sns  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdasns  | 

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

 Cette AWS Solutions Construct implémente une fonction AWS Lambda connectée à une rubrique Amazon SNS.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-20"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  ExistantTopicObj ?  |  [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)  |  Instance existante de l'objet SNS Topic, fournissant à la fois ceci ettopicPropsprovoquera une erreur.  | 
|  SujetProps ?  |  [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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la rubrique SNS.  | 
|  VPC existant ?  |  [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)  |  Un VPC existant optionnel dans lequel ce modèle doit être déployé. Lorsqu'elle est déployée dans un VPC, la fonction Lambda utilise ENI dans le VPC pour accéder aux ressources réseau et un point de terminaison d'interface est créé dans le VPC pour Amazon SQS. Si un VPC existant est fourni, ledeployVpcne peut pas êtretrue. Cela utiliseec2.IVpcpour permettre aux clients de fournir des VPC qui existent en dehors de la pile à l'aide de la méthode[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éthode.  | 
|  Déploiement de VPC ?  |  boolean  |  Que ce soit pour créer un VPC basé survpcPropsdans lequel déployer ce modèle. Paramètre surtruedéploiera le VPC minimal et le plus privé pour exécuter le modèle : [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/aws-lambda-sns.html) Si cette propriété esttrue, puisexistingVpcne peut pas être spécifié. La valeur par défaut est 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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut du nouveau VPC.enableDnsHostnames,enableDnsSupport,natGatewaysandsubnetConfigurationsont définies par le modèle, donc toutes les valeurs pour ces propriétés fournies ici seront remplacées. SideployVpcn'est pastrueCette propriété sera ignorée.  | 
|  TopicArnEnvironmentVariableName ?  |  string  |  Nom facultatif pour la variable d'environnement ARN de rubrique SNS définie pour la fonction Lambda.  | 
|  topicNameEnvironmentaireNomVariableName ?  |  string  |  Nom facultatif pour la variable d'environnement de nom de rubrique SNS définie pour la fonction Lambda.  | 

## Propriétés du modèle
<a name="pattern-properties-20"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  LambdaFonction  |  [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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 
|  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)  |  Renvoie une instance de la rubrique SNS créée par le modèle.  | 
|  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)  |  Renvoie une instance du VPC utilisé par le modèle (le cas échéant). Il peut s'agir d'un VPC créé par le modèle ou du VPC fourni au constructeur de modèle.  | 

## Paramètres par défaut
<a name="default-settings-20"></a>

 L'implémentation prête à l'emploi de la construction sans remplacement définira les valeurs par défaut suivantes : 

### Fonction AWS Lambda
<a name="aws-lambda-function-12"></a>
+  Configurez le rôle IAM d'accès limité pour la fonction Lambda. 
+  Activez la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda. 
+  Activez le suivi X-Ray.
+  Définissez les variables d'environnement :
  +  `SNS_TOPIC_NAME` (default)
  +  `SNS_TOPIC_ARN` (default)
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

### Rubrique Amazon SNS
<a name="amazon-sns-topic"></a>
+  Configurez les autorisations d'accès les moins privilèges pour la rubrique SNS. 
+  Activez le chiffrement côté serveur à l'aide d'une clé KMS gérée par AWS. 
+  Application du chiffrement des données en transit. 

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

![\[AWS Lambda connected to Amazon Simple Notification Service with IAM role below Lambda.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/aws-lambda-sns.png)


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-constructions/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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion de versions sémantiques](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-lambda-sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdasqs  | 

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

 AWS Solutions Construct implémente une fonction AWS Lambda connectée à une file d'attente Amazon SQS.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-25"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Fonction Lambda optionnelle existante à utiliser à la place de la fonction par défaut. Fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda.  | 
|  QueueObj existant ?  |  [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)  |  Une file d'attente SQS existante facultative à utiliser à la place de la file d'attente par défaut. Fournissant à la fois ceci etqueuePropsprovoquera une erreur.  | 
|  QueueProps ?  |  [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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la file d'attente SQS.  | 
|  EnableQueueUrging ?  |  boolean  |  Indique s'il faut accorder des autorisations supplémentaires à la fonction Lambda lui permettant de purger la file d'attente SQS. La valeur par défaut est false.  | 
|  Déploiement DeadletterQueue ?  |  boolean  |  Indique si une file d'attente secondaire doit être utilisée comme file d'attente de lettres mortes. La valeur par défaut est 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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut de la file d'attente de lettres mortes. Utilisé uniquement si ledeployDeadLetterQueuea la valeur true.  | 
|  MaxReceiveCount ?  |  number  |  Nombre de fois qu'un message peut être retiré sans succès avant d'être déplacé vers la file d'attente de lettres mortes. La valeur par défaut est 15.  | 
|  VPC existant ?  |  [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)  |  Un VPC existant optionnel dans lequel ce modèle doit être déployé. Lorsqu'elle est déployée dans un VPC, la fonction Lambda utilise les ENI du VPC pour accéder aux ressources réseau et un point de terminaison d'interface est créé dans le VPC pour Amazon SQS. Si un VPC existant est fourni, ledeployVpcne peut pas êtretrue. Unec2.IVpcest utilisé pour permettre aux clients de fournir des VPC qui existent en dehors de la pile à l'aide de la méthode[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éthode.  | 
|  Déploiement de VPC ?  |  boolean  |  Que ce soit pour créer un nouveau VPC basé survpcPropsdans lequel déployer ce modèle. Paramètre surtruedéploiera le VPC minimal et le plus privé pour exécuter le modèle : [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/aws-lambda-sqs.html) Si cette propriété esttrue, puisexistingVpcne peut pas être spécifié. La valeur par défaut est 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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut du nouveau VPC.enableDnsHostnames,enableDnsSupport,natGateways, etsubnetConfigurationsont définies par le modèle, donc toutes les valeurs de ces propriétés fournies ici seront remplacées. SideployVpcn'est pastrue, cette propriété sera ignorée.  | 
|  QueueEnvironmentVariableName ?  |  string  |  Nom facultatif de la variable d'environnement d'URL de file d'attente SQS définie pour la fonction Lambda.  | 

## Propriétés du modèle
<a name="pattern-properties-25"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de la file d'attente de lettres mortes créée par le modèle, si une instance est déployée.  | 
|  LambdaFonction  |  [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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 
|  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)  |  Renvoie une instance de la file d'attente SQS créée par le modèle.  | 
|  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)  |  Renvoie une instance du VPC créée ou utilisée par le modèle (le cas échéant). Il peut s'agir d'un VPC créé par le modèle ou d'un VPC fourni au constructeur de modèle.  | 

## Paramètres par défaut
<a name="default-settings-25"></a>

 L'implémentation prête à l'emploi de la construction sans remplacement définira les valeurs par défaut suivantes : 

### Fonction AWS Lambda
<a name="aws-lambda-function-25"></a>
+  Configurez le rôle IAM d'accès limité pour la fonction Lambda. 
+  Activez la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda. 
+  Autoriser la fonction à envoyer uniquement des messages à la file d'attente (la purge peut être activée à l'aide de l'option`enableQueuePurge`propriété). 
+  Activer le suivi X-Ray
+  Définissez les variables d'environnement :
  +  `SQS_QUEUE_URL`
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

### File d'attente Amazon SQS
<a name="amazon-sqs-queue-25"></a>
+  Déployez la file d'attente de lettres mortes SQS pour la file d'attente SQS source. 
+  Activer le chiffrement côté serveur pour la file d'attente source SQS à l'aide de la clé KMS gérée AWS. 
+  Application du chiffrement des données en transit. 

## 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/fr_fr/solutions/latest/constructs/images/aws-lambda-sqs.png)


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-constructions/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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans toute version future. Ceux-ci ne sont pas assujettis à la[Gestion de versions sémantiques](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1sqs\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-lambda-sqs-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdasqslambda  | 

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

 Ce modèle AWS Solutions Constructs implémente (1) une fonction AWS Lambda configurée pour envoyer des messages à une file d'attente ; (2) une file d'attente Amazon SQS ; et (3) une fonction AWS Lambda configurée pour consommer des messages de la file d'attente. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Modèle de construction
<a name="pattern-construct-props-27"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  Producteur existant Lambdaobj ?  |  [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)  |  Fonction Lambda optionnelle existante à utiliser à la place de la fonction par défaut pour envoyer des messages à la file d'attente. Fournir à la fois ceci etproducerLambdaFunctionPropsprovoquera une erreur.  | 
|  ProducerLambdaFunctionProps ?  |  [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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda du producteur.  | 
|  QueueObj existant ?  |  [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)  |  Une file d'attente SQS existante facultative à utiliser à la place de la file d'attente par défaut. Fournir à la fois ceci etqueuePropsprovoquera une erreur.  | 
|  QueueProps ?  |  [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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la file d'attente SQS. Fournir à la fois ceci etexistingQueueObjprovoquera une erreur.  | 
|  Déploiement DeadletterQueue ?  |  boolean  |  Indique s'il faut créer une file d'attente secondaire à utiliser comme file d'attente de lettres mortes. La valeur par défaut est 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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut de la file d'attente de lettres mortes. Utilisé uniquement si ledeployDeadLetterQueueest définie surtrue.  | 
|  MaxReceiveCount ?  |  number  |  Nombre de fois qu'un message peut être déplacé sans succès avant d'être déplacé vers la file d'attente de lettres mortes. La valeur par défaut est 15.  | 
|  ExistantConsumerLambdaobj ?  |  [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)  |  Fonction Lambda optionnelle existante à utiliser à la place de la fonction par défaut pour réception/consommer des messages de la file d'attente. Fournir à la fois ceci etconsumerLambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda consommateur.  | 
|  QueueEnvironmentVariableName ?  |  string  |  Nom facultatif de la variable d'environnement d'URL de file d'attente SQS définie pour la fonction Lambda du producteur.  | 

## Propriétés du modèle
<a name="pattern-properties-27"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  Consommateur 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)  |  Renvoie une instance de la fonction Lambda consommateur créée par le modèle.  | 
|  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)  |  Renvoie une instance de la file d'attente de lettres mortes créée par le modèle, si une instance est déployée.  | 
|  ProducteurLambdafunction  |  [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)  |  Renvoie une instance de la fonction Lambda producteur créée par le modèle.  | 
|  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)  |  Renvoie une instance de la file d'attente SQS créée par le modèle.  | 

## Paramètres par défaut
<a name="default-settings-27"></a>

 L'implémentation prête à l'emploi de cette construction (sans propriétés remplacées) respectera les valeurs par défaut suivantes : 

### Fonctions AWS Lambda
<a name="aws-lambda-function-27"></a>
+  Configurer le rôle IAM d'accès limité aux privilèges pour les fonctions Lambda. 
+  Activez la réutilisation des connexions avec les fonctions Keep-Alive pour NodeJS Lambda. 
+  Activer le suivi X-Ray
+  Définir les variables d'environnement :
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

### File d'attente Amazon SQS
<a name="amazon-sqs-queue-27"></a>
+  Déployer une file d'attente de lettre morte pour la file d'attente principale. 
+  Activer le chiffrement côté serveur pour la file d'attente principale à l'aide d'une clé AWS Managed KMS. 
+  Application du chiffrement des données en transit 

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

![\[Diagram showing cloud search, Lambda functions, queue, and DLQ components in AWS architecture.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/aws-lambda-sqs-lambda.png)


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-constructions/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-function
<a name="aws-lambda-step-function"></a>

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


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Ceux-ci ne sont pas assujettis à la[Gestion de version sémantique](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1lambda\$1step\$1function  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-lambda-step-function  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.lambdastepfunction  | 

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

 Cette solution AWS Construct implémente une fonction AWS Lambda connectée à une fonction AWS Step.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-26"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  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)  |  Les accessoires fournis par l'utilisateur pour SFN.StateMachine. | 
|  CreateCloudWatchArms  |  boolean  |  Indique s'il faut créer des alarmes CloudWatch recommandées.  | 
|  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)  |  Accessoires fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour le groupe de journaux CloudWatch Logs.  | 
|  StateMachineEnvironmentVariableName  |  string  |  Nom facultatif pour la variable d'environnement de machine d'état Step Functions définie pour la fonction Lambda du producteur.  | 

## Propriétés de modèle
<a name="pattern-properties-26"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  Cloudwatch Alarm ?  |  [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)  |  Renvoie une liste d'une ou plusieurs alarmes CloudWatch créées par le modèle.  | 
|  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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 
|  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)  |  Renvoie une instance de la machine d'état créée par le modèle.  | 
|  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)  |  Renvoie une instance du groupe de journaux créé par le modèle pour la machine d'état.  | 

## Paramètres par défaut
<a name="default-settings-26"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Fonction AWS Lambda
<a name="aws-lambda-function-26"></a>
+  Configurez un rôle IAM à accès limité pour la fonction Lambda.
+  Activez la réutilisation des connexions avec les fonctions Keep-Alive pour NodeJS Lambda.
+  Activer le suivi X-Ray.
+  Définir les variables d'environnement :
  +  `STATE_MACHINE_ARN` (default)
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

### AWS Step Functions
<a name="amazon-sf-state-machine-26"></a>
+  Déployez les alarmes CloudWatch les meilleures pratiques pour la machine d'état AWS Step Functions.

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-constructions/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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans toute version future. Ceux-ci ne sont pas assujettis à la[Gestion sémantique des versions](https://semver.org/)Le modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1s3\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-s3-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.s3lambda  | 

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

 Ce module AWS Solutions Construct implémente un compartiment Amazon S3 connecté à une fonction AWS Lambda.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-21"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  Bucketobj existant ?  |  [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)  |  Instance existante de l'objet S3 Bucket. Si cela est fourni, alors fournir égalementbucketPropsest une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut du compartiment. Ignoré si unexistingBucketObjest fourni.  | 
|  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)  |  Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour S3EventSourceProps  | 

## Propriétés du modèle
<a name="pattern-properties-21"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  LambdaBonction  |  [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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 
|  S3Bucket ?  |  [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)  |  Renvoie une instance du compartiment S3 créé par le modèle.  | 
|  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)  |  Renvoie une instance du compartiment de journalisation créé par le modèle pour le compartiment S3.  | 

## Paramètres par défaut
<a name="default-settings-21"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Bucket Amazon S3
<a name="amazon-s3-bucket-5"></a>
+  Configurez la journalisation d'accès pour le compartiment S3. 
+  Activez le chiffrement côté serveur pour le compartiment S3 à l'aide de la clé KMS gérée par AWS. 
+  Activez le contrôle de version pour S3 Bucket. 
+  N'autorisez pas l'accès public pour le compartiment S3. 
+  Conservez le compartiment S3 lors de la suppression de la pile CloudFormation. 
+  Application du chiffrement des données en transit. 
+  Applique la règle de cycle de vie pour déplacer les versions d'objets non actuelles vers le stockage Glacier après 90 jours.

### Fonction AWS Lambda
<a name="aws-lambda-function-13"></a>
+  Configurez le rôle IAM d'accès limité pour la fonction Lambda. 
+  Activez la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda. 
+  Activer le suivi X-Ray.
+  Définir les variables d'environnement :
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

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

![\[Diagram showing data flow from S3 bucket to Lambda function to CloudSearch domain.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/aws-s3-lambda.png)


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-construction/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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans toute version future. Ceux-ci ne sont pas assujettis à la[Gestion de versions sémantiques](https://semver.org/)modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1s3\$1sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-s3-sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.s3sqs  | 

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

 Ce module AWS Solutions Construct implémente un compartiment Amazon S3 configuré pour envoyer des notifications à une file d'attente Amazon SQS.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-39"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  Bucketobj existant ?  |  [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)  |  Instance existante de l'objet S3 Bucket. Si cela est fourni, alors fournir égalementbucketPropsest une erreur.  | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut du compartiment 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)  |  Types d'événements S3 qui déclencheront la notification. La valeur par défaut est 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)  |  Les règles de filtre de clé d'objet S3 pour déterminer quels objets déclenchent cet événement. Si ce n'est pas spécifié, aucune règle de filtre ne sera appliquée.  | 
|  QueueObj existant ?  |  [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)  |  Une file d'attente SQS existante facultative à utiliser à la place de la file d'attente par défaut. Fournir à la fois ceci etqueuePropsprovoquera une erreur. Si la file d'attente SQS est chiffrée, la clé KMS utilisée pour le chiffrement doit être un CMK géré par le client.  | 
|  QueueProps ?  |  [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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la file d'attente SQS. Ignoré si unexistingQueueObjest fourni.  | 
|  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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut de la file d'attente de lettres mortes. Utilisé uniquement si ledeployDeadLetterQueueest définie sur true.  | 
|  Déploiement DeadletterQueue ?  |  boolean  |  Indique si vous voulez créer une file d'attente secondaire à utiliser comme file d'attente de lettres mortes. La valeur par défaut est true.  | 
|  MaxReceiveCount ?  |  number  |  Nombre de fois qu'un message peut être retiré sans succès avant d'être déplacé vers la file d'attente de lettres mortes. La valeur par défaut est 15.  | 
|  EnableEncryptionWithCustomerManagedKey ?  |  boolean  |  Indique s'il faut utiliser une clé KMS, soit gérée par cette application CDK, soit importée. Si vous importez une clé de chiffrement, elle doit être spécifiée dans le champencryptionKeypour cette construction.  | 
|  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)  |  Une clé de chiffrement existante facultative à utiliser à la place de la clé de chiffrement par défaut.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la clé de chiffrement.  | 

## Propriétés du modèle
<a name="pattern-properties-39"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de la file d'attente SQS créée par le modèle.  | 
|  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)  |  Renvoie une instance de la file d'attente de lettres mortes créée par le modèle, si une instance est déployée.  | 
|  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)  |  Renvoie une instance de la clé de chiffrement créée par le modèle.  | 
|  S3Bucket  |  [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)  |  Renvoie une instance du compartiment S3 créé par le modèle.  | 
|  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)  |  Renvoie une instance du compartiment de journalisation créé par le modèle pour le compartiment S3.  | 

## Paramètres par défaut
<a name="default-settings-39"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Bucket Amazon S3
<a name="amazon-s3-bucket-39"></a>
+  Configurer la journalisation d'accès pour le compartiment S3 
+  Activer le chiffrement côté serveur pour le compartiment S3 à l'aide de la clé KMS gérée par AWS 
+  Activer le contrôle de version pour S3 Bucket 
+  Ne pas autoriser l'accès public pour le compartiment S3 
+  Conserver le compartiment S3 lors de la suppression de la pile CloudFormation 
+  Application du chiffrement des données en transit 
+  Applique la règle de cycle de vie pour déplacer les versions d'objets non actuelles vers le stockage Glacier après 90 jours

### File d'attente Amazon SQS
<a name="aws-sqs-queue-39"></a>
+  Configurer les autorisations d'accès les moins privilèges pour SQS File d'attente 
+  Déployer la file d'attente de lettres mortes SQS pour la file d'attente SQS source 
+  Activer le chiffrement côté serveur pour SQS 
+  Application du chiffrement des données en transit 

## 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/fr_fr/solutions/latest/constructs/images/aws-s3-sqs.png)


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-construction/aws-s3-sqs](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-s3-sqs)  | 

# aws-s3-step-function
<a name="aws-s3-step-function"></a>

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


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion de version sémantique](https://semver.org/)Modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1s3\$1step\$1function  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-s3-step-function  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.s3stepfunction  | 

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

 Ce module AWS Solutions Construct implémente un compartiment Amazon S3 connecté à une fonction AWS Step.

**Note**  
Cette construction utilise Amazon EventBridge (Amazon CloudWatch Events) pour déclencher AWS Step Functions. EventBridge est plus flexible, mais le déclenchement des Step Functions avec les notifications d'événements S3 a moins de latence et est plus rentable. Si le coût et/ou la latence est un problème, vous devriez envisager de déployer`aws-s3-lambda`and`aws-lambda-stepfunctions`à la place de cette construction.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-22"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  Bucketobj existant ?  |  [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)  |  Instance existante de l'objet S3 Bucket. Si cela est fourni, alors fournir égalementbucketPropsest une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut du compartiment. Ignoré si unexistingBucketObjest fourni.  | 
|  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)  |  Les accessoires fournis par l'utilisateur facultatif pour remplacer les accessoires par défaut pour SFN.StateMachine.  | 
|  EventTruleProps ?  |  [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)  |  L'utilisateur facultatif a fourni EventRuleProps pour remplacer les valeurs par défaut.  | 
|  Déploiement de CloudTrail ?  |  boolean  |  Indique s'il faut déployer un Trail dans AWS CloudTrail pour consigner les événements d'API dans Amazon S3. La valeur par défaut est true.  | 
|  CreateCloudWatchArms  |  boolean  |  Indique s'il faut créer des alarmes CloudWatch recommandées.  | 
|  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)  |  Accessoires fournis par l'utilisateur facultatifs pour remplacer les accessoires par défaut du groupe de journaux CloudWatch Logs.  | 

## Propriétés du modèle
<a name="pattern-properties-22"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  Cloudtrail ?  |  [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)  |  Renvoie une instance de la piste Cloudtrail créée par le modèle.  | 
|  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)  |  Renvoie une instance du compartiment créé par le modèle pour stocker les données de trace Cloudtrail.  | 
|  CloudTrailLoggingBucket ?  |  [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)  |  Renvoie une instance du compartiment de journalisation créé par le modèle pour le compartiment principal utilisé par la piste Cloudtrail.  | 
|  Cloudwatch Alarm ?  |  [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)  |  Renvoie la liste d'une ou plusieurs alarmes CloudWatch créées par le modèle.  | 
|  S3Bucket ?  |  [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)  |  Renvoie une instance du compartiment S3 créé par le modèle.  | 
|  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)  |  Renvoie une instance du compartiment de journalisation créé par le modèle pour le compartiment 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)  |  Renvoie une instance de la machine d'état créée par le modèle.  | 
|  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)  |  Renvoie une instance du groupe de journaux créé par le modèle pour la machine d'état.  | 

## Paramètres par défaut
<a name="default-settings-22"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Bucket Amazon S3
<a name="amazon-s3-bucket-6"></a>
+  Configurez la journalisation d'accès pour le compartiment S3. 
+  Activez le chiffrement côté serveur pour le compartiment S3 à l'aide de la clé KMS gérée par AWS. 
+  Activez le contrôle de version pour S3 Bucket. 
+  N'autorisez pas l'accès public pour le compartiment S3. 
+  Conservez le compartiment S3 lors de la suppression de la pile CloudFormation. 
+  Application du chiffrement des données en transit. 
+  Applique la règle de cycle de vie pour déplacer les versions d'objets non actuelles vers le stockage Glacier après 90 jours.

### AWS CloudTrail
<a name="aws-cloudtrail"></a>
+  Configurez un Trail dans AWS CloudTrail pour consigner les événements d'API dans Amazon S3 liés au compartiment créé par le Construct. 

### Règle Amazon CloudWatch Events
<a name="amazon-cloudwatch-events-rule-2"></a>
+  Accordez les autorisations les moins privilèges aux événements CloudWatch pour déclencher la fonction Lambda. 

### AWS Step Functions
<a name="aws-step-function-1"></a>
+  Activez la journalisation CloudWatch pour API Gateway. 
+  Déployez les meilleures pratiques des alarmes CloudWatch pour la fonction Step. 

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

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


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à la[Gestion de versions sémantiques](https://semver.org/)Le modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1sns\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-sns-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.snslambda  | 

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

 Cette solution AWS Construct implémente un Amazon SNS connecté à une fonction AWS Lambda. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-23"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  ExistantTopicObj ?  |  [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)  |  Instance existante de l'objet SNS Topic, fournissant à la fois ceci ettopicPropsprovoquera une erreur.  | 
|  SujetProps ?  |  [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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la rubrique SNS.  | 

## Propriétés de modèle
<a name="pattern-properties-23"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  LambdaUNction  |  [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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 
|  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)  |  Renvoie une instance de la rubrique SNS créée par le modèle.  | 

## Paramètres par défaut
<a name="default-settings-23"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Rubrique Amazon SNS
<a name="amazon-sns-topic-1"></a>
+  Configurez les autorisations d'accès les moins privilèges pour la rubrique SNS. 
+  Activez le chiffrement côté serveur à l'aide d'une clé KMS gérée par AWS. 
+  Application du chiffrement des données en transit. 

### Fonction AWS Lambda
<a name="aws-lambda-function-14"></a>
+  Configurez le rôle IAM d'accès limité pour la fonction Lambda. 
+  Activez la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda. 
+  Activez le suivi X-Ray.
+  Définir les variables d'environnement :
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

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

![\[Diagram showing data flow between icons representing different cloud services or components.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/aws-sns-lambda.png)


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-constructions/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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans toute version future. Ceux-ci ne sont pas assujettis à la[Gestion de versions sémantiques](https://semver.org/)modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1sns\$1sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-sns-sqs  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.snssqs  | 

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

 Cette rubrique AWS Solutions Construct implémente une rubrique Amazon SNS connectée à une file d'attente Amazon SQS.

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-28"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  ExistantTopicObj ?  |  [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)  |  Instance existante de l'objet SNS Topic, fournissant à la fois ceci ettopicPropsprovoquera une erreur.  | 
|  SujetProps ?  |  [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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la rubrique SNS. Ignoré si unexistingTopicObjest fourni.  | 
|  QueueObj existant ?  |  [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)  |  Une file d'attente SQS existante facultative à utiliser à la place de la file d'attente par défaut. Fournir à la fois ceci etqueuePropsprovoquera une erreur.  | 
|  QueueProps ?  |  [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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la file d'attente SQS. Ignoré si unexistingQueueObjest fourni.  | 
|  Déploiement DeadletterQueue ?  |  boolean  |  Indique si vous voulez créer une file d'attente secondaire à utiliser comme file d'attente de lettres mortes. La valeur par défaut est 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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut de la file d'attente de lettres mortes. Utilisé uniquement si le paramètredeployDeadLetterQueueest définie sur true.  | 
|  MaxReceiveCount ?  |  number  |  Nombre de fois qu'un message peut être défile d'attente sans succès avant d'être déplacé vers la file d'attente de lettres mortes. La valeur par défaut est 15.  | 
|  EnableEncryptionWithCustomerManagedKey ?  |  boolean  |  Indique s'il faut utiliser une clé de chiffrement gérée par le client, soit gérée par cette application CDK, soit importée. Si vous importez une clé de chiffrement, elle doit être spécifiée dans le champencryptionKeypour cette construction.  | 
|  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)  |  Une clé de chiffrement existante facultative à utiliser à la place de la clé de chiffrement par défaut.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la clé de chiffrement.  | 

## Propriétés de modèle
<a name="pattern-properties-28"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de la rubrique SNS créée par le modèle.  | 
|  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)  |  Renvoie une instance de la clé de chiffrement créée par le modèle.  | 
|  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)  |  Renvoie une instance de la file d'attente SQS créée par le modèle.  | 
|  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)  |  Renvoie une instance de la file d'attente de lettres mortes créée par le modèle, si une instance est déployée.  | 

## Paramètres par défaut
<a name="default-settings-28"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### Rubrique Amazon SNS
<a name="amazon-sns-topic-28"></a>
+  Configurez les autorisations d'accès les moins privilèges pour la rubrique SNS. 
+  Activez le chiffrement côté serveur à l'aide d'une clé KMS gérée par AWS. 
+  Application du chiffrement des données en transit. 

### File d'attente Amazon SQS
<a name="aws-lambda-function-28"></a>
+  Configurer les autorisations d'accès les moins privilèges pour la file d'attente SQS. 
+  Déployer la file d'attente de lettres mortes pour la file d'attente SQS source. 
+  Activer le chiffrement côté serveur pour la file d'attente SQS à l'aide d'une clé KMS gérée par le client. 
+  Application du chiffrement des données en transit. 

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

![\[Services AWS diagram showing SNS, SQS, and Lambda interactions with queues and notifications.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/aws-sns-sqs.png)


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Ceux-ci ne sont pas assujettis à la[Gestion de versions sémantiques](https://semver.org/)modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

**Remarque:** Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version. 


|  **Langage**  |  **Package**  | 
| --- | --- | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/python.png) Python  |  aws\$1solutions\$1constructs.aws\$1sqs\$1lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-sqs-lambda  | 
|  ![\[alt text not found\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.sqslambda  | 

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

 Cette solution AWS Construct implémente une file d'attente Amazon SQS connectée à une fonction AWS Lambda. 

 Voici une définition de modèle déployable minimale dans 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);
```

 *Paramètres* 
+  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) 

## Accessoires de construction de modèle
<a name="pattern-construct-props-24"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  L'existence de Glambdaobj ?  |  [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)  |  Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur.  | 
|  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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. Ignoré si unexistingLambdaObjest fourni.  | 
|  QueueObj existant ?  |  [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)  |  Une file d'attente SQS existante facultative à utiliser à la place de la file d'attente par défaut. Fournir à la fois ceci etqueuePropsprovoquera une erreur.  | 
|  QueueProps ?  |  [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)  |  Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la file d'attente SQS. Ignoré si unexistingQueueObjest fourni.  | 
|  Déploiement DeadletterQueue ?  |  boolean  |  Indique s'il faut créer une file d'attente secondaire à utiliser comme file d'attente de lettres mortes. La valeur par défaut est 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 fournis par l'utilisateur en option pour remplacer les accessoires par défaut de la file d'attente de lettres mortes. Utilisé uniquement si ledeployDeadLetterQueueest définie sur true.  | 
|  MaxReceiveCount ?  |  number  |  Nombre de fois qu'un message peut être défile d'attente sans succès avant d'être déplacé vers la file d'attente de lettres mortes. La valeur par défaut est 15.  | 

## Propriétés de modèle
<a name="pattern-properties-24"></a>


|  **Nom**  |  **Type**  |  **Description**  | 
| --- | --- | --- | 
|  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)  |  Renvoie une instance de la file d'attente de lettres mortes créée par le modèle, si une instance est déployée.  | 
|  LambdaUNction  |  [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)  |  Renvoie une instance de la fonction Lambda créée par le modèle.  | 
|  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)  |  Renvoie une instance de la file d'attente SQS créée par le modèle.  | 

## Paramètres par défaut
<a name="default-settings-24"></a>

 L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

### File d'attente Amazon SQS
<a name="amazon-sqs-queue-1"></a>
+  Déployez la file d'attente de lettres mortes SQS pour la file d'attente SQS source. 
+  Activer le chiffrement côté serveur pour la file d'attente SQS source à l'aide de la clé KMS managé AWS. 
+  Appliquer le chiffrement des données en transit. 

### Fonction AWS Lambda
<a name="aws-lambda-function-15"></a>
+  Configurez le rôle IAM d'accès limité pour la fonction Lambda. 
+  Activez la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda. 
+  Activer le suivi X-Ray.
+  Définir les variables d'environnement :
  +  `AWS_NODEJS_CONNECTION_REUSE_ENABLED`(pour les fonctions Nœud 10.x et supérieures)

## 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/fr_fr/solutions/latest/constructs/images/aws-sqs-lambda.png)


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


|  **Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :**  | 
| --- | 
|  ![\[Circular icon with a graduation cap symbol representing education or learning.\]](http://docs.aws.amazon.com/fr_fr/solutions/latest/constructs/images/GitHub-Mark-32px.png)  |  [@aws -solutions-construction/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/fr_fr/solutions/latest/constructs/images/experimental.png)


 Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans toute version future. Ceux-ci ne sont pas assujettis à la[Gestion des versions sémantiques](https://semver.org/)Le modèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package. 

 La bibliothèque de base comprend les composants de base des composants AWS Solutions Constructs. Il définit les classes principales qui sont utilisées dans le reste des constructions AWS Solutions. 

## Propriétés par défaut pour les constructions CDK AWS
<a name="default-properties-for-aws-cdk-constructs"></a>

 La bibliothèque de base définit les propriétés par défaut des constructions AWS CDK utilisées par les constructions AWS Solutions Builts. 

 Par exemple, ce qui suit est l'extrait de propriétés par défaut pour la construction S3 Bucket créée par la construction AWS Solutions Constructs. Par défaut, il active le chiffrement côté serveur, la gestion des versions du compartiment, bloque tous les accès publics et configure la journalisation des accès S3. 

```
{
  encryption: s3.BucketEncryption.S3_MANAGED,
  versioned: true,
  blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL,
  removalPolicy: RemovalPolicy.RETAIN,
  serverAccessLogsBucket: loggingBucket
}
```

## Remplacer les propriétés par défaut
<a name="override-the-default-properties"></a>

 Les propriétés par défaut définies par la bibliothèque Core peuvent être remplacées par les propriétés fournies par l'utilisateur. Par exemple, l'utilisateur peut remplacer la propriété Amazon S3 Block Public Access pour répondre à des exigences spécifiques. 

```
  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
    },
  });
```

## Avertissements de propriété
<a name="property-override-warnings"></a>

 Lorsqu'une propriété par défaut de la bibliothèque Core est remplacée par une propriété fournie par l'utilisateur, Constructs émet un ou plusieurs messages d'avertissement sur la console mettant en évidence les modifications. Ces messages ont pour but de sensibiliser l'utilisateur à la situation et de prévenir les remplacements involontaires susceptibles de créer des risques pour la sécurité. Ces messages apparaîtront chaque fois que des commandes liées au déploiement/à la construction sont exécutées, y compris`cdk deploy`,`cdk synth`,`npm test`, etc. 

 Exemple de message :`AWS_CONSTRUCTS_WARNING: An override has been provided for the property: BillingMode. Default value: 'PAY_PER_REQUEST'. You provided: 'PROVISIONED'.` 

### Activer les avertissements de remplacement
<a name="toggling-override-warnings"></a>

 Les messages d'avertissement de remplacement sont activés par défaut, mais peuvent être explicitement activés/désactivés à l'aide de la commande`overrideWarningsEnabled`Variable shell. 
+  Pour explicitement*Désactivation de*remplacer les avertissements, exécuter`export overrideWarningsEnabled=false`. 
+  Pour explicitement*Activation d'*remplacer les avertissements, exécuter`export overrideWarningsEnabled=true`. 
+  Pour revenir au paramètre par défaut, exécutez`unset overrideWarningsEnabled`. 