

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.

# Trabajando con AWS KMS keys
<a name="kms-keys"></a>

Una AWS KMS key hace referencia a una clave lógica que puede hacer referencia a una o más claves de respaldo del módulo de seguridad de hardware (HSM) (HBKs). En este tema se explica cómo crear una clave de KMS, importar material de claves, y cómo habilitar, deshabilitar, rotar y eliminar claves de KMS.

**nota**  
AWS KMS está sustituyendo el término *clave maestra del cliente (CMK)* por clave *KMS*. *AWS KMS key* El concepto no ha cambiado. Para evitar cambios importantes, AWS KMS mantiene algunas variaciones de este término.

En este capítulo se trata el ciclo de vida de una clave KMS desde su creación hasta su eliminación, como se muestra en la siguiente imagen.

![\[Ciclo de vida de claves de KMS.\]](http://docs.aws.amazon.com/es_es/kms/latest/cryptographic-details/images/keystate.png)


**Topics**
+ [¿Llamando CreateKey](create-key.md)
+ [Importar material de claves](importing-key-material.md)
+ [Habilitación y desactivación de claves de](enable-and-disable-key.md)
+ [Eliminación de claves de](key-deletion.md)
+ [Rotar el material de claves](rotate-customer-master-key.md)

# ¿Llamando CreateKey
<a name="create-key"></a>

 AWS KMS key Se genera una como resultado de una llamada a la [https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html)API.

A continuación se presenta un subconjunto [ de la sintaxis de la solicitud de `CreateKey`](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html#API_CreateKey_RequestSyntax).

```
{
  "Description": "string",
  "KeySpec": "string",
  "KeyUsage": "string",
  "Origin": "string";
  "Policy": "string"
}
```

La solicitud acepta los siguientes datos en formato JSON.

**Description (Descripción)**  
(Opcional) Descripción de la clave. Recomendamos elegir una descripción que permita decidir si la clave es adecuada para una tarea.

**KeySpec**  
Especifica el tipo de KMS que se va a crear. El valor predeterminado, SYMMETRIC\$1DEFAULT, crea claves KMS de cifrado simétricas. Este parámetro es opcional para las claves de cifrado simétricas y obligatorio para todas las demás especificaciones de claves.

**KeyUsage**  
Especifica el uso de las claves. Los valores válidos son `ENCRYPT_DECRYPT`, `SIGN_VERIFY` o `GENERATE_VERIFY_MAC`. El valor predeterminado es `ENCRYPT_DECRYPT`. Este parámetro es opcional para las claves de cifrado simétricas y obligatorio para todas las demás especificaciones de claves.

** Origen**  
(Opcional) Especifica el origen del material de claves para la clave de KMS. El valor predeterminado es`AWS_KMS`, lo que indica que AWS KMS genera y administra el material clave de la clave KMS. Otros valores válidos son: `EXTERNAL` el que representa una clave de KMS creada sin material de claves para el [material de claves importado](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) y el `AWS_CLOUDHSM` que crea una clave de KMS en un [almacén de claves personalizado](https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html) respaldado por un AWS CloudHSM clúster que usted controla.

**Política**  
(Opcional) Política para adjuntar a la clave. Si se omite la política, la clave se crea con la política predeterminada (siguiente) que permite a la cuenta raíz y a las entidades principales de IAM con permisos de AWS KMS administrarla.

Para obtener información detallada sobre la política, consulte [Políticas de claves en AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) y [Política de claves predeterminada](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-default.html) en la *Guía para desarrolladores de AWS Key Management Service *.

La solicitud de `CreateKey` devuelve una [respuesta](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html#API_CreateKey_ResponseSyntax) que incluye un ARN de claves.

```
arn:<partition>:kms:<region>:<account-id>:key/<key-id>
```

Si el `Origin` es `AWS_KMS`, después de crear el ARN, se realiza una solicitud a un HSM de AWS KMS a través de una sesión autenticada para aprovisionar una clave de respaldo (HBK) del módulo de seguridad de hardware (HSM). La HBK es una clave de 256 bits que se encuentra asociada a este ID de clave de la clave de KMS. Solo se puede generar en un HSM y se ha diseñado para no exportarse nunca fuera del límite de HSM en texto sin cifrar. La HBK se cifra en la clave de dominio actual, DK0. Estos cifrados se HBKs denominan identificadores de clave cifrados (EKTs). Si bien se HSMs pueden configurar para utilizar diversos métodos de empaquetado de claves, la implementación actual utiliza el AES-256 en el modo contador de Galois (GCM), un esquema de cifrado autenticado. Este modo de cifrado autenticado permite proteger metadatos de token de clave exportados de texto sin cifrar.

Estilísticamente, esto se representa como:

```
EKT = Encrypt(DK0, HBK)
```

Se proporcionan dos formas fundamentales de protección a las claves de KMS y a las siguientes HBKs: las políticas de autorización establecidas en las claves de KMS y las protecciones criptográficas de las claves asociadas. HBKs En las secciones restantes se describen las protecciones criptográficas y la seguridad de las funciones de administración incluidas. AWS KMS

Además del ARN, puede crear un nombre fácil de utilizar y asociarlo con la clave de KMS mediante la creación de un *alias* para la clave. Una vez asociado un alias a una clave de KMS, se puede utilizar el alias para identificar la clave de KMS en las operaciones de cifrado. Para más información detallada, consulte [Uso de alias](https://docs.aws.amazon.com/kms/latest/developerguide/kms-alias.html) en la *Guía para desarrolladores de AWS Key Management Service *.

El uso de claves KMS está relacionado con varios niveles de autorización. AWS KMS permite políticas de autorización independientes entre el contenido cifrado y la clave KMS. Por ejemplo, un objeto de Amazon Simple Storage Service (Amazon S3) con cifrado doble de AWS KMS hereda la política del bucket de Amazon S3. Sin embargo, la política de acceso de la clave de KMS determina el acceso a la clave de cifrado necesaria. Para obtener más información acerca de la autorización de claves de KMS, consulte [Autenticación y control de acceso de AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/control-access.html) en la *Guía para desarrolladores de AWS Key Management Service *.

# Importar material de claves
<a name="importing-key-material"></a>

AWS KMS proporciona un mecanismo para importar el material criptográfico utilizado en un HBK. Como se describe en[¿Llamando CreateKey](create-key.md), cuando el CreateKey comando se utiliza con el valor `Origin` establecido en`EXTERNAL`, se crea una clave KMS lógica que no contiene ningún HBK subyacente. El material criptográfico debe importarse mediante la llamada a la API [https://docs.aws.amazon.com/kms/latest/APIReference/API_ImportKeyMaterial.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_ImportKeyMaterial.html). Puede utilizar esta característica para controlar la creación de claves y la durabilidad del material criptográfico. Si utiliza esta característica, recomendamos que tenga cuidado con la manipulación y durabilidad de estas claves en su entorno. Para obtener detalles completos y recomendaciones sobre la importación de material de claves, consulte [Importar material de claves](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) en la *Guía para desarrolladores de AWS Key Management Service *.

## ¿Llamando ImportKeyMaterial
<a name="importkeymaterial"></a>

La solicitud `ImportKeyMaterial` importa el material criptográfico necesario para la HBK. El material criptográfico debe ser una clave simétrica de 256 bits. Debe cifrarse con el algoritmo especificado en `WrappingAlgorithm` bajo la clave pública devuelta de una solicitud [https://docs.aws.amazon.com/kms/latest/APIReference/API_GetParametersForImport.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_GetParametersForImport.html) reciente.

[Una solicitud de `ImportKeyMaterial`](https://docs.aws.amazon.com/kms/latest/APIReference/API_ImportKeyMaterial.html#API_ImportKeyMaterial_RequestSyntax) adopta los siguientes argumentos.

```
{
  "EncryptedKeyMaterial": blob,
  "ExpirationModel": "string",
  "ImportToken": blob,
  "KeyId": "string",
  "ValidTo": number
}
```

**EncryptedKeyMaterial**  
El material de claves cifradas importado con la clave pública devuelta en una solicitud de `GetParametersForImport` mediante el algoritmo de encapsulamiento especificado en esa solicitud. 

**ExpirationModel**  
Especifica si vence el material de claves. Cuando este valor es `KEY_MATERIAL_EXPIRES`, el parámetro `ValidTo` debe contener una fecha de vencimiento. Cuando este valor es `KEY_MATERIAL_DOES_NOT_EXPIRE`, no incluya el parámetro `ValidTo`. Los valores válidos son `"KEY_MATERIAL_EXPIRES"` y `"KEY_MATERIAL_DOES_NOT_EXPIRE"`.

**ImportToken**  
El token de importación devuelto por la misma solicitud de `GetParametersForImport`que proporcionó la clave pública.

**KeyId**  
La clave de KMS que se asociará al material de claves importado. El `Origin` de la clave de KMS debe ser `EXTERNAL`.  
Puede eliminar y volver a importar el *mismo* material de claves importado en la clave de KMS especificada, pero no puede importar ni asociar la clave de KMS a ningún otro material de claves.

**ValidTo**  
(Opcional) La hora a la que vence el material de claves importado. Cuando vence el material de claves, AWS KMS lo elimina y la clave de KMS ya no se puede utilizar. Este parámetro es obligatorio cuando el valor de `ExpirationModel` es `KEY_MATERIAL_EXPIRES`. Caso contrario, es inválido.

Cuando la solicitud se realiza correctamente, la clave KMS está disponible para su uso AWS KMS hasta la fecha de caducidad especificada, si se proporciona alguna. Cuando el material clave importado caduca, el EKT se elimina de la capa de AWS KMS almacenamiento. 

# Habilitación y desactivación de claves de
<a name="enable-and-disable-key"></a>

Desactivar una clave de KMS impide que se la utilice en operaciones criptográficas. Suspende la capacidad de usar todo lo HBKs que esté asociado a la clave KMS. Al habilitar, se restaura el uso de la clave KMS HBKs y de la clave KMS. [Habilitar](https://docs.aws.amazon.com/kms/latest/APIReference/API_Enable.html) y [deshabilitar](https://docs.aws.amazon.com/kms/latest/APIReference/API_Disable.html) son solicitudes simples que solo toman el ID de clave o el ARN de clave de la clave de KMS.

# Eliminación de claves de
<a name="key-deletion"></a>

Los usuarios autorizados pueden usar la [https://docs.aws.amazon.com/kms/latest/APIReference/API_ScheduleKeyDeletion.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_ScheduleKeyDeletion.html)API para programar la eliminación de una clave de KMS y de todas las claves asociadas HBKs. Se trata de una operación intrínsecamente destructiva, por lo que debe tener cuidado al eliminar claves de AWS KMS ella. AWS KMS impone un tiempo de espera mínimo de siete días al eliminar las claves de KMS. Durante el periodo de espera, la clave se coloca en el estado deshabilitado con un estado de clave de **Eliminación pendiente**. Se producirán errores en todas las llamadas para utilizar la clave en operaciones criptográficas. ScheduleKeyDeletion toma los siguientes argumentos.

```
{
  "KeyId": "string",
  "PendingWindowInDays": number
}
```

**KeyId**  
El identificador único de la clave de KMS a eliminar. Para especificar este valor, utilice el ID de clave único o el ARN de clave de la clave de KMS. 

** PendingWindowInDays**  
(Opcional) El periodo de espera, en número de días. Este valor es opcional. El intervalo es de 7 a 30 días y el valor predeterminado es de 30 días. Una vez finalizado el período de espera, AWS KMS elimina la clave KMS y todas las claves asociadas HBKs.

# Rotar el material de claves
<a name="rotate-customer-master-key"></a>

Los usuarios autorizados pueden habilitar la rotación anual automática de las claves de KMS administradas por el cliente. Las Claves administradas por AWS siempre rotan anualmente. 

Cuando se rota una clave de KMS, se crea una HBK nueva y se marca como la versión actual del material de claves para todas las solicitudes nuevas de cifrado. Todas las versiones anteriores de HBK permanecen disponibles para su uso a perpetuidad para descifrar cualquier texto cifrado que se haya cifrado con esta versión de HBK. Como AWS KMS no almacena ningún texto cifrado con una clave KMS, los textos cifrados con un HBK antiguo y rotado requieren que HBK lo descifre. Puede utilizar la API de [https://docs.aws.amazon.com/kms/latest/APIReference/API_ReEncrypt.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_ReEncrypt.html) para volver a cifrar cualquier texto cifrado con la nueva HBK para la clave de KMS o con una clave de KMS diferente sin exponer el texto sin formato.

Para obtener información acerca de habilitar y deshabilitar la rotación de claves, consulte [Rotación de claves de AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html) en la *Guía para desarrolladores de AWS Key Management Service *.