Comment importer mes clés dans AWS Key Management Service ?

Lecture de 4 minute(s)
0

Je souhaite importer mes informations clés dans AWS Key Management Service (AWS KMS) afin de pouvoir utiliser des clés symétriques 256 bits avec les services AWS.

Résolution

AWS KMS vous permet d'importer votre matériel clé dans une clé AWS KMS. Vous pouvez ensuite utiliser cette clé avec les services AWS pris en charge par AWS KMS.

Suivez ces étapes pour importer vos éléments de clé dans AWS KMS :

1.    Créez une clé AWS KMS sans élément de clé. Notez l'identifiant de votre clé AWS KMS.

Remarque : Pour définir les autorisations administratives clés et définir les autorisations d'utilisation des clés, il est recommandé de séparer les rôles d'administrateur clé et les rôles clés. Cela limite l'impact si l'une ou l'autre des informations d'identification est exposée.

2.    Ouvrez un terminal sur votre machine locale ou une instance Amazon Elastic Compute Cloud (Amazon EC2) avec OpenSSL installé. Pour plus d'informations, consultez sur le site Web d'OpenSSL.

3.    Pour générer une clé symétrique de 256 bits, exécutez la commande suivante :

openssl rand -out PlaintextKeyMaterial.bin 32

4.    Exécutez ces commandes Interface de ligne de commande AWS (AWS CLI) pour décrire la clé et obtenir les paramètres pour l'importation :

Remarque : les commandes stockent la clé publique et importent les paramètres de jeton dans une variable.

export KEY=`aws kms --region eu-west-2 get-parameters-for-import --key-id example1-2345-67ab-9123-456789abcdef --wrapping-algorithm RSAES_OAEP_SHA_256 --wrapping-key-spec RSA_2048 --query '{Key:PublicKey,Token:ImportToken}' --output text`

5.    Pour placer la clé publique et le jeton d'importation dans des fichiers distincts codés en base64, exécutez la commande suivante :

echo $KEY | awk '{print $1}' > PublicKey.b64
echo $KEY | awk '{print $2}' > ImportToken.b64

6.    Pour convertir le fichier codé en base64 en fichiers binaires à importer, exécutez les commandes suivantes :

openssl enc -d -base64 -A -in PublicKey.b64 -out PublicKey.bin
openssl enc -d -base64 -A -in ImportToken.b64 -out ImportToken.bin

7.    Pour chiffrer les éléments de clé avec la clé publique qui a été convertie en un fichier binaire, exécutez la commande suivante :

openssl pkeyutl -in PlaintextKeyMaterial.bin -out EncryptedKeyMaterial.bin -inkey PublicKey.bin -keyform DER -pubin -encrypt -pkeyopt rsa_padding_mode:oaep -pkeyopt rsa_oaep_md:sha256

8.    Pour importer le matériel clé chiffré dans AWS KMS, exécutez la commande suivante :

Remarque : dans cet exemple, le contenu de la clé n'expire pas, mais vous pouvez choisir de définir une date d'expiration pour vos éléments de clé. Pour plus d'informations, consultez ExpirationModel.

aws kms --region eu-west-2 import-key-material --key-id example1-2345-67ab-9123-456789abcdef --encrypted-key-material fileb://EncryptedKeyMaterial.bin --import-token fileb://ImportToken.bin --expiration-model KEY_MATERIAL_DOES_NOT_EXPIRE

9.    Vérifiez que l'état de la clé importée est défini sur Activé. Pour ce faire, consultez la clé dans la console AWS KMS ou exécutez l'action d'API DescribeKey.

Si vous ne parvenez pas à importer votre clé, notez les causes et les solutions suivantes :

  • Vous avez attendu plus de 24 heures et le jeton d'importation a expiré. Pour résoudre ce problème, téléchargez l'algorithme d'emballage de la clé et en important à nouveau le jeton pour rechiffrer les éléments de la clé.
  • Il est possible qu'il ne s'agisse pas d'une clé symétrique de 256 bits. Pour résoudre ce problème, vérifiez la taille du fichier de la clé chiffrée : elle doit être de 32 octets. Pour vérifier la taille du fichier, exécutez l'une des commandes suivantes :

Linux

wc -c <filename>.bin

Windows

dir <filename>.bin

Pour plus d'informations, consultez Importation de données clés dans des clés AWS KMS.


Informations connexes

À propos des clés importées

J'utilise OpenSSL pour importer ma clé dans AWS KMS, mais l'erreur « InvalidCiphertext » apparaît. Comment puis-je résoudre ce problème ?

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a un an