

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.

# Utilisation d'Elastic Beanstalk avec Amazon VPC
<a name="vpc"></a>

Cette rubrique explique les avantages de l'utilisation de points de terminaison VPC avec Elastic Beanstalk et les différents types de configurations que vous pouvez implémenter.

Vous pouvez utiliser un [Amazon Virtual Private Cloud](https://docs.aws.amazon.com/vpc/latest/userguide/) (Amazon VPC) pour créer un réseau sécurisé pour votre application Elastic Beanstalk et les ressources associées. AWS Lorsque vous créez votre environnement, vous choisissez les VPC, sous-réseaux et groupes de sécurité utilisés pour vos instances d'application et votre équilibreur de charge. Vous pouvez utiliser la configuration de VPC de votre choix, à condition qu'elle respecte les conditions suivantes.

**Exigences du VPC**
+ **Accès Internet** – Les instances peuvent avoir accès à Internet via l'une des méthodes suivantes.
  + **Sous-réseau public** – Les instances ont une adresse IP publique et utilisent une passerelle Internet pour accéder à Internet.
  + **Sous-réseau privé** – Les instances utilisent un périphérique NAT pour accéder à Internet.
**Note**  
Si vous configurez des [points de terminaison d’un VPC](vpc-vpce.md) dans votre VPC pour vous connecter à la fois aux services `elasticbeanstalk` et `elasticbeanstalk-health`, l'accès Internet est facultatif et est uniquement requis si votre application en a spécifiquement besoin. Sans points de terminaison de VPC, votre VPC doit avoir accès à Internet.  
Le VPC par défaut qu'Elastic Beanstalk met en place pour vous fournir un accès Internet.

  Elastic Beanstalk ne prend pas en charge les paramètres de proxy comme `HTTPS_PROXY` pour la configuration d'un proxy web.
+ **NTP** – Les instances dans votre environnement Elastic Beanstalk utilisent le protocole NTP (Network Time) pour synchroniser l'horloge système. Si les instances ne peuvent pas communiquer sur le port UDP 123, l'horloge peut se désynchroniser, ce qui entraîne des problèmes avec les rapports d'intégrité d'Elastic Beanstalk. Assurez-vous que vos groupes de sécurité VPC et votre réseau ACLs autorisent le trafic UDP entrant et sortant sur le port 123 pour éviter ces problèmes.

Le [elastic-beanstalk-samples](https://github.com/awsdocs/elastic-beanstalk-samples/)référentiel fournit des CloudFormation modèles que vous pouvez utiliser pour créer un VPC à utiliser avec vos environnements Elastic Beanstalk.

**Pour créer des ressources à l'aide d'un CloudFormation modèle**

1. Clonez le référentiel d'exemples ou téléchargez un modèle à l'aide des liens que vous trouvez dans le fichier [README](https://github.com/awsdocs/elastic-beanstalk-samples/tree/main/cfn-templates/README.md).

1. Ouvrez la [CloudFormation console](https://console.aws.amazon.com/cloudformation/home).

1. Sélectionnez **Créer la pile**.

1. Choisissez **Télécharger un modèle sur Amazon S3**.

1. Choisissez **Charger le fichier** et chargez le fichier de modèle depuis votre ordinateur local.

1. Choisissez **Suivant** et suivez les instructions pour créer une pile avec les ressources dans le modèle.

Lorsque la création de la pile est terminée, consultez l'onglet **Sorties** pour trouver l'ID et le sous-réseau du VPC. IDs Utilisez ces ressources pour configurer le VPC dans la [catégorie de configuration Réseau](environments-create-wizard.md#environments-create-wizard-network) de l'assistant de création d'un environnement.

**Topics**
+ [VPC public](#services-vpc-public)
+ [VPC public/privé](#services-vpc-privatepublic)
+ [VPC privé](#services-vpc-private)
+ [Exemple : Lancement d'une application Elastic Beanstalk dans un VPC avec des hôtes bastion](vpc-bastion-host.md)
+ [Exemple : Lancement d'un Elastic Beanstalk dans un VPC avec Amazon RDS](vpc-rds.md)
+ [Utilisation d'Elastic Beanstalk avec les points de terminaison VPC](vpc-vpce.md)
+ [Utilisation des stratégies de point de terminaison pour contrôler l'accès avec des points de terminaison de VPC](vpc-vpce.policy.md)

## VPC public
<a name="services-vpc-public"></a>

**CloudFormation modèle** — [vpc-public.yaml](https://github.com/awsdocs/elastic-beanstalk-samples/tree/main/cfn-templates/vpc-public.yaml)

**Paramètres (charge équilibrée)**
+ **Visibilité de l'équilibreur de charge** – Public
+ **Sous-réseaux de l'équilibreur de charge** – Public pour les deux
+ **Adresse IP publique de l'instance** – Activée
+ **Sous-réseaux de l'instance** – Public pour les deux
+ **Groupes de sécurité de l'instance** – Ajouter le groupe de sécurité par défaut

**Paramètres (une seule instance)**
+ **Sous-réseaux de l'instance** – Public pour un des deux
+ **Groupes de sécurité de l'instance** – Ajouter le groupe de sécurité par défaut

Une conception élémentaire de VPC *public uniquement* inclut un ou plusieurs sous-réseaux publics, une passerelle Internet et un groupe de sécurité par défaut qui autorise le trafic entre les différentes ressources du VPC. Lorsque vous créez un environnement dans le VPC, Elastic Beanstalk crée des ressources supplémentaires qui varient en fonction du type d'environnement.

**Ressources en matière de VPC**
+ **Instance unique** – Elastic Beanstalk crée un groupe de sécurité pour l'instance d'application qui autorise le trafic sur le port 80 depuis Internet, et attribue une adresse IP Elastic à l'instance pour qu'elle soit associée à une adresse IP publique. Le nom de domaine de l'environnement est résolu avec l'adresse IP publique de l'instance.
+ **Équilibrage de charge** – Elastic Beanstalk crée un groupe de sécurité pour l'équilibreur de charge qui autorise le trafic sur le port 80 depuis Internet, et un groupe de sécurité pour les instances d'application qui autorisent le trafic depuis le groupe de sécurité de l'équilibreur de charge. Le nom de domaine de l'environnement est résolu avec le nom de domaine public de l'équilibreur de charge.

Cette option est similaire à la façon dont Elastic Beanstalk gère la mise en réseau lorsque vous utilisez le VPC par défaut. La sécurité d'un sous-réseau public dépend des groupes de sécurité d'instance et d'équilibreur de charge créés par Elastic Beanstalk. C'est là la configuration la moins coûteuse, car aucun passerelle NAT n'est requise.

## VPC public/privé
<a name="services-vpc-privatepublic"></a>

**CloudFormation modèle** — [vpc-privatepublic.yaml](https://github.com/awsdocs/elastic-beanstalk-samples/tree/main/cfn-templates/vpc-privatepublic.yaml)

**Paramètres (charge équilibrée)**
+ **Visibilité de l'équilibreur de charge** – Public
+ **Sous-réseaux de l'équilibreur de charge** – Public pour les deux
+ **Adresse IP publique de l'instance** – Désactivée
+ **Sous-réseaux de l'instance** – Privé pour les deux
+ **Groupes de sécurité de l'instance** – Ajouter le groupe de sécurité par défaut

Pour une sécurité optimale, ajoutez des sous-réseaux privés à votre VPC pour créer une configuration * publique-privée*. Cette configuration nécessite un équilibreur de charge et une passerelle NAT dans les sous-réseaux publics, et vous permet d'exécuter vos instances d'application, votre base de données et les autres ressources dans des sous-réseaux privés. Les instances des sous-réseaux privés peuvent uniquement communiquer avec Internet via l'équilibreur de charge et la passerelle NAT.

## VPC privé
<a name="services-vpc-private"></a>

**CloudFormation modèle** — [vpc-private.yaml](https://github.com/awsdocs/elastic-beanstalk-samples/tree/main/cfn-templates/vpc-private.yaml)

**Paramètres (charge équilibrée)**
+ **Visibilité de l'équilibreur de charge** – Privé
+ **Sous-réseaux de l'équilibreur de charge** – Les deux sous-réseaux privés
+ **Adresse IP publique de l'instance** – Désactivée
+ **Sous-réseaux de l'instance** – Privé pour les deux
+ **Groupes de sécurité de l'instance** – Ajouter le groupe de sécurité par défaut

Pour les applications internes qui ne doivent pas avoir d’accès depuis Internet, vous pouvez exécuter toutes les applications dans des sous-réseaux privés et configurer l'équilibreur de charge de façon à ce qu'il soit interne (remplacez la valeur de **Load balancer visibility (Visibilité de l'équilibreur de charge)** par **Internal (Interne)**. Ce modèle crée un VPC sans sous-réseaux publics et sans passerelle Internet. Utilisez cette configuration pour les applications qui doivent être accessibles à partir du même VPC ou d'un VPN associé uniquement.

### Exécution d'un environnement Elastic Beanstalk dans un VPC privé
<a name="services-vpc-private-beanstalk"></a>

Lorsque vous créez votre environnement Elastic Beanstalk dans un VPC privé, l'environnement n'a pas accès à Internet. Votre application peut avoir besoin d'accéder au service Elastic Beanstalk ou à d'autres services. Votre environnement peut utiliser des rapports d'intégrité améliorés et, dans ce cas, les instances d'environnement envoient des informations d'intégrité au service d'intégrité amélioré. Et le code Elastic Beanstalk sur les instances d'environnement envoie du trafic AWS vers d'autres services, et d'autres types de trafic vers des sites autres que les points de terminaison (par exemple, pour télécharger des packages de dépendances pour votre application).AWS Voici quelques étapes que vous devrez peut-être emprunter dans ce cas, pour vous assurer que votre environnement fonctionne correctement.
+ *Configurez des points de terminaison d'un VPC pour Elastic Beanstalk* – Elastic Beanstalk et son service d'intégrité amélioré prennent en charge les points de terminaison d'un VPC, ce qui garantit que le trafic vers ces services reste à l'intérieur du réseau Amazon et ne nécessite pas d'accès Internet. Pour de plus amples informations, veuillez consulter [Utilisation d'Elastic Beanstalk avec les points de terminaison VPC](vpc-vpce.md).
+ *Configurez les points de terminaison VPC pour des services supplémentaires* : les instances Elastic Beanstalk envoient du trafic vers plusieurs autres services en votre AWS nom : Amazon Simple Storage Service (Amazon S3), Amazon Simple Queue Service (Amazon SQS) et Amazon Logs. AWS CloudFormation CloudWatch Vous devez également configurer les points de terminaison de VPC pour ces services. Pour de plus amples informations sur les points de terminaison VPC, y compris les liens par service, veuillez consulter les [points de terminaison VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints.html) dans le *Guide de l'utilisateur Amazon VPC*.
**Note**  
Certains AWS services, notamment Elastic Beanstalk, prennent en charge les points de terminaison VPC dans un nombre limité de régions. AWS Lorsque vous concevez votre solution VPC privée, vérifiez qu'Elastic Beanstalk et les autres services dépendants mentionnés ici prennent en charge les points de terminaison VPC dans la région de votre choix. AWS 
+ *Fournir une image Docker privée* – Dans un environnement [Docker](create_deploy_docker.md), le code sur les instances de l'environnement peut essayer d'extraire votre image Docker configurée à partir d'Internet lors de la création de l'environnement et échouer. Pour éviter cet échec, [créez une image Docker personnalisée](single-container-docker-configuration.md#single-container-docker-configuration.dockerfile) sur votre environnement ou utilisez une image Docker stockée dans [Amazon Elastic Container Registry](https://docs.aws.amazon.com/AmazonECR/latest/userguide/) (Amazon ECR) et [configurez un point de terminaison VPC pour le service Amazon ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/vpc-endpoints.html).
+ *Activer les noms DNS* : le code Elastic Beanstalk sur les instances d'environnement envoie du trafic AWS à tous les services via leurs points de terminaison publics. Pour vous assurer que ce trafic passe bien, choisissez l'option **Enable DNS name (Activer le nom DNS)** lorsque vous configurez tous les points de terminaison d’un VPC d'interface. Cela ajoute une entrée DNS dans votre VPC qui mappe le point de terminaison du service public au point de terminaison de VPC d’interface.
**Important**  
Si votre VPC n'est pas privé et dispose d'un accès Internet public, et si **Enable DNS name (Activer le nom DNS)** est désactivé pour n'importe quel point de terminaison de VPC, le trafic vers le service correspondant passe par l'Internet public. Ce n'est probablement pas votre intention. Ce problème est facile à détecter avec un VPC privé, car il empêche ce trafic de passer et vous recevez des erreurs. Cependant, avec un VPC public, vous n'obtenez aucune indication.
+ *Inclure les dépendances de l'application* – Si votre application a des dépendances telles que des packages d'exécution de langage, elle peut essayer de les télécharger et de les installer à partir d'Internet lors de la création de l'environnement et échouer. Pour éviter cet échec, incluez tous les packages de dépendance dans le bundle source de votre application.
+ *Utiliser une version de plateforme actuelle* – Assurez-vous que votre environnement utilise une version de plateforme qui a été publiée le 24 février 2020 ou plus tard. Plus précisément, utilisez une version de plateforme qui a été publiée avec ou après l'une de ces deux mises à jour : [Linux Update 2020-02-28](https://docs.aws.amazon.com/elasticbeanstalk/latest/relnotes/release-2020-02-28-linux.html), [Windows Update 2020-02-24](https://docs.aws.amazon.com/elasticbeanstalk/latest/relnotes/release-2020-02-24-windows.html).
**Note**  
La raison pour laquelle il vous faut une version de plateforme mise à jour est que les anciennes versions présentaient un problème qui empêcherait les entrées DNS créées par l'option **Enable DNS name (Activer le nom DNS)** de fonctionner correctement pour Amazon SQS.

# Exemple : Lancement d'une application Elastic Beanstalk dans un VPC avec des hôtes bastion
<a name="vpc-bastion-host"></a>

Cette section explique comment déployer une application Elastic Beanstalk au sein d'un VPC à l'aide d'un hôte bastion et explique pourquoi vous devez implémenter cette topologie.

Si vos EC2 instances Amazon sont situées dans un sous-réseau privé, vous ne pourrez pas vous y connecter à distance. Pour vous connecter à vos instances, vous pouvez configurer des serveurs bastions dans le sous-réseau public pour servir de proxy. Par exemple, vous pouvez définir des achemineurs de port SSH ou des passerelles RDP dans le sous-réseau public pour définir des serveurs proxy du trafic à destination de vos serveurs de base de données et en provenance de votre propre réseau. Cette section fournit un exemple sur la manière de créer d'un VPC avec un sous-réseau privé et public. Les instances sont trouvent à l'intérieur du sous-réseau privé et l'hôte bastion, la passerelle NAT ainsi que l'équilibreur de charge se trouvent à l'intérieur du sous-réseau public. Votre infrastructure ressemblera au schéma suivant.

![\[Schéma d'Elastic Beanstalk et de la topologie VPC avec bastion host.\]](http://docs.aws.amazon.com/fr_fr/elasticbeanstalk/latest/dg/images/aeb-vpc-bastion-topo-ngw.png)


Pour déployer une application Elastic Beanstalk à l'intérieur d'un VPC à l'aide d'un hôte bastion, suivez les étapes décrites dans les sous-sections suivantes.

**Topics**
+ [Création d'un VPC avec des sous-réseaux public et privé](#vpc-bastion-host-create)
+ [Création et configuration du groupe de sécurité de l'hôte bastion](#vpc-bastion-create-host-sg)
+ [Mise à jour du groupe de sécurité de l'instance](#vpc-bastion-update-instance-sg)
+ [Création d'un hôte bastion](#vpc-bastion-host-launch)

## Création d'un VPC avec des sous-réseaux public et privé
<a name="vpc-bastion-host-create"></a>

Réalisez toutes les procédures décrites dans [VPC public/privé](vpc.md#services-vpc-privatepublic). Lors du déploiement de l'application, vous devez spécifier une paire de EC2 clés Amazon pour les instances afin de pouvoir vous y connecter à distance. Pour plus d'informations sur la façon de spécifier la paire de clés d'instance, consultez [Les EC2 instances Amazon pour votre environnement Elastic Beanstalk](using-features.managing.ec2.md).

## Création et configuration du groupe de sécurité de l'hôte bastion
<a name="vpc-bastion-create-host-sg"></a>

Créez un groupe de sécurité pour l'hôte Bastion et ajoutez des règles qui autorisent le trafic SSH entrant depuis Internet et le trafic SSH sortant vers le sous-réseau privé qui contient les instances Amazon. EC2 

**Pour créer le groupe de sécurité de l'hôte bastion**

1. Ouvrez la console Amazon VPC à l’adresse [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. Dans le panneau de navigation, choisissez **Groupes de sécurité**.

1. Sélectionnez **Créer un groupe de sécurité**.

1. Dans la boîte de dialogue **Créer un groupe de sécurité**, entrez les informations suivantes et choisissez **Oui, créer**.  
**Balise Nom** (facultatif)  
Entrez une étiquette de nom pour le groupe de sécurité.  
**Nom du groupe**  
Entrez le nom du groupe de sécurité.  
**Description**  
Entrez une description pour le groupe de sécurité.  
**VPC**  
Sélectionnez votre VPC.

   Le groupe de sécurité est créé et apparaît sur la page **Groupes de sécurité**. Notez qu'il possède un ID (par exemple, `sg-xxxxxxxx`). Vous devrez peut-être activer la colonne **ID du groupe** en cliquant sur **Afficher/Masquer** dans l'angle supérieur droit de la page.

**Pour configurer le groupe de sécurité de l'hôte bastion**

1. Dans la liste des groupes de sécurité, cochez la case correspondant au groupe de sécurité que vous venez de créer pour votre hôte bastion.

1. Sous l'onglet **Règles entrantes**, choisissez **Modifier**.

1. Si nécessaire, sélectionnez **Add another rule (Ajouter une autre règle)**.

1. Si votre hôte bastion est une instance Linux, sous **Type**, sélectionnez **SSH**.

   Si votre hôte bastion est une instance Windows, sous **Type**, sélectionnez **RDP**.

1. Entrez la plage CIDR source souhaitée dans le champ **Source** et choisissez **Save (Enregistrer)**.  
![\[Groupe de sécurité de l'hôte bastion\]](http://docs.aws.amazon.com/fr_fr/elasticbeanstalk/latest/dg/images/vpc-bh-sg-inbound.png)

1. Sous l'onglet **Outbound Rules (Règles sortantes)**, choisissez **Edit (Modifier)**.

1. Si nécessaire, sélectionnez **Add another rule (Ajouter une autre règle)**.

1. Sous **Type**, sélectionnez le type que vous avez spécifiée pour la règle entrante.

1. Dans le champ **Source**, entrez la plage d'adresses CIDR du sous-réseau des hôtes dans le sous-réseau privé du VPC.

   Pour la trouver :

   1. Ouvrez la console Amazon VPC à l’adresse [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

   1. Dans le panneau de navigation, choisissez **Subnets** (Sous-réseaux).

   1. Notez la valeur sous **IPv4 CIDR** pour chaque **zone de disponibilité** dans laquelle vous avez des hôtes vers lesquels vous souhaitez que l'hôte bastion établisse un pont.
**Note**  
Si vous avez des hôtes dans plusieurs zones de disponibilité, créez une règle sortante pour chacun de ces zones de disponibilité.  
![\[Sous-réseaux VPC\]](http://docs.aws.amazon.com/fr_fr/elasticbeanstalk/latest/dg/images/vpc-subnets.png)

1. Choisissez **Enregistrer**.

## Mise à jour du groupe de sécurité de l'instance
<a name="vpc-bastion-update-instance-sg"></a>

Par défaut, le groupe de sécurité que vous avez créé pour vos instances ne permet pas le trafic entrant. Même si Elastic Beanstalk modifiera le groupe par défaut pour les instances pour autoriser le trafic SSH, vous devez modifier votre groupe de sécurité d'instance personnalisée pour autoriser le trafic RDP si vos instances sont des instances Windows.

**Pour mettre à jour le groupe de sécurité de l'instance pour RDP**

1. Dans la liste des groupes de sécurité, cochez la case correspondant au groupe de sécurité de l'instance.

1. Dans l'onglet **Entrant**, choisissez **Modifier**.

1. Si nécessaire, sélectionnez **Add another rule (Ajouter une autre règle)**.

1. Entrez les valeurs suivantes, puis sélectionnez **Save (Enregistrer)**.   
**Type**  
`RDP`  
**Protocole**  
`TCP`  
**Plage de ports**  
`3389`  
**Source**  
Entrez l'ID du groupe de sécurité de l'hôte bastion (par exemple, `sg-8a6f71e8`) et choisissez **Save (Enregistrer)**.

## Création d'un hôte bastion
<a name="vpc-bastion-host-launch"></a>

Pour créer un hôte bastion, vous lancez une EC2 instance Amazon dans votre sous-réseau public qui fera office d'hôte bastion.

Pour plus d'informations sur la configuration d'un hôte bastion pour les instances Windows dans le sous-réseau privé, consultez la section [Contrôle de l'accès réseau aux EC2 instances à l'aide d'un serveur Bastion](https://aws.amazon.com/blogs/security/controlling-network-access-to-ec2-instances-using-a-bastion-server/).

Pour de plus amples informations sur la configuration d'un hôte bastion pour les instances Linux sur le sous-réseau privé, veuillez consulter l'article de blog [Connexion sécurisée aux instances Linux exécutées dans un VPC privé Amazon](https://aws.amazon.com/blogs/security/securely-connect-to-linux-instances-running-in-a-private-amazon-vpc/).

# Exemple : Lancement d'un Elastic Beanstalk dans un VPC avec Amazon RDS
<a name="vpc-rds"></a>

Cette section vous guide à travers les tâches de déploiement d'une application Elastic Beanstalk avec Amazon RDS dans un VPC à l'aide d'une passerelle NAT.

Votre infrastructure ressemblera au schéma suivant.

![\[Schéma d'Elastic Beanstalk et de la topologie VPC avec Amazon RDS.\]](http://docs.aws.amazon.com/fr_fr/elasticbeanstalk/latest/dg/images/aeb-vpc-rds-topo-ngw.png)


**Note**  
Si vous n'avez pas utilisé une instance de base de données avec votre application auparavant, essayez [d'en ajouter une à un environnement de test](using-features.managing.db.md) et [d'établir une connexion à une instance de base de données externe](AWSHowTo.RDS.md) avant d'ajouter une configuration VPC au mélange.

## Création d'un VPC avec des sous-réseaux public et privé
<a name="vpc-rds-create"></a>

Vous pouvez utiliser la [console Amazon VPC](https://console.aws.amazon.com/vpc/) pour créer un VPC. 

**Pour créer un VPC**

1. Connectez-vous à la [console Amazon VPC](https://console.aws.amazon.com/vpc/).

1. Dans le panneau de navigation, choisissez **Tableau de bord du VPC**. Ensuite, choisissez **Créer VPC**.

1. Choisissez **VPC avec des sous-réseaux publics et privés**, puis **Sélectionner**.  
![\[Choisissez VPC avec des sous-réseaux publics et privés, puis Sélectionner.\]](http://docs.aws.amazon.com/fr_fr/elasticbeanstalk/latest/dg/images/Case2_Wizard_Page2.png)

1. Votre équilibreur de charge Elastic Load Balancing et vos EC2 instances Amazon doivent se trouver dans la même zone de disponibilité pour pouvoir communiquer entre eux. Choisissez la même zone de disponibilité dans chaque liste **Zone de disponibilité**.  
![\[Choisissez la même zone de disponibilité pour vos sous-réseaux public et privé.\]](http://docs.aws.amazon.com/fr_fr/elasticbeanstalk/latest/dg/images/Case2_Wizard_Confirmation2.png)

1. Choisissez une adresse IP Elastic pour votre passerelle NAT.

1. Sélectionnez **Create VPC** (Créer un VPC).

   L'Assistant commence à créer le VPC, les sous-réseaux et la passerelle Internet. Il met également à jour la table de routage principale et crée une table de routage personnalisée. Enfin, il crée une passerelle NAT dans le sous-réseau public.
**Note**  
Vous pouvez choisir de lancer une instance NAT dans le sous-réseau public au lieu d'une passerelle NAT. Pour de plus amples informations, veuillez consulter [Scénario 2 : VPC avec des sous-réseaux publics et privés (NAT)](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Scenario2.html) dans le *Guide de l'utilisateur Amazon VPC*.

1. Une fois que le VPC est créé avec succès, vous obtenez un ID de VPC. Vous avez besoin de cette valeur pour l’étape suivante. Pour afficher votre ID VPC, choisissez **Your VPCs** dans le volet gauche de la console Amazon [VPC.](https://console.aws.amazon.com/vpc/)  
![\[La console Amazon VPC affiche l'ID de votre VPC.\]](http://docs.aws.amazon.com/fr_fr/elasticbeanstalk/latest/dg/images/aeb-vpc-id.png)

## Création d’un groupe de sous-réseaux de base de données
<a name="vpc-rds-subnet"></a>

Un groupe de sous-réseaux DB pour un VPC est un ensemble de sous-réseaux (généralement privés) que vous pouvez désigner pour vos instances backend DB RDS. Chaque groupe de sous-réseaux de base de données doit avoir au moins un sous-réseau pour chaque zone de disponibilité d'une région donnée AWS . Pour de plus amples informations, veuillez consulter [Création d'un sous-réseau dans votre VPC](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#AddaSubnet).

**Création d’un groupe de sous-réseaux de base de données**

1. Ouvrez la [console Amazon RDS](https://console.aws.amazon.com/rds/).

1. Dans le panneau de navigation, choisissez **Subnet groups (Groupes de sous-réseaux)**.

1. Choisissez **Create DB Subnet Group (Créer groupe de sous-réseaux de base de données)**.

1. Choisissez **Name (Nom)**, puis saisissez le nom de votre groupe de sous-réseaux DB.

1. Choisissez **Description**, puis décrivez votre groupe de sous-réseaux DB.

1. Pour **VPC**, choisissez l'ID du VPC que vous avez créé précédemment.

1. Dans **Add subnets (Ajouter des sous-réseaux)**, choisissez **Add all the subnets related to this VPC (Ajouter tous les sous-réseaux associés à ce VPC)**.  
![\[Ajoutez tous les sous-réseaux associés à votre VPC.\]](http://docs.aws.amazon.com/fr_fr/elasticbeanstalk/latest/dg/images/aeb-vpc-rds-addsubnets.png)

1. Lorsque vous avez terminé, sélectionnez **Create**.

   Votre nouveau groupe de sous-réseaux DB s'affiche dans la liste des groupes de sous-réseaux de base de données de la console Amazon RDS. Vous pouvez le choisir pour afficher des détails, tels que tous les sous-réseaux associés à ce groupe, dans le volet des détails en bas de la page.

## Déploiement sur Elastic Beanstalk
<a name="vpc-rds-create-env"></a>

Une fois que vous avez configuré votre VPC, vous pouvez y créer votre environnement et déployer votre application sur Elastic Beanstalk. Pour ce faire, vous pouvez utiliser la console Elastic Beanstalk, les boîtes à outils AWS CLI, l'EB CLI ou AWS l'API Elastic Beanstalk. Si vous utilisez la console Elastic Beanstalk, il vous suffit de télécharger votre fichier `.war` ou `.zip` et de sélectionner les paramètres VPC dans l'assistant. Elastic Beanstalk crée ensuite votre environnement dans votre VPC et déploie votre application. Vous pouvez également utiliser les AWS boîtes à outils AWS CLI, la CLI EB ou l'API Elastic Beanstalk pour déployer votre application. Pour ce faire, vous devez définir vos paramètres VPC dans un fichier de configuration et déployer ce fichier avec votre groupe source. Cette rubrique fournit des instructions pour les deux méthodes.

### Déploiement avec la console Elastic Beanstalk
<a name="vpc-rds-new-console"></a>

La console Elastic Beanstalk vous guide à travers la création de votre nouvel environnement dans votre VPC. Vous devez fournir un fichier `.war` (pour les applications Java) ou un fichier `.zip` (pour toutes les autres applications). Sur la page **Configuration VPC** de l'assistant d'environnement Elastic Beanstalk, vous devez effectuer les sélections suivantes :

**VPC**  
Sélectionnez votre VPC.

**Groupe de sécurité VPC**  
Sélectionnez le groupe de sécurité d'instance que vous avez créé précédemment.

**Visibilité ELB**  
Sélectionnez `External` si votre équilibreur de charge doit être publiquement disponible, ou `Internal` si l'équilibreur de charge ne doit être disponible que dans votre VPC.

Sélectionnez les sous-réseaux pour votre équilibreur de charge et EC2 vos instances. Assurez-vous de sélectionner le sous-réseau public pour l'équilibreur de charge et le sous-réseau privé pour vos instances Amazon. EC2 Par défaut, l'assistant de création de VPC crée le sous-réseau public dans `10.0.0.0/24` et le sous-réseau privé dans `10.0.1.0/24`.

Vous pouvez consulter votre sous-réseau IDs en choisissant **Subnets** dans la console Amazon [VPC.](https://console.aws.amazon.com/vpc/)

![\[Sous-réseau IDs pour votre VPC\]](http://docs.aws.amazon.com/fr_fr/elasticbeanstalk/latest/dg/images/aeb-vpc-subnets.png)


### Déploiement à l'aide des AWS boîtes à outils, de la CLI EB ou AWS CLI de l'API
<a name="vpc-rds-new-options"></a>

Lorsque vous déployez votre application sur Elastic Beanstalk à l'aide des boîtes à outils, de AWS la AWS CLI CLI EB ou de l'API, vous pouvez spécifier les paramètres de vos options VPC dans un fichier et les déployer avec votre bundle source. Pour plus d’informations, consultez [Personnalisation d'environnement avancée avec fichiers de configuration (`.ebextensions`)](ebextensions.md).

Lorsque vous mettez à jour les paramètres de l'option, vous devez spécifier au moins les éléments suivants :
+ **VPCId**—Contient l'ID du VPC. 
+ **Subnets (Sous-réseaux)** – Contient l'ID du sous-réseau du groupe Auto Scaling. Dans cet exemple, il s'agit de l'ID du sous-réseau privé. 
+ **ELBSubnets**: contient l'ID du sous-réseau de l'équilibreur de charge. Dans cet exemple, il s'agit de l'ID du sous-réseau public.
+ **SecurityGroups**—Contient l'ID des groupes de sécurité.
+ **DBSubnets**: contient l'ID des sous-réseaux de base de données. 
**Note**  
Lorsque vous utilisez des sous-réseaux de base de données, vous devez créer des sous-réseaux supplémentaires dans votre VPC pour couvrir toutes les zones de disponibilité de la région. AWS 

Le cas échéant, vous pouvez également spécifier les informations suivantes :
+ **ELBScheme**— Spécifiez `internal` de créer un équilibreur de charge interne dans votre VPC afin que votre application Elastic Beanstalk ne soit pas accessible depuis l'extérieur de votre VPC.

Voici un exemple des paramètres d'options que vous pouvez utiliser lors du déploiement de votre application Elastic Beanstalk à l'intérieur d'un VPC. Pour de plus amples informations sur les paramètres d'options VPC (y compris les exemples pour savoir comment les spécifier, les valeurs par défaut et les valeurs valides), veuillez consulter le tableau d'espace de noms **aws:ec2:vpc** dans [Options de configuration](command-options.md).

```
option_settings:
  - namespace: aws:autoscaling:launchconfiguration
    option_name: EC2KeyName
    value: ec2keypair
    
  - namespace: aws:ec2:vpc
    option_name: VPCId
    value: vpc-170647c
    
  - namespace: aws:ec2:vpc
    option_name: Subnets
    value: subnet-4f195024
    
  - namespace: aws:ec2:vpc
    option_name: ELBSubnets
    value: subnet-fe064f95
    
  - namespace: aws:ec2:vpc
    option_name: DBSubnets
    value: subnet-fg148g78
    
  - namespace: aws:autoscaling:launchconfiguration
    option_name: InstanceType
    value: m1.small
    
  - namespace: aws:autoscaling:launchconfiguration
    option_name: SecurityGroups
    value: sg-7f1ef110
```

**Note**  
Lorsque vous utilisez des sous-réseaux de base de données, assurez-vous que votre VPC comporte des sous-réseaux couvrant toutes les zones de disponibilité de la région. AWS 

# Utilisation d'Elastic Beanstalk avec les points de terminaison VPC
<a name="vpc-vpce"></a>

Cette rubrique explique les avantages qu'un point de terminaison VPC peut offrir à votre application Elastic Beanstalk. Il fournit également des instructions pour créer un point de terminaison VPC d'interface vers un service Elastic Beanstalk.

Un point de terminaison VPC vous permet de connecter de manière privée votre VPC aux services pris en charge AWS et aux services de point de terminaison VPC alimentés par AWS PrivateLink, sans avoir besoin d'une passerelle Internet, d'un périphérique NAT, d'une connexion VPN ou d'une connexion. Direct Connect 

Les instances de votre VPC ne requièrent pas d'adresses IP publiques pour communiquer avec les ressources du service. Le trafic entre votre VPC et les autres services ne quitte pas le réseau Amazon. Pour des informations complètes sur les points de terminaison d'un VPC, veuillez consulter [Points de terminaison d'un VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints.html) dans le *Guide de l'utilisateur Amazon VPC*.

AWS Elastic Beanstalk supports AWS PrivateLink, qui fournit une connectivité privée au service Elastic Beanstalk et élimine l'exposition du trafic à l'Internet public. Pour permettre à votre application d'envoyer des demandes à Elastic AWS PrivateLink Beanstalk à l'aide de, vous configurez un type de point de terminaison VPC appelé point de terminaison VPC d'interface (point de terminaison *d'interface*). Pour de plus amples informations, consultez [Points de terminaison VPC (AWS PrivateLink) ](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html) dans le *Guide de l'utilisateur Amazon VPC*.

**Note**  
Elastic AWS PrivateLink Beanstalk prend en charge et interface les points de terminaison VPC dans un nombre limité de. Régions AWS Nous nous efforçons d'étendre le support à d'autres Régions AWS personnes dans un futur proche.

## IPv6 support avec configuration à double pile
<a name="vpc-vpce.ipv6"></a>

Elastic Beanstalk prend en charge le trafic entrant sur et. IPv4 IPv6 Cette section décrit les points de terminaison publics qui prennent en charge les deux IPv4 IPv6 et explique également comment configurer vos points de terminaison VPC Elastic Beanstalk pour prendre en charge le trafic à double pile.

**Points de terminaison publics**  
Le service Elastic Beanstalk comporte deux ensembles de points de terminaison composés des points de terminaison les plus anciens et des points de terminaison IPv4 les plus récents dotés d'une capacité de double pile. Les deux ensembles de points de terminaison respectent les normes AWS de dénomination :
+ **IPv4 **les points de terminaison utilisent le format de domaine pour le point de terminaison de service général `amazonaws.com` : `elasticbeanstalk.region.amazonaws.com` 
+ Les points de terminaison **à double pile** utilisent le format de domaine pour le point de terminaison de service général `api.aws` : `elasticbeanstalk.region.api.aws` 

Les points de terminaison relatifs à l'*état du service* et à la *norme FIPS* portent des noms d'hôtes différents, mais ils suivent le même modèle de nom de domaine. Pour obtenir la liste des points de terminaison, voir les points de terminaison du service [Elastic Beanstalk](https://docs.aws.amazon.com//general/latest/gr/elasticbeanstalk.html#elasticbeanstalk_region) dans le. *Référence générale d'Amazon Web Services*

**Demandes adressées à Elastic Beanstalk**  
Lorsque vous envoyez des demandes au service Elastic Beanstalk [AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk)avec le SDK ou le SDK, vous pouvez IPv4 spécifier un point de [AWS terminaison ou un](https://aws.amazon.com//developer/tools/) point de terminaison à double pile. Le AWS SDK AWS CLI et utilise les points de IPv4 terminaison uniquement par défaut si aucune URL de point de terminaison n'est spécifiée.

L'exemple suivant illustre l' AWS CLI envoi d'une demande à un point de terminaison à double pile :

**Example**  

```
aws elasticbeanstalk list-available-solution-stacks \
    --endpoint-url "https://elasticbeanstalk.us-east-1.api.aws"
```

L'exemple suivant montre que le SDK AWS Python envoie une requête à un point de terminaison à double pile :

**Example**  

```
import boto3

dual_stack_eb_client = boto3.client(
    service_name='elasticbeanstalk',
    region_name='us-east-1',
    endpoint_url='https://elasticbeanstalk.us-east-1.api.aws';
)

print(dual_stack_eb_client.list_available_solution_stacks())
```

**Points de terminaison VPC pour double pile IPs**  
**Pour configurer vos points de terminaison VPC Elastic Beanstalk afin de prendre en charge le trafic à double pile**,** spécifiez dualstack pour le paramètre de type d'adresse IP du point de terminaison VPC.** Vous pouvez spécifier ce champ via [AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk)le [AWS SDK](https://aws.amazon.com//developer/tools/) ou la AWS PrivateLink console. *Pour obtenir des instructions à ce sujet dans la AWS PrivateLink console, consultez la section [Créer un point de terminaison VPC](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html) dans le AWS PrivateLink guide.* 

**Note**  
**Vous devez spécifier le **type d'adresse IP** du point de terminaison VPC sous la forme d'une pile **IPv4**ou d'une pile double.** À l'heure actuelle, les points de terminaison VPC Elastic Beanstalk ne **prennent pas en charge le type d'adresse **IPv6**IP, ce qui indiquerait une prise en charge** uniquement. IPv6 L'option **dualstack** autorise à la fois le protocole IPv6 Internet IPv4 et le protocole Internet.

L'exemple suivant montre comment créer un point de terminaison VPC à double pile avec : AWS CLI

**Example**  

```
aws ec2 create-vpc-endpoint \
    --vpc-id "vpc-example"
    --service-name "com.amazonaws.us-east-1.elasticbeanstalk"
    --ip-address-type "dualstack"
```

## Configuration d'un point de terminaison VPC pour Elastic Beanstalk
<a name="vpc-vpce.eb"></a>

Pour créer le point de terminaison d'un VPC d'interface pour le service Elastic Beanstalk dans votre VPC, suivez la procédure [Création d'un point de terminaison d'interface](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html#create-interface-endpoint).
+ Pour **Nom du service**, choisissez **com.amazonaws. *region*. tige de haricot élastique**.
+ Pour le **type d'adresse IP**, choisissez Dualstack **IPv4**ou **Dualstack**. À l'heure actuelle, les points de terminaison VPC Elastic Beanstalk ne **prennent pas en charge le type d'adresse **IPv6**IP, ce qui indiquerait une prise en charge** uniquement. IPv6 L'option **Dualstack** permet à la fois le protocole IPv6 Internet IPv4 et le protocole Internet. 

Si votre VPC est configuré avec un accès public à Internet, votre application peut toujours accéder à Elastic Beanstalk via Internet en utilisant le point de terminaison public ou le point de terminaison public. `elasticbeanstalk.region.amazonaws.com` `elasticbeanstalk.region.api.aws` Pour empêcher cela, assurez-vous que **Enable DNS name (Activer le nom DNS)** est activé lors de la création du point de terminaison (true par défaut). Cela ajoute une entrée DNS dans votre VPC qui mappe le point de terminaison du service public au point de terminaison de VPC d’interface.

## Configuration d'un point de terminaison de VPC pour l’intégrité améliorée
<a name="vpc-vpce.healthd"></a>

Si vous avez activé les [rapports de santé améliorés](health-enhanced.md) pour votre environnement, vous pouvez AWS PrivateLink également configurer l'envoi d'informations de santé améliorées. Les informations d'intégrité améliorées sont envoyées par le `healthd` démon, un composant Elastic Beanstalk sur vos instances d'environnement, à un service d'intégrité amélioré Elastic Beanstalk distinct. Pour créer un point de terminaison d'un VPC d'interface pour ce service dans votre VPC, suivez la procédure [Création d'un point de terminaison d'interface](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html#create-interface-endpoint). 
+ Pour **Nom du service**, choisissez **com.amazonaws. *region*. elasticbeanstalk-health**.
+ Pour le **type d'adresse IP**, choisissez Dualstack **IPv4**ou **Dualstack**. À l'heure actuelle, les points de terminaison VPC Elastic Beanstalk ne **prennent pas en charge le type d'adresse **IPv6**IP, ce qui indiquerait une prise en charge** uniquement. IPv6 L'option **Dualstack** permet à la fois le protocole IPv6 Internet IPv4 et le protocole Internet. 

**Important**  
Le `healthd` daemon envoie des informations de santé améliorées au point de terminaison public `elasticbeanstalk-health.region.amazonaws.com` ou`elasticbeanstalk-health.region.api.aws`. Si votre VPC est configuré avec un accès Internet public et que **Enable DNS name (Activer nom DNS)** est désactivé pour le point de terminaison de VPC, des informations d'intégrité améliorée circulent sur l'Internet public. Ce n'est probablement pas votre intention lorsque vous configurez un point de terminaison d’un VPC d'intégrité améliorée. Assurez-vous que **Enable DNS name (Activer nom DNS)** est activé (true par défaut).

## Utilisation de points de terminaison d’un VPC dans un VPC privé
<a name="vpc-vpce.private"></a>

Un VPC privé, ou un sous-réseau privé dans un VPC, n'a pas d'accès Internet public. Vous pouvez exécuter votre environnement Elastic Beanstalk dans un [VPC privé](vpc.md#services-vpc-private) et configurer des points de terminaison de VPC d'interface pour une sécurité renforcée. Dans ce cas, sachez que votre environnement peut essayer de se connecter à Internet pour d'autres raisons que celle de contacter le service Elastic Beanstalk. Pour en savoir plus sur l'exécution d'un environnement dans un VPC privé, consultez [Exécution d'un environnement Elastic Beanstalk dans un VPC privé](vpc.md#services-vpc-private-beanstalk).

# Utilisation des stratégies de point de terminaison pour contrôler l'accès avec des points de terminaison de VPC
<a name="vpc-vpce.policy"></a>

Cette rubrique explique comment vous pouvez associer une politique aux points de terminaison VPC afin de contrôler l'accès à votre application (votre service) et à votre environnement Elastic Beanstalk. 

Une politique de point de terminaison est une politique de ressources Gestion des identités et des accès AWS (IAM) qui contrôle l'accès du point de terminaison au service spécifié. La stratégie de point de terminaison est spécifique au point de terminaison. Elle est distincte des stratégies IAM d'utilisateur ou d'instance que votre environnement peut avoir et ne les remplace pas. 

Par défaut, un point de terminaison de VPC permet un accès complet au service auquel il est associé. Lorsque vous créez ou modifiez un point de terminaison, vous pouvez y associer une *politique de point de terminaison* pour contrôler l'accès à des ressources spécifiques associées au service. *Pour plus d'informations sur la création et l'utilisation de politiques de point de terminaison VPC, [consultez la section Contrôler l'accès aux points de terminaison VPC à l'aide de politiques de point de terminaison](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html) dans le Guide.AWS PrivateLink *

**Note**  
Lorsque vous créez des politiques de point de terminaison restrictives, vous devrez peut-être ajouter des autorisations spécifiques aux ressources requises, afin que l'accès à ces ressources ne soit pas bloqué par la politique de point de terminaison. Cela garantit que votre environnement continue de se déployer et de fonctionner correctement.

Dans l’exemple suivant, on refuse à tous les utilisateurs l'autorisation de mettre fin à un environnement via le point de terminaison de VPC et on autorise un accès complet à toutes les autres actions.

```
{
    "Statement": [
        {
            "Action": "*",
            "Effect": "Allow",
            "Resource": "*",
            "Principal": "*"
        },
        {
            "Action": "elasticbeanstalk:TerminateEnvironment",
            "Effect": "Deny",
            "Resource": "*",
            "Principal": "*"
        }
    ]
}
```

## Autorisations de compartiment Amazon S3 requises pour les politiques de point de terminaison VPC restrictives
<a name="AWSHowTo.S3.VPCendpoints"></a>

Si vous ajoutez des restrictions à vos politiques de point de terminaison VPC, vous devez inclure des autorisations de compartiment Amazon S3 spécifiques pour garantir que votre environnement continue à se déployer et à fonctionner correctement. Cette section explique les compartiments S3 requis et inclut des exemples de politiques.

**Topics**
+ [Des compartiments S3 qui stockent des actifs pour gérer les plateformes d'environnement](#AWSHowTo.S3.VPCendpoints.required-permissions.assets)
+ [Buckets S3 appartenant à CloudFormation](#AWSHowTo.S3.VPCendpoints.required-permissions.cloudformation)
+ [Compartiments S3 détenus par les comptes clients pour stocker le code source et d'autres éléments](#AWSHowTo.S3.VPCendpoints.required-permissions.items)
+ [Des compartiments S3 appartenant à des comptes clients pour prendre en charge l'authentification du registre Docker](#AWSHowTo.S3.VPCendpoints.required-permissions.docker-auth)
+ [Mise à jour de votre politique de point de terminaison VPC](#AWSHowTo.S3.VPCendpoints.required-permissions.assets.permissions)

### Des compartiments S3 qui stockent des actifs pour gérer les plateformes d'environnement
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.assets"></a>

Le service Elastic Beanstalk possède des compartiments S3 qui stockent les actifs associés à une pile de solutions (version de plateforme). Ces actifs incluent les fichiers de configuration, l'exemple d'application et les types d'instances disponibles. Lorsqu'Elastic Beanstalk crée et gère votre environnement, il extrait les informations requises pour chaque version de plate-forme dans le compartiment d'actifs correspondant. Région AWS

#### ARN du compartiment S3
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.assets.arn"></a>

 `arn:aws:s3:::elasticbeanstalk-samples-region` 

Amazon Linux  2 et versions ultérieures
+  `arn:aws:s3:::elasticbeanstalk-platform-assets-region` 
**Note**  
Le nom du bucket suit une convention différente pour la région *BJS*. La chaîne *public-beta-cn-north-1* est utilisée à la place de*region*. Par exemple, `arn:aws:s3:::elasticbeanstalk-platform-assets-public-beta-cn-north-1`.

Windows Server, Amazon Linux (AMI), Amazon Linux 2 et versions ultérieures
+  `arn:aws:s3:::elasticbeanstalk-env-resources-region` 
+  `arn:aws:s3:::elasticbeanstalk-region` 

**Note**  
Les noms de bucket pour les buckets platform-assets et env-resources suivent des conventions différentes dans certaines régions. Consultez la section sur les modèles de dénomination des compartiments spécifiques à la région ci-dessous pour plus de détails.

##### Modèles d'ARN de bucket spécifiques à une région
<a name="AWSHowTo.S3.VPCendpoints.region-specific-buckets.collapsed"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/elasticbeanstalk/latest/dg/vpc-vpce.policy.html)

#### Opérations
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.assets.operations"></a>

GetObject

#### Exemple de politique de point de terminaison VPC
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.assets.example"></a>

L'exemple suivant montre comment fournir l'accès aux compartiments S3 requis pour les opérations d'Elastic Beanstalk dans la région USA Est (Ohio) (us-east-2). L'exemple répertorie tous les buckets pour les plateformes Amazon Linux et Windows Server. Mettez à jour votre politique pour inclure uniquement les buckets qui s'appliquent au système d'exploitation de votre environnement. 

##### Exemple de stratégie
<a name="aAWSHowTo.S3.VPCendpoints.required-permissions.assets.example.collapsed"></a>

**Important**  
Dans cette politique, nous vous recommandons d'éviter d'utiliser des caractères génériques (\$1) à la place des régions spécifiques. Par exemple, utilisez `arn:aws:s3:::cloudformation-waitcondition-us-east-2/*` et n'utilisez pas `arn:aws:s3:::cloudformation-waitcondition-*/*`. L'utilisation de caractères génériques pourrait fournir l'accès aux compartiments S3 vers lesquels vous ne prévoyez pas d'accorder l'accès. Si vous souhaitez utiliser la politique pour plusieurs régions, nous vous recommandons de répéter le premier `Statement` bloc pour chaque région.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowRequestsToAWSResources",
            "Effect": "Allow",
            "Principal": {"AWS": "*"},
            "Action": ["s3:GetObject"],
            "Resource": [
                "arn:aws:s3:::elasticbeanstalk-platform-assets-us-east-2/*",
                "arn:aws:s3:::elasticbeanstalk-env-resources-us-east-2/*",
                "arn:aws:s3:::elasticbeanstalk-env-resources-us-east-2/*",
                "arn:aws:s3:::elasticbeanstalk-samples-us-east-2/*"
            ]
         }
    ]
}
```

------

### Buckets S3 appartenant à CloudFormation
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.cloudformation"></a>

Elastic CloudFormation Beanstalk permet de créer des ressources pour votre environnement. CloudFormation possède des compartiments S3 dans chacun d'eux Région AWS pour surveiller les réponses aux conditions d'attente.

Des services tels qu'Elastic Beanstalk CloudFormation communiquent avec eux en envoyant des demandes à une URL Amazon S3 présignée pour le compartiment S3 qui en est le propriétaire. CloudFormation CloudFormation crée l'URL Amazon S3 présignée à l'aide du principal `cloudformation.amazonaws.com` de service.

*Pour des informations plus détaillées, consultez la section [Considérations relatives aux points de terminaison CloudFormation VPC](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-vpce-bucketnames.html#cfn-setting-up-vpc-considerations) dans le guide de l'AWS CloudFormation utilisateur.* Pour en savoir plus sur le présigné URLs, consultez la section [Travailler avec le présigné URLs](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-presigned-url.html) dans le guide de l'*utilisateur Amazon S3*.

#### ARN du compartiment S3
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.cloudformation.arn"></a>
+  `arn:aws:s3:::cloudformation-waitcondition-region` 

  Lors de l'utilisation de conditions d'attente, les noms de région contiennent des tirets. Par exemple, *us-west-2*.
+  `arn:aws:s3:::cloudformation-custom-resource-response-region` 

  Lors de l'utilisation de ressources personnalisées, les noms de région ne contiennent pas de tirets. Par exemple, *uswest2*.

#### Opérations
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.cloudformation.operations"></a>

GetObject

#### Exemple de politique de point de terminaison VPC
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.cloudformation.example"></a>

L'exemple suivant montre comment fournir l'accès aux compartiments S3 requis pour les opérations d'Elastic Beanstalk dans la région USA Est (Ohio) (us-east-2).

##### Exemple de stratégie
<a name="aAWSHowTo.S3.VPCendpoints.required-permissions.cloudformation.example.collapsed"></a>

**Important**  
Dans cette politique, nous vous recommandons d'éviter d'utiliser des caractères génériques (\$1) à la place des régions spécifiques. Par exemple, utilisez `arn:aws:s3:::cloudformation-waitcondition-us-east-2/*` et n'utilisez pas `arn:aws:s3:::cloudformation-waitcondition-*/*`. L'utilisation de caractères génériques pourrait fournir l'accès aux compartiments S3 vers lesquels vous ne prévoyez pas d'accorder l'accès. Si vous souhaitez utiliser la politique pour plusieurs régions, nous vous recommandons de répéter le premier `Statement` bloc pour chaque région.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowRequestsToCloudFormation",
            "Effect": "Allow",
            "Principal": {"AWS": "*"},
            "Action": ["s3:GetObject"],
            "Resource": [
                "arn:aws:s3:::cloudformation-waitcondition-us-east-2/*",
                "arn:aws:s3:::cloudformation-custom-resource-response-us-east-2/*"
            ]
         }
    ]
}
```

------

### Compartiments S3 détenus par les comptes clients pour stocker le code source et d'autres éléments
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.items"></a>

Ce bucket appartient au compte AWS client propriétaire de l'environnement. Il stocke les ressources spécifiques à votre environnement, telles que le code source et les journaux demandés.

#### ARN du compartiment S3
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.items.arn"></a>

 `arn:aws:s3:::elasticbeanstalk-region-account-id` 

#### Opérations
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.items.operations"></a>
+ GetObject
+ GetObjectAcl
+ PutObject
+ PutObjectAcl
+ ListBucket

#### Exemple de politique de point de terminaison VPC
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.items.example"></a>

L'exemple suivant montre comment fournir l'accès aux compartiments S3 requis pour les opérations d'Elastic Beanstalk dans la région USA Est (Ohio) (us-east-2) et pour l'exemple, l'identifiant de compte 123456789012. AWS 

##### Exemple de stratégie
<a name="aAWSHowTo.S3.VPCendpoints.required-permissions.items.example.collapsed"></a>

**Important**  
Dans cette politique, nous vous recommandons d'éviter d'utiliser des caractères génériques (\$1) à la place des régions spécifiques. Par exemple, utilisez `arn:aws:s3:::cloudformation-waitcondition-us-east-2/*` et n'utilisez pas `arn:aws:s3:::cloudformation-waitcondition-*/*`. L'utilisation de caractères génériques pourrait fournir l'accès aux compartiments S3 vers lesquels vous ne prévoyez pas d'accorder l'accès. Si vous souhaitez utiliser la politique pour plusieurs régions, nous vous recommandons de répéter le premier `Statement` bloc pour chaque région.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowRequestsToCustomerItems",
            "Effect": "Allow",
            "Principal": {"AWS": "*"},
            "Action": [
               "s3:GetObject",
               "s3:GetObjectAcl",
               "s3:PutObject",
               "s3:PutObjectAcl",
               "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::elasticbeanstalk-us-east-2-123456789012/*"
            ]
         }
    ]
}
```

------

### Des compartiments S3 appartenant à des comptes clients pour prendre en charge l'authentification du registre Docker
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.docker-auth"></a>

Ce bucket s'applique uniquement aux environnements basés sur la plateforme Docker. Le compartiment stocke un fichier utilisé pour s'authentifier auprès d'un registre Docker privé qui réside sur un compartiment S3 provisionné par le client. Pour plus d'informations, consultez la section [Utilisation du fichier `Dockerrun.aws.json` v3](docker-configuration.remote-repo.md#docker-configuration.remote-repo.dockerrun-aws) dans le chapitre de ce guide consacré à la plateforme Docker.

#### ARN du compartiment S3
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.docker-auth.arn"></a>

L'ARN varie en fonction du compte client.

L'ARN du compartiment S3 a le format suivant : `arn:aws:s3:::bucket-name`

#### Opérations
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.docker-auth.operations"></a>

GetObject

#### Exemple de politique de point de terminaison VPC
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.docker-auth.example"></a>

L'exemple suivant montre comment fournir l'accès à un compartiment S3 nommé amzn-s3-demo-bucket1.

##### Exemple de stratégie
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.docker-auth.example.collapsed"></a>

------
#### [ JSON ]

****  

```
  {
  "Version":"2012-10-17",		 	 	 
  "Statement": [
     {
        "Sid": "AllowRequestsToDockerRegistryAuth",
         "Effect": "Allow",
         "Action": [
            "s3:GetObject"
          ],
      "Resource": [
        "arn:aws:s3:::amzn-s3-demo-bucket1"
      ]
    }
  ]
}
```

------

### Mise à jour de votre politique de point de terminaison VPC
<a name="AWSHowTo.S3.VPCendpoints.required-permissions.assets.permissions"></a>

Étant donné qu'un point de terminaison VPC n'est associé qu'à une seule stratégie, vous devez combiner toutes les autorisations dans une seule stratégie. L'exemple suivant regroupe tous les exemples précédents en un seul. 

*Pour plus d'informations sur la création et l'utilisation de politiques de point de terminaison VPC, [consultez la section Contrôler l'accès aux points de terminaison VPC à l'aide de politiques de point de terminaison](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html) dans le Guide.AWS PrivateLink *

Comme dans les exemples précédents, l'exemple suivant montre comment fournir l'accès aux compartiments S3 nécessaires aux opérations d'Elastic Beanstalk dans la région USA Est (Ohio) (us-east-2). Il inclut également des buckets dont l'identifiant de AWS compte est 123456789012 et le nom d'exemple du bucket amzn-s3-demo-bucket1.

**Important**  
Dans cette politique, nous vous recommandons d'éviter d'utiliser des caractères génériques (\$1) à la place des régions spécifiques. Par exemple, utilisez `arn:aws:s3:::cloudformation-waitcondition-us-east-2/*` et n'utilisez pas `arn:aws:s3:::cloudformation-waitcondition-*/*`. L'utilisation de caractères génériques pourrait fournir l'accès aux compartiments S3 vers lesquels vous ne prévoyez pas d'accorder l'accès. Si vous souhaitez utiliser la politique pour plusieurs régions, nous vous recommandons de répéter le premier `Statement` bloc pour chaque région.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowRequestsToAWSResources",
            "Effect": "Allow",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": [
                "arn:aws:s3:::elasticbeanstalk-platform-assets-us-east-2/*",
                "arn:aws:s3:::elasticbeanstalk-env-resources-us-east-2/*",
                "arn:aws:s3:::elasticbeanstalk-samples-us-east-2/*"
            ]
        },
        {
            "Sid": "AllowRequestsToCloudFormation",
            "Effect": "Allow",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": [
                "arn:aws:s3:::cloudformation-waitcondition-us-east-2/*",
                "arn:aws:s3:::cloudformation-custom-resource-response-us-east-2/*"
            ]
        },
        {
            "Sid": "AllowRequestsToCustomerItems",
            "Effect": "Allow",
            "Action": [
               "s3:GetObject",
               "s3:GetObjectAcl",
              "s3:PutObject",
               "s3:PutObjectAcl",
               "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::elasticbeanstalk-us-east-2-123456789012/*"
            ]
        },
        {
            "Sid": "AllowRequestsToDockerRegistryAuth",
            "Effect": "Allow",
            "Action": [
            "s3:GetObject"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket1"
            ]
        }
    ]
}
```

------