

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.

# Certificats privés en AWS Certificate Manager
<a name="private-certificates.title"></a>

Si vous avez accès à une autorité de certification privée existante créée par Autorité de certification privée AWS, AWS Certificate Manager (ACM) peut demander un certificat adapté à une utilisation dans votre infrastructure de clé privée (PKI). L'autorité de certification peut résider dans votre compte ou être partagée avec vous par un autre compte. Pour plus d'informations sur la création d'une Autorité de certification privée, consultez [Création d'une autorité de certification privée](https://docs.aws.amazon.com/privateca/latest/userguide/create-CA.html). 

Les certificats signés par une autorité de certification privée ne sont pas approuvés par défaut et ACM ne prend en charge aucune forme de validation pour ces certificats. Par conséquent, un administrateur doit prendre des mesures pour les installer dans les boutiques de confiance des clients de votre organisation.

Les certificats ACM privés respectent tous les deux la norme X.509 et sont soumis aux restrictions suivantes : 
+ **Noms :**Vous devez utiliser des noms de sujet conformes au DNS. Pour de plus amples informations, veuillez consulter [Noms de domaine](acm-concepts.md#concept-dn).
+ **Algorithme :** pour le chiffrement, l'algorithme de clés privées du certificat doit être soit un RSA 2 048 bits, soit un ECDSA 256 bits, soit un ECDSA 384 bits.
**Note**  
La famille d'algorithmes de signature spécifiée (RSA ou ECDSA) doit correspondre à la famille d'algorithmes de la clé secrète de l'autorité de certification. 
+ **Expiration :** Chaque certificat privé est valide pendant 13 mois (395 jours). La date d'expiration d'une certification privée doit être postérieure à la date de fin de la certification demandée, autrement la demande échoue.
**Note**  
Les certificats privés ont une durée de validité plus longue que les certificats publics. Les certificats ACM publics sont valides pendant 198 jours. Pour plus d'informations sur les certificats publics, consultez[Demandez un certificat public en AWS Certificate Manager](acm-public-certificates.md).
+ **Renouvellement :** ACM tente de renouveler automatiquement un certificat privé après une période de 11 mois. 

L'autorité de certification privée utilisée pour signer les certificats de l'entité finale est soumise à ses propres restrictions :
+ Le statut de l'autorité de certification doit être « Actif ».

**Note**  
Contrairement aux certificats approuvés publiquement, les certificats signés par une Autorité de certification privée ne nécessitent aucune validation.

**Topics**
+ [Conditions d'utilisation pour AWS CA privée signer des certificats privés ACM](ca-access.md)
+ [Demandez un certificat privé dans AWS Certificate Manager](gs-acm-request-private.md)
+ [Exporter un certificat AWS Certificate Manager privé](export-private.md)

# Conditions d'utilisation pour AWS CA privée signer des certificats privés ACM
<a name="ca-access"></a>

Vous pouvez les utiliser Autorité de certification privée AWS pour signer vos certificats ACM dans l'un des deux cas suivants :
+ **Compte unique** : l'autorité de certification signataire et le certificat AWS Certificate Manager (ACM) émis résident dans le même AWS compte.

  Pour que l'émission et les renouvellements liés à compte unique soient activés, l'administrateur de Autorité de certification privée AWS doit autoriser le principal du service ACM a créer, récupérer et répertorier les certificats. Cela se fait à l'aide de l'action Autorité de certification privée AWS API [CreatePermission](https://docs.aws.amazon.com/privateca/latest/APIReference/API_CreatePermission.html)ou de la AWS CLI commande [create-permission](https://docs.aws.amazon.com/cli/latest/reference/acm-pca/create-permission.html). Le propriétaire du compte attribue ces autorisations à un utilisateur IAM, un groupe d'utilisateurs IAM ou un rôle IAM responsable de l'émission des certificats.
+ **Comptes multiples** : l'autorité de certification signataire et le certificat ACM émis résident dans des AWS comptes différents, et l'accès à l'autorité de certification a été accordé au compte sur lequel réside le certificat.

  [Pour activer l'émission et les renouvellements entre comptes, l' Autorité de certification privée AWS administrateur doit associer une politique basée sur les ressources à l'autorité de certification à l'aide de l'action Autorité de certification privée AWS API [PutPolicy](https://docs.aws.amazon.com/privateca/latest/APIReference/API_PutPolicy.html)ou de la commande put-policy. AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/acm-pca/put-policy.html) La stratégie précise les principaux des autres comptes qui ont un accès limité à l'autorité de certification. Pour plus d'informations, consultez [Utilisation d'une stratégie basée sur les ressources avec ACM Private CA](https://docs.aws.amazon.com/privateca/latest/userguide/pca-rbp.html). 

  Le scénario Comptes multiples exige également qu'ACM mette en place un rôle lié à un service (SLR) pour interagir en tant que principal avec la stratégie PCA. ACM crée automatiquement le rôle SLR lors de l'émission du premier certificat. 

  ACM peut vous avertir qu'il ne peut pas déterminer si un rôle SLR existe sur votre compte. Si l'autorisation `iam:GetRole` requise a déjà été accordée au rôle SLR ACM pour votre compte, l'alerte ne se reproduira pas après la création du rôle SLR. Si elle se reproduit, vous ou votre administrateur de compte devrez peut-être accorder l'autorisation `iam:GetRole` à ACM, ou associer votre compte à la stratégie `AWSCertificateManagerFullAccess` gérée par ACM.

  Pour plus d'informations, consultez [Utilisation d'un rôle lié à un service avec ACM](https://docs.aws.amazon.com/acm/latest/userguide/acm-slr.html). 

**Important**  
Votre certificat ACM doit être activement associé à un AWS service pris en charge avant de pouvoir être automatiquement renouvelé. Pour en savoir plus sur les ressources prises en charge par ACM, consultez [Services intégrés à ACM](acm-services.md). 

# Demandez un certificat privé dans AWS Certificate Manager
<a name="gs-acm-request-private"></a>

## Demander un certificat privé (console)
<a name="request-private-console"></a>

1. Connectez-vous à la console AWS de gestion et ouvrez la console ACM à la [https://console.aws.amazon.com/acm/maison](https://console.aws.amazon.com/acm/home).

   Choisissez **Request a certificate** (Demander un certificat).

1. Sur la page **Demander un certificat** choisissez **Request a private certificate** (Demander un certificat privé) et **Next** (Suivant) pour continuer.

1. Dans la section **Détails de l'autorité** de **certification, sélectionnez le menu Autorité** de certification et choisissez l'une des options privées disponibles CAs. Si l'autorité de certification est partagée à partir d'un autre compte, l'ARN est précédé des informations de propriété.

   Les informations relatives à l'autorité de certification s'affichent pour vous permettre de vérifier que vous avez choisi la bonne :
   + **Propriétaire**
   + **Type**
   + **Nom commun**
   + **Organisation**
   + **Unité d'organisation**
   + **Nom du pays**
   + **État ou province**
   + **Nom de la localité**

1. Dans la page **Ajouter des noms de domaine**, saisissez votre nom de domaine. Vous pouvez utiliser un nom de domaine complet (FQDN) comme **www.example.com** ou un nom de domaine strict ou apex tel que **example.com**. Vous pouvez également utiliser un astérisque (**\$1**) comme caractère générique à la position la plus à gauche pour protéger plusieurs noms de site dans le même domaine. Par exemple, **\$1.example.com** protège **corp.example.com** et **images.example.com**. Le nom générique apparaîtra dans le champ **Objet** et dans l'extension **Subject Alternative Name** du certificat ACM. 
**Note**  
Lorsque vous demandez un certificat générique, l'astérisque (**\$1**) doit se trouver à la position la plus à gauche du nom de domaine et ne peut protéger qu'un seul niveau de sous-domaine. Par exemple, **\$1.example.com** il peut protéger **login.example.com**, et **test.example.com**, mais ne peut pas protéger **test.login.example.com**. Notez aussi que **\$1.example.com** protège *uniquement* les sous-domaines de **example.com**, il ne protège pas le domaine strict ou apex (**example.com**). Pour protéger les deux, consultez l'étape suivante

   Choisissez éventuellement **Ajouter un autre nom à ce certificat** et tapez le nom dans la zone de texte. Ceci est très utile pour authentifier un nom de domaine strict ou apex (comme **example.com**) et ses sous-domaines (comme **\$1.example.com**).

1. Dans la section **Algorithme clé**, choisissez un algorithme.

   Pour obtenir des informations qui vous aideront à choisir un algorithme, consultez le billet de AWS blog [Comment évaluer et utiliser les certificats ECDSA dans](https://aws.amazon.com/blogs/security/how-to-evaluate-and-use-ecdsa-certificates-in-aws-certificate-manager/). AWS Certificate Manager

1. Sur la page **Ajouter des balises** vous pouvez éventuellement baliser votre certificat. Les balises sont des paires clé-valeur qui servent de métadonnées pour identifier et organiser AWS les ressources. Pour obtenir la liste des paramètres de balise ACM et des instructions sur l'ajout de balises aux certificats après leur création, consultez [AWS Certificate Manager Ressources de balises](tags.md).

1. Dans la section **Permissions de renouvellement de certificats**, accusez réception de l'avis concernant les autorisations de renouvellement de certificat. Ces autorisations permettent le renouvellement automatique des certificats PKI privés que vous signez avec l'autorité de certification sélectionnée. Pour plus d'informations, consultez [Utilisation d'un rôle lié à un service avec ACM](https://docs.aws.amazon.com/acm/latest/userguide/acm-slr.html). 

1. Après avoir fourni toutes les informations requises, choisissez **Request** (Demander). La console vous renvoie à la liste des certificats, où vous pouvez afficher votre nouveau certificat.
**Note**  
Selon la façon dont vous avez commandé la liste, un certificat que vous recherchez peut ne pas être immédiatement visible. Vous pouvez cliquer sur le triangle noir à droite pour modifier l'ordre. Vous pouvez également parcourir plusieurs pages de certificats à l'aide des numéros de page situés en haut à droite.

## Demander un certificat privé (CLI)
<a name="request-private-cli"></a>

Utilisez la commande [request-certificate](https://docs.aws.amazon.com/cli/latest/reference/acm/request-certificate.html) pour demander un certificat privé dans ACM. 

**Note**  
Lorsque vous demandez un certificat PKI privé signé par une autorité de certification AWS CA privée, la famille d'algorithmes de signature spécifiée (RSA ou ECDSA) doit correspondre à la famille d'algorithmes de la clé secrète de l'autorité de certification.

```
aws acm request-certificate \
--domain-name www.example.com \
--idempotency-token 12563 \
--certificate-authority-arn arn:aws:acm-pca:Region:444455556666:\
certificate-authority/CA_ID
```

Cette commande génère le nom Amazon Resource Name (ARN) de votre nouveau certificat privé.

```
{
    "CertificateArn": "arn:aws:acm:Region:444455556666:certificate/certificate_ID"
}
```

Dans la plupart des cas, ACM attache automatiquement un rôle lié à un service (SLR) à votre compte la première fois que vous utilisez une autorité de certification partagée. Le rôle SLR permet le renouvellement automatique des certificats d'entité finale que vous émettez. Pour déterminer si le rôle SLR est présent, vous pouvez interroger IAM à l'aide de la commande suivante :

```
aws iam get-role --role-name AWSServiceRoleForCertificateManager
```

Si le rôle SLR est présent, la sortie de commande est semblable à la suivante :

```
{
   "Role":{
      "Path":"/aws-service-role/acm.amazonaws.com/",
      "RoleName":"AWSServiceRoleForCertificateManager",
      "RoleId":"AAAAAAA0000000BBBBBBB",
      "Arn":"arn:aws:iam::{account_no}:role/aws-service-role/acm.amazonaws.com/AWSServiceRoleForCertificateManager",
      "CreateDate":"2020-08-01T23:10:41Z",
      "AssumeRolePolicyDocument":{
         "Version":"2012-10-17",		 	 	 
         "Statement":[
            {
               "Effect":"Allow",
               "Principal":{
                  "Service":"acm.amazonaws.com"
               },
               "Action":"sts:AssumeRole"
            }
         ]
      },
      "Description":"SLR for ACM Service for accessing cross-account Private CA",
      "MaxSessionDuration":3600,
      "RoleLastUsed":{
         "LastUsedDate":"2020-08-01T23:11:04Z",
         "Region":"ap-southeast-1"
      }
   }
}
```

En l'absence de rôle SLR, consultez [Utilisation d'un rôle lié à un service avec ACM](https://docs.aws.amazon.com/acm/latest/userguide/acm-slr.html).

# Exporter un certificat AWS Certificate Manager privé
<a name="export-private"></a>

Vous pouvez exporter un certificat émis par Autorité de certification privée AWS pour l'utiliser n'importe où dans votre environnement PKI privé. Le fichier exporté contient le certificat, la chaîne de certificats et la clé privée chiffrée. Ce fichier doit être stocké de manière sécurisée. Pour plus d'informations Autorité de certification privée AWS, consultez le [Guide de AWS Autorité de certification privée l'utilisateur](https://docs.aws.amazon.com/privateca/latest/userguide/).

**Note**  
Si vous souhaitez exporter des certificats publics émis via ACM, consultez la section Certificats publics [exportables d'ACM](https://docs.aws.amazon.com/acm/latest/userguide/acm-exportable-certificates.html).

**Topics**
+ [Exporter un certificat privé (console)](#export-console)
+ [Exportation d'un certificat privé (CLI)](#export-cli)

## Exporter un certificat privé (console)
<a name="export-console"></a>

1. Connectez-vous à la console AWS de gestion et ouvrez la console ACM à la [https://console.aws.amazon.com/acm/maison](https://console.aws.amazon.com/acm/home).

1. Choisissez **Certificate Manager**

1. Cliquez sur le lien du certificat que vous voulez exporter.

1. Cliquez sur **Exporter**.

1. Entrez et confirmez une phrase secrète pour la clé privée.
**Note**  
Votre phrase secrète peut contenir n'importe quel caractère ASCII, à l'exception des caractères suivants : \$1, \$1 ou %.

1. Choisissez **Générer l'encodage PEM**.

1. Vous pouvez copier le certificat, la chaîne de certificats et la clé chiffrée dans la mémoire ou choisir **Exporter dans un fichier** pour chaque élément.

1. Sélectionnez **Done** (Exécuté).

## Exportation d'un certificat privé (CLI)
<a name="export-cli"></a>

Utilisez la commande [export-certificate](https://docs.aws.amazon.com/cli/latest/reference/acm/export-certificate.html) pour exporter un certificat privé et une clé privée. Vous devez attribuer une phrase secrète lorsque vous exécutez la commande. Pour plus de sécurité, vous pouvez utiliser un éditeur de fichiers pour stocker votre phrase secrète dans un fichier, puis fournir la phrase secrète à la livraison du fichier. Cela évite le stockage de votre code secret dans l'historique des commandes et empêche les autres personnes de voir le code secret lorsque vous le saisissez. 

**Note**  
Le fichier contenant la phrase secrète ne doit pas se terminer par une marque de fin de ligne. Vous pouvez vérifier votre fichier de mots de passe comme suit :   

```
$ file -k passphrase.txt
passphrase.txt: ASCII text, with no line terminators
```

L'exemple suivant achemine la sortie de la commande vers `jq` pour appliquer le format PEM.

```
[Windows/Linux]
$ aws acm export-certificate \
     --certificate-arn arn:aws:acm:Region:444455556666:certificate/certificate_ID \
     --passphrase fileb://path-to-passphrase-file  \
     | jq -r '"\(.Certificate)\(.CertificateChain)\(.PrivateKey)"'
```

Cela produit un certificat codé en base64, au format PEM et contenant également la chaîne de certificats et la clé privée chiffrée, comme dans l'exemple abrégé suivant.

```
-----BEGIN CERTIFICATE-----
MIIDTDCCAjSgAwIBAgIRANWuFpqA16g3IwStE3vVpTwwDQYJKoZIhvcNAQELBQAw
EzERMA8GA1UECgwIdHJvbG9sb2wwHhcNMTkwNzE5MTYxNTU1WhcNMjAwODE5MTcx
NTU1WjAXMRUwEwYDVQQDDAx3d3cuc3B1ZHMuaW8wggEiMA0GCSqGSIb3DQEBAQUA
...
8UNFQvNoo1VtICL4cwWOdLOkxpwkkKWtcEkQuHE1v5Vn6HpbfFmxkdPEasoDhthH
FFWIf4/+VOlbDLgjU4HgtmV4IJDtqM9rGOZ42eFYmmc3eQO0GmigBBwwXp3j6hoi
74YM+igvtILnbYkPYhY9qz8h7lHUmannS8j6YxmtpPY=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIC8zCCAdugAwIBAgIRAM/jQ/6h2/MI1NYWX3dDaZswDQYJKoZIhvcNAQELBQAw
EzERMA8GA1UECgwIdHJvbG9sb2wwHhcNMTkwNjE5MTk0NTE2WhcNMjkwNjE5MjA0
NTE2WjATMREwDwYDVQQKDAh0cm9sb2xvbDCCASIwDQYJKoZIhvcNAQEBBQADggEP
...
j2PAOviqIXjwr08Zo/rTy/8m6LAsmm3LVVYKLyPdl+KB6M/+H93Z1/Bs8ERqqga/
6lfM6iw2JHtkW+q4WexvQSoqRXFhCZWbWPZTUpBS0d4/Y5q92S3iJLRa/JQ0d4U1
tWZyqJ2rj2RL+h7CE71XIAM//oHGcDDPaQBFD2DTisB/+ppGeDuB
-----END CERTIFICATE-----
-----BEGIN ENCRYPTED PRIVATE KEY-----
MIIFKzBVBgkqhkiG9w0BBQ0wSDAnBgkqhkiG9w0BBQwwGgQUMrZb7kZJ8nTZg7aB
1zmaQh4vwloCAggAMB0GCWCGSAFlAwQBKgQQDViroIHStQgNOjR6nTUnuwSCBNAN
JM4SG202YPUiddWeWmX/RKGg3lIdE+A0WLTPskNCdCAHqdhOSqBwt65qUTZe3gBt
...
ZGipF/DobHDMkpwiaRR5sz6nG4wcki0ryYjAQrdGsR6EVvUUXADkrnrrxuHTWjFl
wEuqyd8X/ApkQsYFX/nhepOEIGWf8Xu0nrjQo77/evhG0sHXborGzgCJwKuimPVy
Fs5kw5mvEoe5DAe3rSKsSUJ1tM4RagJj2WH+BC04SZWNH8kxfOC1E/GSLBCixv3v
+Lwq38CEJRQJLdpta8NcLKnFBwmmVs9OV/VXzNuHYg==
-----END ENCRYPTED PRIVATE KEY-----
```

Pour tout afficher dans un fichier, ajoutez la `>` redirection à l'exemple précédent, pour obtenir ce qui suit. 

```
$ aws acm export-certificate \
     --certificate-arn arn:aws:acm:Region:444455556666:certificate/certificate_ID \
     --passphrase fileb://path-to-passphrase-file \
     | jq -r '"\(.Certificate)\(.CertificateChain)\(.PrivateKey)"' \
     > /tmp/export.txt
```