

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.

# Configuration du protocole TLS mutuel sur un équilibreur de charge d'application
<a name="configuring-mtls-with-elb"></a>

Pour utiliser le mode de transmission TLS mutuel, il vous suffit de configurer l'écouteur pour qu'il accepte tous les certificats des clients. Lorsque vous utilisez le relais TLS mutuel, l'équilibreur de charge d'application envoie l'intégralité de la chaîne de certificats client à la cible à l'aide d'en-têtes HTTP, ce qui vous permet d'implémenter la logique d'authentification et d'autorisation correspondante dans votre application. Pour plus d'informations, consultez [ Création d'un écouteur HTTPS pour votre ](create-https-listener.md) équilibreur de charge d'application.

 Lorsque vous utilisez le protocole TLS mutuel en mode vérification, l'équilibreur de charge des applications effectue l'authentification par certificat X.509 client pour les clients lorsqu'un équilibreur de charge négocie des connexions TLS.

Pour utiliser le mode de vérification TLS mutuel, effectuez les opérations suivantes :
+ Créez une nouvelle ressource Trust Store.
+ Téléchargez votre bundle d'autorité de certification (CA) et, éventuellement, les listes de révocation.
+ Associez le Trust Store à l'écouteur configuré pour vérifier les certificats clients.

Utilisez les procédures suivantes pour configurer le mode de vérification TLS mutuelle sur votre équilibreur de charge d'application.

**Topics**
+ [Créez une boutique de confiance](#create-trust-store)
+ [Associer un trust store](#associate-trust-store)
+ [Remplacer un ensemble de certificats CA](#replace-ca-cert-bundle)
+ [Ajouter une liste de certificats révoqués](#add-cert-revocation-list)
+ [Supprimer une liste de certificats révoqués](#delete-cert-revocation-list)
+ [Supprimer un trust store](#delete-trust-store)

## Créez une boutique de confiance
<a name="create-trust-store"></a>

Si vous ajoutez un magasin de confiance lorsque vous créez un équilibreur de charge ou un écouteur, le magasin de confiance est automatiquement associé au nouvel écouteur. Dans le cas contraire, vous devez l'associer vous-même à un auditeur.

**Conditions préalables**
+ Pour créer une boutique de confiance, vous devez disposer d'un ensemble de certificats provenant de votre autorité de certification (CA).

------
#### [ Console ]

L'exemple suivant crée un Trust Store à l'aide de la ** partie ** Trust Store de la console. Vous pouvez également créer le Trust Store lorsque vous créez un écouteur HTTP.

**Pour créer une boutique de confiance**

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

1. Dans le volet de navigation, choisissez ** Trust Stores**.

1. Choisissez ** Create Trust Store**.

1. **Configuration du Trust Store **

   1. Dans le ** champ Nom de la boutique de confiance**, entrez un nom pour votre boutique de confiance.

   1. Pour le bundle ** d'autorité de certification**, entrez le chemin Amazon S3 vers le bundle de certificats CA à utiliser.

   1. (Facultatif) Utilisez ** Object version ** pour sélectionner une version précédente du bundle de certificats CA. Dans le cas contraire, c'est la version actuelle qui est utilisée.

1. (Facultatif) Pour les ** révocations**, vous pouvez ajouter une liste de certificats révoqués à votre Trust Store.

   1. Choisissez ** Ajouter une nouvelle CRL ** et entrez l'emplacement de la liste de révocation des certificats dans Amazon S3.

   1. (Facultatif) Utilisez la version ** de l'**objet pour sélectionner une version précédente de la liste des certificats révoqués. Dans le cas contraire, c'est la version actuelle qui est utilisée.

1. (Facultatif) Développez les tags ** Trust Store ** et saisissez jusqu'à 50 tags pour votre Trust Store.

1. Choisissez ** Create Trust Store**.

------
#### [ AWS CLI ]

**Pour créer une boutique de confiance**  
Utilisez la commande [ create-trust-store](https://docs.aws.amazon.com/cli/latest/reference/elbv2/create-trust-store.html).

```
aws elbv2 create-trust-store \
    --name {{my-trust-store}} \
    --ca-certificates-bundle-s3-bucket {{amzn-s3-demo-bucket}} \
    --ca-certificates-bundle-s3-key {{certificates/ca-bundle.pem}}
```

------
#### [ CloudFormation ]

**Pour créer une boutique de confiance**  
Définissez une ressource de type [ AWS::ElasticLoadBalancing V2 : : TrustStore](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-elasticloadbalancingv2-truststore.html).

```
Resources:
  myTrustStore:
    Type: 'AWS::ElasticLoadBalancingV2::TrustStore'
    Properties:
      Name: {{my-trust-store}}
      CaCertificatesBundleS3Bucket: {{amzn-s3-demo-bucket}}
      CaCertificatesBundleS3Key: {{certificates/ca-bundle.pem}}
```

------

## Associer un trust store
<a name="associate-trust-store"></a>

Après avoir créé un Trust Store, vous devez l'associer à un écouteur pour que votre Application Load Balancer puisse commencer à utiliser le Trust Store. Vous ne pouvez associer qu'un seul magasin de confiance à chacun de vos auditeurs sécurisés, mais un seul magasin de confiance peut être associé à plusieurs auditeurs.

------
#### [ Console ]

Vous pouvez associer un Trust Store à un écouteur existant, comme indiqué dans la procédure suivante. Vous pouvez également associer un trust store lors de la création d'un écouteur HTTPS. Pour plus d'informations, consultez la section [ Créer un écouteur ](create-https-listener.md) HTTPS.

**Pour associer un trust store**

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

1. Dans le volet de navigation, choisissez **Load Balancers (Équilibreurs de charge)**.

1. Sélectionnez l'équilibreur de charge.

1. Dans l'**onglet ** Auditeurs et règles, cliquez sur le lien dans la ** Protocol:Port ** colonne pour ouvrir la page de détails de l'écouteur sécurisé.

1. Dans l'**onglet ** Sécurité, choisissez ** Modifier les paramètres ** de l'écouteur sécurisé.

1. Si le TLS mutuel n'est pas activé, sélectionnez Authentification ** mutuelle (mTLS) ** sous Gestion des certificats ** clients, ** puis choisissez ** Vérifier avec Trust Store. **

1. Pour ** Trust Store**, choisissez le Trust Store.

1. Sélectionnez **Enregistrer les modifications**.

------
#### [ AWS CLI ]

**Pour associer un trust store**  
Utilisez la commande [modify-listener](https://docs.aws.amazon.com/cli/latest/reference/elbv2/modify-listener.html).

```
aws elbv2 modify-listener \
    --listener-arn {{listener-arn}} \
    --mutual-authentication "Mode=verify,TrustStoreArn={{trust-store-arn}}"
```

------
#### [ CloudFormation ]

**Pour associer un trust store**  
Mettez à jour la [ AWS::ElasticLoadBalancing ressource V2 : :Listener. ](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-elasticloadbalancingv2-listener.html)

```
Resources:
  myHTTPSListener:
    Type: 'AWS::ElasticLoadBalancingV2::Listener'
    Properties: 
      LoadBalancerArn: !Ref myLoadBalancer
      Protocol: HTTPS
      Port: 443
      DefaultActions:
        - Type: "forward"
          TargetGroupArn: !Ref myTargetGroup
      SslPolicy: ELBSecurityPolicy-TLS13-1-2-2021-06
      Certificates: 
        - CertificateArn: certificate-arn
      MutualAuthentication:
        - Mode: verify
          TrustStoreArn: {{trust-store-arn}}
```

------

## Remplacer un ensemble de certificats CA
<a name="replace-ca-cert-bundle"></a>

Le bundle de certificats CA est un composant obligatoire du Trust Store. Il s'agit d'un ensemble de certificats racine et intermédiaires fiables qui ont été validés par une autorité de certification. Ces certificats validés garantissent que le client peut être sûr que le certificat présenté appartient à l'équilibreur de charge.

Un magasin de confiance ne peut contenir qu'un seul ensemble de certificats CA à la fois, mais vous pouvez remplacer le bundle de certificats CA à tout moment après sa création.

------
#### [ Console ]

**Pour remplacer un ensemble de certificats CA**

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

1. Dans le volet de navigation, choisissez ** Trust Stores**.

1. Sélectionnez le Trust Store.

1. Choisissez ** Actions**, ** Remplacer le bundle CA**.

1. Sur la ** page ** Remplacer le bundle CA, sous Bundle d'autorité de ** certification**, entrez l'emplacement Amazon S3 du bundle CA souhaité.

1. (Facultatif) Utilisez la version ** de ** l'objet pour sélectionner une version précédente de la liste de révocation des certificats. Dans le cas contraire, c'est la version actuelle qui est utilisée.

1. Sélectionnez ** Remplacer le bundle CA**.

------
#### [ AWS CLI ]

**Pour remplacer un ensemble de certificats CA**  
Utilisez la commande [https://docs.aws.amazon.com/cli/latest/reference/elbv2/modify-trust-store.html](https://docs.aws.amazon.com/cli/latest/reference/elbv2/modify-trust-store.html) modify-trust-store.

```
aws elbv2 modify-trust-store \
    --trust-store-arn {{trust-store-arn}} \
    --ca-certificates-bundle-s3-bucket {{amzn-s3-demo-bucket-new}} \
    --ca-certificates-bundle-s3-key {{certificates/new-ca-bundle-pem}}
```

------
#### [ CloudFormation ]

**Pour mettre à jour le bundle de certificats CA**  
Définissez une ressource de type [ AWS::ElasticLoadBalancing V2 : : TrustStore](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-elasticloadbalancingv2-truststore.html).

```
Resources:
  myTrustStore:
    Type: 'AWS::ElasticLoadBalancingV2::TrustStore'
    Properties:
      Name: my-trust-store
      CaCertificatesBundleS3Bucket: {{amzn-s3-demo-bucket-new}}
      CaCertificatesBundleS3Key: {{certificates/new-ca-bundle.pem}}
```

------

## Ajouter une liste de certificats révoqués
<a name="add-cert-revocation-list"></a>

Vous pouvez éventuellement créer une liste de révocation de certificats pour un Trust Store. Les listes de révocation sont publiées par les autorités de certification et contiennent des données relatives aux certificats qui ont été révoqués. Les équilibreurs de charge d'application ne prennent en charge que les listes de révocation de certificats au format PEM.

Lorsqu'une liste de certificats révoqués est ajoutée à une boutique de confiance, un ID de révocation lui est attribué. Les ID de révocation augmentent pour chaque liste de révocation ajoutée au Trust Store, et ils ne peuvent pas être modifiés.

Les équilibreurs de charge des applications ne peuvent pas révoquer les certificats dont le numéro de série est négatif dans une liste de certificats révoqués.

------
#### [ Console ]

**Pour ajouter une liste de révocation**

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

1. Dans le volet de navigation, choisissez ** Trust Stores**.

1. Sélectionnez le Trust Store pour afficher sa page de détails.

1. Dans l'**onglet Listes de révocation de ** certificats, sélectionnez ** Actions**, ** Ajouter une liste de révocation. **

1. Sur la ** page ** Ajouter une liste de révocation, sous Liste de ** certificats révoqués, ** entrez l'emplacement Amazon S3 de la liste de certificats révoqués souhaitée

1. (Facultatif) Utilisez la version ** de ** l'objet pour sélectionner une version précédente de la liste de révocation des certificats. Dans le cas contraire, c'est la version actuelle qui est utilisée.

1. Sélectionnez ** Ajouter une liste de révocation **

------
#### [ AWS CLI ]

**Pour ajouter une liste de révocation**  
Utilisez la [ commande ](https://docs.aws.amazon.com/cli/latest/reference/elbv2/add-trust-store-revocations.html) add-trust-store-revocations.

```
aws elbv2 add-trust-store-revocations \
    --trust-store-arn {{trust-store-arn}} \
    --revocation-contents "S3Bucket={{amzn-s3-demo-bucket}},S3Key={{crl/revoked-list.crl}},RevocationType=CRL"
```

------
#### [ CloudFormation ]

**Pour ajouter une liste de révocation**  
Définissez une ressource de type [ AWS::ElasticLoadBalancing V2 : : TrustStoreRevocation](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-elasticloadbalancingv2-truststorerevocation.html).

```
Resources:
  myRevocationContents:
    Type: 'AWS:ElasticLoadBalancingV2::TrustStoreRevocation'
    Properties:
      TrustStoreArn: !Ref myTrustStore
      RevocationContents:
        - RevocationType: CRL
          S3Bucket: {{amzn-s3-demo-bucket}}
          S3Key: {{crl/revoked-list.crl}}
```

------

## Supprimer une liste de certificats révoqués
<a name="delete-cert-revocation-list"></a>

Lorsque vous n'avez plus besoin d'une liste de certificats révoqués, vous pouvez la supprimer. Lorsque vous supprimez une liste de certificats révoqués d'un Trust Store, son ID de révocation est également supprimé et n'est pas réutilisé pendant toute la durée de vie du Trust Store.

------
#### [ Console ]

**Pour supprimer une liste de révocation**

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

1. Dans le volet de navigation, choisissez ** Trust Stores**.

1. Sélectionnez le Trust Store.

1. Dans l'**onglet Listes de révocation de ** certificats, choisissez ** Actions**, ** Supprimer la liste de révocation. **

1. À l’invite de confirmation, saisissez **confirm**.

1. Sélectionnez **Delete (Supprimer)**.

------
#### [ AWS CLI ]

**Pour supprimer une liste de révocation**  
Utilisez la commande [https://docs.aws.amazon.com/cli/latest/reference/elbv2/remove-trust-store-revocations.html](https://docs.aws.amazon.com/cli/latest/reference/elbv2/remove-trust-store-revocations.html) remove-trust-store-revocations.

```
aws elbv2 remove-trust-store-revocations \
    --trust-store-arn {{trust-store-arn}} \
    --revocation-ids {{id-1}} {{id-2}} {{id-3}}
```

------

## Supprimer un trust store
<a name="delete-trust-store"></a>

Lorsque vous n'avez plus besoin d'un Trust Store, vous pouvez le supprimer. Vous ne pouvez pas supprimer un trust store associé à un auditeur.

------
#### [ Console ]

**Pour supprimer un Trust Store**

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

1. Dans le volet de navigation, choisissez ** Trust Stores**.

1. Sélectionnez le Trust Store.

1. Sélectionnez **Delete (Supprimer)**.

1. Lorsque vous êtes invité à confirmer, entrez `confirm`, puis choisissez **Delete (Supprimer)**.

------
#### [ AWS CLI ]

**Pour supprimer un Trust Store**  
Utilisez la commande [ delete-trust-store](https://docs.aws.amazon.com/cli/latest/reference/elbv2/delete-trust-store.html).

```
aws elbv2 delete-trust-store \
    --trust-store-arn {{trust-store-arn}}
```

------