Passer au contenu

Comment effectuer une rotation manuelle des clés gérées par le client dans AWS KMS ?

Lecture de 3 minute(s)
0

AWS Key Management Service (AWS KMS) effectue une rotation automatique des clés AWS KMS une fois par an. Je souhaite effectuer une rotation manuelle des clés AWS KMS avant leur rotation automatique.

Résolution

Pour remplacer manuellement votre clé AWS KMS actuelle par une nouvelle clé, procédez comme suit :

Remarque : si des erreurs surviennent lorsque vous exécutez des commandes de l’interface de la ligne de commande AWS (AWS CLI), consultez la page Résoudre les erreurs liées à AWS CLI. Vérifiez également que vous utilisez bien la version la plus récente de l’AWS CLI.

  1. Créez un alias nommé application-current, puis attachez-le à la clé AWS KMS existante :

    acbc32cf8f6f:~ $$ aws kms create-alias --alias-name alias/application-current --target-key-id 0987dcba-09fe-87dc-65ba-ab0987654321acbc32cf8f6f:~ $$ aws kms list-aliases --output text | grep application
    ALIASES    arn:aws:kms:eu-west-1:123456789012:alias/application-current    alias/application-current    0987dcba-09fe-87dc-65ba-ab0987654321
  2. Créez un nouvel alias nommé application-20180606 qui inclut la date de rotation dans le nom de la clé AWS KMS à remplacer. Dans l'exemple suivant, la date de rotation est le 06/06/2018. La clé AWS KMS possède deux alias :

    acbc32cf8f6f:~ $$ aws kms create-alias --alias-name alias/application-20180606 --target-key-id 0987dcba-09fe-87dc-65ba-ab0987654321acbc32cf8f6f:~ $$ aws kms list-aliases --output text | grep application
    ALIASES    arn:aws:kms:eu-west-1:123456789012:alias/application-20180606    alias/application-20180606    0987dcba-09fe-87dc-65ba-ab0987654321
    ALIASES    arn:aws:kms:eu-west-1:123456789012:alias/application-current     alias/application-current     0987dcba-09fe-87dc-65ba-ab0987654321
  3. Créez une nouvelle clé AWS KMS similaire à la suivante :

    acbc32cf8f6f:~ $$ aws kms create-key{
        "KeyMetadata": {
            "Origin": "AWS_KMS",
            "KeyId": "9bf76697-5b41-4caf-9fe1-e23bbe20f858",
            "Description": "",
            "KeyManager": "CUSTOMER",
            "Enabled": true,
            "KeyUsage": "ENCRYPT_DECRYPT",
            "KeyState": "Enabled",
            "CreationDate": 1528289057.531,
            "Arn": "arn:aws:kms:eu-west-1:123456789012:key/9bf76697-5b41-4caf-9fe1-e23bbe20f858",
            "AWSAccountId": "123456789012"
        }
    }
  4. Associez l'alias application-current à la nouvelle clé AWS KMS. Remplacez NEW_KMS_KEY_ID par l’ID de la clé créée à l'étape 3 :

    $$ aws kms update-alias --alias-name alias/application-current --target-key-id NEW_KMS_KEY_ID

    Remarque : la nouvelle clé KMS ne peut pas déchiffrer les données chiffrées avec l'ancienne clé. Dans le cas de données chiffrées à l'aide de clés de chiffrement symétriques, AWS KMS extrait l'ID de la clé AWS KMS à partir des métadonnées. AWS KMS utilise ensuite cette clé pour effectuer le déchiffrement. Vous devez donc éviter de spécifier un ID de clé dans votre demande de déchiffrement. Si vous utilisez des clés AWS KMS asymétriques, vous devez spécifier manuellement l'ID de clé dans vos demandes de déchiffrement. Veillez à surveiller la clé AWS KMS utilisée dans les actions de chiffrement.

  5. Vous disposez à la fois de la nouvelle clé AWS KMS et de la clé actuelle. Utilisez la clé application-current pour chiffrer les données. Lorsqu'AWS KMS déchiffre les données, la clé AWS KMS est automatiquement résolue :

    acbc32cf8f6f:~ $$ aws kms list-aliases --output text | grep applicationALIASES    arn:aws:kms:eu-west-1:123456789012:alias/application-20180606    alias/application-20180606    0987dcba-09fe-87dc-65ba-ab0987654321
    ALIASES    arn:aws:kms:eu-west-1:123456789012:alias/application-current     alias/application-current     9bf76697-5b41-4caf-9fe1-e23bbe20f858

    Pour conserver une trace de la date de rotation de la clé ou pour annuler les modifications apportées, conservez la clé AWS KMS actuelle en tant que sauvegarde.
    Remarque : si vous disposez d'une clé existante, copiez cette stratégie dans la clé application-current.

  6. Ouvrez la console AWS KMS, puis choisissez Clés gérées par le client.

  7. Dans Alias, choisissez la clé actuelle.

  8. Dans le champ Stratégie de clé, choisissez Passer à la vue de stratégie.

  9. Copiez la stratégie actuelle, puis choisissez Clés gérées par le client.

  10. Dans Alias, choisissez application-current.

  11. Dans Stratégie de clé, choisissez Modifier. Supprimez la stratégie pour application-current et collez la stratégie actuelle. Choisissez Enregistrer les modifications.

Informations connexes

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