Rotar claves maestras de cliente - AWS Key Management Service

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Rotar claves maestras de cliente

Las prácticas criptográficas recomendadas desaconsejan el uso generalizado de claves de cifrado. Para crear nuevo material criptográfico para las claves maestras del cliente (CMK) de AWS Key Management Service (AWS KMS), puede crear nuevas CMK y, a continuación, cambiar sus aplicaciones o alias para que utilicen estas nuevas CMK. También puede habilitar la rotación automática de claves para una CMK administrada por el cliente existente.

Cuando habilitarotación automática de clavesPara una CMK administrada por el cliente, AWS KMS genera nuevo material criptográfico para la CMK cada año. AWS KMS también guarda el material criptográfico anterior de la CMK a perpetuidad para que se pueda usar para descifrar los datos que ha cifrado. AWS KMS no elimina ningún material de clave girado hasta queEliminar la CMK de.

La rotación de claves cambia únicamente la clave de backup, que es el material criptográfico usado en las operaciones de cifrado. La CMK es el mismo recurso lógico, independientemente de si la clave de backup cambie o no o de cuántas veces cambie. Las propiedades de la CMK no cambian, tal y como se muestra en la siguiente imagen.

La rotación automática de claves tiene las siguientes ventajas:

  • Las propiedades de la CMK, incluido su ID de clave, ARN de clave, región, políticas y permisos, no cambian cuando se rota la clave.

  • No necesita cambiar las aplicaciones ni los alias que hacen referencia al ID o ARN de la CMK.

  • Después de habilitar la rotación de claves, AWS KMS rota la CMK automáticamente cada año. No necesita recordar ni programar la actualización.

Sin embargo, la rotación automática de claves no afecta a los datos que la CMK protege; Es decir, no rota las claves de datos que ha generado la CMK ni vuelve a cifrar los datos protegidos por la CMK. Además, no mitiga el efecto de una clave de datos comprometida.

Podría optar por crear una nueva CMK y utilizarla en lugar de la CMK original. Esto tiene el mismo efecto que rotar el material de claves de una CMK existente, así que a menudo se considera una rotación manual de la clave. La rotación manual es una buena opción si desea controlar la programación de rotación de claves. También proporciona una manera de rotar las CMK que no cumplen los requisitos para la rotación automática de claves, incluidas las CMK asimétricas, las CMK en almacenes de claves personalizados y las CMK con material de claves importado.

Rotación de claves y precios

Se podrían aplicar cargos mensuales adicionales por la rotación de CMK administradas por el cliente. Para obtener información detallada, consulte Precios de AWS Key Management Service. Para obtener información detallada acerca de las claves de backup y la rotación de, consulteDetalles criptográficos del AWS Key Management Service.

Funcionamiento de la rotación automática de claves

La rotación de claves en AWS KMS es una práctica criptográfica recomendada que se ha diseñado para que sea transparente y fácil de usar. AWS KMS admite la rotación automática de claves opcional solo paraCMK administradas por el cliente.

  • Administración de claves de backup. AWS KMS conserva todas las claves de backup de una CMK, aunque la rotación de claves está deshabilitada. Las claves de backup solo se eliminan cuando se elimina la CMK. Cuando utiliza una CMK para el cifrado, AWS KMS usa la clave de backup actual. Cuando utiliza la CMK para el descifrado, AWS KMS usa la clave de backup que se utilizó para el cifrado.

  • Habilitar y deshabilitar la rotación de claves. La rotación automática de claves está desactivada de forma predeterminada en las CMK administradas por el cliente. Cuando habilita (o vuelve a habilitar) la rotación de claves, AWS KMS rota automáticamente la CMK 365 días después de la fecha de habilitación y, posteriormente, cada 365 días.

  • CMK deshabilitadas. Mientras una CMK está deshabilitada, AWS KMS no la rota. Sin embargo, el estado de rotación de clave no cambia y no puede cambiarlo mientras la CMK esté deshabilitada. Cuando la CMK se vuelve a habilitar, si la clave de backup tiene una antigüedad superior a 365 días, AWS KMS la rota de forma inmediata y, posteriormente, cada 365 días. Si la clave de backup tiene una antigüedad inferior a 365 días, AWS KMS reanuda la programación original de rotación de claves.

  • CMK pendientes de eliminación. Mientras una CMK está pendiente de eliminación, AWS KMS no la rota. El estado de rotación de clave se establece en false y no puede cambiarla mientras su eliminación está pendiente. Si se cancela la eliminación, se restaura el estado de rotación de clave anterior. Si la clave de backup tiene una antigüedad superior a 365 días, AWS KMS la rota de forma inmediata y, posteriormente, cada 365 días. Si la clave de backup tiene una antigüedad inferior a 365 días, AWS KMS reanuda la programación original de rotación de claves.

  • CMK administradas por AWS. No puede administrar la rotación de claves paraCMK administradas por AWS. AWS KMS rota automáticamente las CMK administradas por AWS cada tres años (1095 días).

  • CMK propiedad de AWS. No puede administrar la rotación de claves para las CMK propiedad de AWS. Larotación de clavesPara una CMK propiedad de AWS se determina según el servicio de AWS que crea y administra la CMK. Para obtener más información, consulte laCifrado en reposoen la guía del usuario o en la guía del desarrollador del servicio.

  • Servicios de AWS. Puede habilitar la rotación automática de teclas en laCMK administradas por el clienteque utiliza para el cifrado del lado del servidor en los servicios de AWS. La rotación anual es transparente y compatible con los servicios de AWS.

  • Monitorización de la rotación de claves. Cuando AWS KMS gira automáticamente el material clave para unCMK administrada por AWSo bienCMK administrada por el cliente, escribe unKMS CMK Rotationevent aAmazon CloudWatch Eventsy aRotateKey (evento)a su registro de AWS CloudTrail. Puede utilizar estos registros para comprobar que la CMK se ha rotado.

  • Tipos de CMK no compatibles. La rotación automática de claves no es compatible en los siguientes tipos de CMK, pero puede rotar estas CMK de forma manual.

Cómo habilitar y deshabilitar la rotación automática de claves

Puede utilizar la consola de AWS KMS o la API de AWS KMS para habilitar y deshabilitar la rotación automática de claves y ver el estado de rotación de cualquier CMK administrada por el cliente.

Cuando habilita la rotación automática de claves, AWS KMS rota la CMK 365 días después de la fecha de habilitación y, posteriormente, cada 365 días.

Habilitar y deshabilitar la rotación de claves (consola)

  1. Inicie sesión en la consola de administración de AWS y abra la consola de AWS Key Management Service (AWS KMS) en https://console.aws.amazon.com/kms.

  2. Para cambiar la región de AWS, utilice el Region selector (Selector de regiones) en la esquina superior derecha de la página.

  3. En el panel de navegación, elija Customer managed keys (Claves administradas por el cliente). (No puede habilitar o deshabilitar la rotación de claves administradas por AWS. Estas rotan cada tres años de forma automática.)

  4. Elija el alias o el ID de clave de una CMK.

  5. Seleccione la pestaña Key Rotation (Rotación de teclas).

    LaRotación de clavessolo aparece en la página de detalles de las CMK simétricas con el material clave generado por AWS KMS (la pestañaOrigenesAWS_KMS). No puede rotar de forma automática las CMK asimétricas, las CMK con material de claves importado, o CMK en los almacenes de claves personalizados. Sin embargo, puede rotarlas manualmente.

  6. Seleccione o desmarque la casilla de verificación Automatically rotate this CMK every year (Rotar esta CMK cada año de forma automática).

    nota

    Si una CMK está deshabilitada o pendiente de eliminación, la casilla de verificación Automatically rotate this CMK every year (Rotar esta CMK cada año de forma automática) estará desmarcada y no podrá cambiarla. El estado de rotación de claves se restaura al volver a habilitar la CMK o al cancelar la eliminación. Para más detalles, consulte Funcionamiento de la rotación automática de claves y Estado clave: Efecto en su CMK.

  7. Elija Save (Guardar).

Habilitar y deshabilitar la rotación de claves (AWS KMS API)

Puede utilizar la herramienta deAWS Key Management Service (AWS KMS)Para habilitar y deshabilitar la rotación automática de claves y ver el estado actual de rotación de cualquier CMK administrada por el cliente. En estos ejemplos se utiliza laInterfaz de línea de comandos de AWS (AWS CLI), pero puede usar cualquier lenguaje de programación admitido.

La operación EnableKeyRotation activa la rotación automática de claves para la CMK especificada. La operación DisableKeyRotation la deshabilita. Para identificar la CMK en estas operaciones, utilice el ID de la clave o el ARN de la clave. De forma predeterminada, la rotación de claves está desactivada para las CMK administradas por el cliente.

En el siguiente ejemplo, se activa la rotación de claves en la CMK simétrica especificada y se utiliza la operación GetKeyRotationStatus para ver el resultado. A continuación, se desactiva la rotación de claves y, de nuevo, se utiliza GetKeyRotationStatus para ver el cambio.

$ aws kms enable-key-rotation --key-id 1234abcd-12ab-34cd-56ef-1234567890ab $ aws kms get-key-rotation-status --key-id 1234abcd-12ab-34cd-56ef-1234567890ab { "KeyRotationEnabled": true } $ aws kms disable-key-rotation --key-id 1234abcd-12ab-34cd-56ef-1234567890ab $ aws kms get-key-rotation-status --key-id 1234abcd-12ab-34cd-56ef-1234567890ab { "KeyRotationEnabled": false }

Rotar manualmente las claves

Es posible que le interese crear una nueva CMK y utilizarla en sustitución de una CMK actual en lugar de activar la rotación automática de claves. Cuando la nueva CMK tiene diferente material criptográfico que la CMK actual, el uso de la nueva CMK tiene el mismo efecto que cambiar la clave de backup de una CMK existente. El proceso de sustitución de una CMK por otra se denomina rotación manual de claves.

Tal vez prefiera rotar las claves manualmente para poder controlar la frecuencia de rotación. También es una buena solución para las CMK que no cumplen los requisitos para la rotación automática de claves, como las CMK asimétricas, las CMK en almacenes de claves personalizados y las CMK con material de claves importado.

nota

Cuando empiece a utilizar la nueva CMK, asegúrese de mantener la CMK original activada para que AWS KMS pueda descifrar los datos que cifró la CMK original. Cuando se descifran datos, KMS identifica la CMK que se utilizó para cifrar los datos y utiliza la misma CMK para descifrarlos. Siempre que mantenga la CMK original y la CMK nueva habilitadas, AWS KMS podrá descifrar los datos que se cifraron con alguna de estas CMK.

Como la nueva CMK es un recurso diferente de la CMK actual, tiene un ID de clave y un ARN diferentes. Cuando cambia las CMK, debe actualizar las referencias al ID o al ARN de la CMK en sus aplicaciones. Los alias, que asocian un nombre descriptivo a una CMK, facilitarán este proceso. Utilice un alias para hacer referencia a una CMK en sus aplicaciones. Después, cuando desee cambiar la CMK que utiliza la aplicación, cambie la CMK de destino del alias.

Para actualizar la CMK de destino de un alias, utiliceUpdateAliasLa operación en la API de AWS KMS. Por ejemplo, este comando actualiza el alias TestCMK para apuntar hacia una nueva CMK. Como la operación no devuelve ningún resultado, en el ejemplo se utiliza la propiedadListAliasesPara mostrar que el alias está asociado ahora a una CMK diferente y la CMK deLastUpdatedDatese actualiza.

$ aws kms list-aliases { "Aliases": [ { "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/TestCMK", "AliasName": "alias/TestCMK", "TargetKeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "CreationDate": 1521097200.123, "LastUpdatedDate": 1521097200.123 }, ] } $ aws kms update-alias --alias-name alias/TestCMK --target-key-id 0987dcba-09fe-87dc-65ba-ab0987654321 $ aws kms list-aliases { "Aliases": [ { "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/TestCMK", "AliasName": "alias/TestCMK", "TargetKeyId": "0987dcba-09fe-87dc-65ba-ab0987654321", "CreationDate": 1521097200.123, "LastUpdatedDate": 1604958290.722 }, ] }