Crear claves - 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.

Crear claves

Puede crear una claves maestras de cliente simétricas o asimétricas (CMK) en la AWS Management Console o utilizar la operación CreateKey. Durante este proceso, usted determina la configuración criptográfica de su CMK y el origen de su material de clave. No puede cambiar estas propiedades después de que se cree la CMK. También establece la política de claves para la CMK, que puede cambiar en cualquier momento.

Si crea una CMK para cifrar los datos que almacena o administra en unaAWS, cree una CMK simétrica.AWSque se integran conAWS KMSUtilice CMK simétricas para cifrar sus datos. Estos servicios no admiten cifrado con CMK asimétricas. Para obtener ayuda para decidir qué tipo de CMK crear, consulte Cómo elegir la configuración de la CMK.

Al crear una CMK en la carpetaAWS KMS, debe darle un alias (nombre descriptivo). LaCreateKeyLa operación de no crea un alias para la nueva CMK. Para obtener información detallada sobre los alias enAWS KMS, consulteUso de alias.

Más información:

Permisos para crear CMK

Para crear un CMK en la consola o mediante las API, debe tener el permiso siguiente en una directiva de IAM. Siempre que sea posible, useClaves de condición depara limitar los permisos. Para obtener un ejemplo de una política de IAM para los principales que crean claves, consultePermitir a un usuario crear CMK.

nota

Tenga cuidado al dar permiso a los principales para administrar etiquetas y alias. Cambiar una etiqueta o alias puede permitir o denegar el permiso a CMK. Para obtener más información, consulte Usar ABAC paraAWS KMS.

LaKMS:PutKeyPolicyno es necesario para crear el CMK. Lakms:CreateKeyincluye permiso para establecer la directiva de clave inicial. Pero debe agregar este permiso a la directiva de clave mientras crea el CMK para asegurarse de que puede controlar el acceso a la CMK. La alternativa es usar elByPassLockoutSafetyCheck, que no se recomienda.

Crear CMK simétricas

Cuando crea CMK simétricas en la AWS Management Console o mediante la API de AWS KMS. El cifrado de clave simétrica utiliza la misma clave para cifrar y descifrar datos.

Puede utilizar la AWS Management Console para crear claves maestras del cliente (CMK).

  1. Inicie sesión en la AWS Management Console 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).

  4. Elija Create key.

  5. Para crear una CMK simétrica, para Key type (Tipo de clave) seleccione Symmetric (Simétrica).

    Para obtener información acerca de cómo crear una CMK asimétrica en la consola de AWS KMS, consulte Creación de CMK asimétricas (consola).

  6. Elija Next (Siguiente).

  7. Escriba unaliasPara la CMK. El nombre del alias no puede empezar por aws/. Laaws/El prefijo está reservado por Amazon Web Services para representarAWSAdministrado por CMK en su cuenta.

    nota

    Agregar, eliminar o actualizar un alias puede permitir o denegar el permiso a CMK. Para más detalles, consulte Usar ABAC paraAWS KMS y Uso de alias para controlar el acceso a las CMK.

    Un alias es un nombre de visualización que puede usar para identificar a una CMK. Le recomendamos que elija un alias que indique el tipo de datos que piensa proteger o la aplicación que piensa usar con la CMK.

    Los alias son necesarios para crear una CMK en la AWS Management Console. Se emplean en la operación CreateKey.

  8. (Opcional) Escriba una descripción para la CMK.

    Puede añadir una descripción ahora o actualizarla en cualquier momento, a menos que laestado claveesPending DeletionorPending Replica Deletion. Para añadir, cambiar o eliminar la descripción de una CMK administrada por el cliente existente,editar la descripciónen laAWS Management Consoleo utilice elUpdateKeyDescription.

  9. Elija Next (Siguiente).

  10. (Opcional) Escriba una clave de etiqueta y un valor de etiqueta opcional. Para agregar más de una etiqueta a la CMK, elija Add tag.

    nota

    Etiquetar o quitar las etiquetas de CMK puede permitir o denegar permiso a CMK. Para más detalles, consulte Usar ABAC paraAWS KMS y Uso de etiquetas para controlar el acceso a CMK.

    Cuando se agregan etiquetas a los recursos de AWS, AWS genera un informe de asignación de costos con el uso y los costos agregados por etiquetas. Las etiquetas también se pueden utilizar para controlar el acceso a una CMK. Para obtener información acerca del etiquetado de CMK, consulteEtiquetar clavesyUsar ABAC paraAWS KMS.

  11. Elija Next (Siguiente).

  12. Seleccione los usuarios de IAM y roles de que pueden administrar la CMK.

    nota

    Las políticas de IAM pueden otorgar permisos para administrar la CMK a otros usuarios y roles de IAM.

  13. (Opcional) Para evitar que los usuarios y roles de IAM seleccionados eliminen este CMK, en el cuadroEliminar clavesEn la parte inferior de la página, desactive la casillaPermitir a los administradores de claves eliminar esta clave.

  14. Elija Next (Siguiente).

  15. Seleccione los usuarios de IAM y roles de que pueden usar la CMK paraoperaciones criptográficas.

    nota

    La Cuenta de AWS (usuario raíz) tiene permisos completos de forma predeterminada. En consecuencia, las políticas de IAM también pueden conceder permisos a los usuarios y roles para usar la CMK en operaciones criptográficas.

  16. (Opcional) Puede permitir que otros Cuentas de AWS Para usar esta CMK en operaciones criptográficas. Para ello, en laOtros Cuentas de AWS En la parte inferior de la página, elijaAdd another Cuenta de AWS e introduzca la Cuenta de AWS número de identificación de una cuenta externa. Para añadir varias cuentas externas, repita este paso.

    nota

    Para permitir que las entidades principales de las cuentas externas usen la CMK, los administradores de la cuenta externa también deben crear las políticas de IAM que proporcionan estos permisos. Para obtener más información, consulte Permitir a los usuarios de otras cuentas utilizar una CMK .

  17. Elija Next (Siguiente).

  18. Revise la configuración de clave que eligió. Aún puedes volver atrás y cambiar todos los ajustes.

  19. Elija Finish para crear la CMK.

Puede utilizar la operación CreateKey para crear una nueva clave maestra de cliente (CMK) simétrica. En estos ejemplos, se utiliza la AWS Command Line Interface (AWS CLI), pero puede usar cualquier lenguaje de programación admitido.

Esta operación no tiene parámetros obligatorios. Sin embargo, es posible que también desee utilizar el parámetro Policy para especificar una política de claves. Puede cambiar la política de claves (PutKeyPolicy) y añadir elementos opcionales como, por ejemplo, una descripción y etiquetas en cualquier momento. Además, si está crea una CMK para el material de claves importado o una CMK en un almacén de claves personalizado, el parámetro Origin es obligatorio.

LaCreateKeyno le permite especificar un alias, pero puede usar el comandoCreateAliaspara crear un alias para su nuevo CMK.

A continuación se muestra un ejemplo de una llamada a la operación CreateKey sin parámetros. Este comando utiliza todos los valores predeterminados. Crea una CMK simétrica para cifrar y descifrar con material de claves generado por AWS KMS.

$ aws kms create-key { "KeyMetadata": { "Origin": "AWS_KMS", "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "Description": "", "KeyManager": "CUSTOMER", "Enabled": true, "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", "KeyUsage": "ENCRYPT_DECRYPT", "KeyState": "Enabled", "CreationDate": 1502910355.475, "Arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "AWSAccountId": "111122223333", "MultiRegion": false "EncryptionAlgorithms": [ "SYMMETRIC_DEFAULT" ], } }

Si no especifica una política de claves para su nueva CMK, la política de claves predeterminada que aplica CreateKey es diferente de la política de claves predeterminada que aplica la consola cuando se utiliza para crear una nueva CMK.

Por ejemplo, esta llamada a la operación GetKeyPolicy devuelve la política de claves que aplica CreateKey. Le da el Cuenta de AWS Acceso a la CMK y le permite crearAWS Identity and Access Management(IAM) para la CMK. Para obtener información detallada sobre las políticas de IAM y las políticas de claves para CMK, consulteAutenticación y control de acceso de AWS KMS

$ aws kms get-key-policy --key-id 1234abcd-12ab-34cd-56ef-1234567890ab --policy-name default --output text { "Version" : "2012-10-17", "Id" : "key-default-1", "Statement" : [ { "Sid" : "Enable IAM policies", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::111122223333:root" }, "Action" : "kms:*", "Resource" : "*" } ] }

Crear CMK asimétricas

Puede crear CMK asimétricas en la AWS Management Console o utilizando la API de AWS KMS. Una CMK asimétrica representa un par de claves pública y privada que se puede utilizar para el cifrado o la firma. La clave privada se mantiene enAWS KMS. Para descargar la clave pública para utilizarla fuera deAWS KMS, consulteDescargar claves públicas.

Al crear una CMK para cifrar datos en unaAWSService:Crear una CMK simétrica.AWSLos servicios de no admiten CMK asimétricas para el cifrado. Para obtener ayuda para decidir si crear una CMK simétrica o asimétrica, consulte Cómo seleccionar la configuración de su CMK.

Puede utilizar la AWS Management Console para crear claves maestras del cliente (CMK) asimétricas. Cada CMK asimétrica representa un par de claves públicas y privadas.

  1. Inicie sesión en la AWS Management Console 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).

  4. Elija Create key.

  5. Para crear una CMK asimétrica, en Tipo de clave, seleccione Asymmetric (Asimétrico).

    Para obtener información acerca de cómo crear una CMK simétrica en la consola de AWS KMS, consulte Creación de CMK simétricas (consola).

  6. Para crear una CMK asimétrica para el cifrado de claves públicas, en Uso de claves, elija Encrypt and decrypt (Cifrar y descifrar). O bien, para crear una CMK asimétrica para firmar mensajes y verificar firmas, en Uso de claves, elija Sign and verify (Firmar y verificar).

    Para obtener ayuda sobre cómo elegir un valor de uso de clave, consulte Seleccionar el uso de la clave.

  7. Seleccione una especificación (Key spec [Especificación de clave]) para su CMK asimétrica.

    A menudo, la especificación de clave que seleccione está determinada por requisitos normativos, de seguridad o empresariales. También puede estar influenciado por el tamaño de los mensajes que necesita cifrar o firmar. En general, las claves de cifrado más largas son más resistentes a los ataques de fuerza bruta.

    Para obtener ayuda para elegir una especificación de clave, consulte Seleccionar la especificación de clave.

  8. Elija Next (Siguiente).

  9. Escriba unaliasPara la CMK. El nombre del alias no puede empezar por aws/. Laaws/El prefijo está reservado por Amazon Web Services para representarAWSAdministrado por CMK en su cuenta.

    Un registroaliasEs un nombre sencillo que puede usar para identificar a una CMK en la consola y en algunasAWS KMSAPIs. Le recomendamos que elija un alias que indique el tipo de datos que piensa proteger o la aplicación que piensa usar con la CMK.

    Los alias son necesarios para crear una CMK en la AWS Management Console. No puede especificar un alias cuando utiliza la propiedadCreateKeyLa operación de, pero puede usar la consola de o laCreateAliasPara crear un alias para una CMK existente. Para obtener más información, consulte Uso de alias.

  10. (Opcional) Escriba una descripción para la CMK.

    Puede añadir una descripción ahora o actualizarla en cualquier momento, a menos que laestado claveesPending DeletionorPending Replica Deletion. Para añadir, cambiar o eliminar la descripción de una CMK administrada por el cliente existente,editar la descripciónen laAWS Management Consoleo utilice elUpdateKeyDescription.

  11. (Opcional) Escriba una clave de etiqueta y un valor de etiqueta opcional. Para agregar más de una etiqueta a la CMK, elija Add tag.

    Cuando se agregan etiquetas a los recursos de AWS, AWS genera un informe de asignación de costos con el uso y los costos agregados por etiquetas. Las etiquetas también se pueden utilizar para controlar el acceso a una CMK. Para obtener información acerca del etiquetado de CMK, consulteEtiquetar clavesyUsar ABAC paraAWS KMS.

  12. Elija Next (Siguiente).

  13. Seleccione los usuarios de IAM y roles de que pueden administrar la CMK.

    nota

    Las políticas de IAM pueden otorgar permisos para administrar la CMK a otros usuarios y roles de IAM.

  14. (Opcional) Para evitar que los usuarios y roles de IAM seleccionados eliminen este CMK, en el cuadroEliminar clavesEn la parte inferior de la página, desactive la casillaPermitir a los administradores de claves eliminar esta clave.

  15. Elija Next (Siguiente).

  16. Seleccione los usuarios de IAM y roles de que pueden usar la CMK paraoperaciones criptográficas.

    nota

    La Cuenta de AWS (usuario raíz) tiene permisos completos de forma predeterminada. En consecuencia, las políticas de IAM también pueden conceder permisos a los usuarios y roles para usar la CMK en operaciones criptográficas.

  17. (Opcional) Puede permitir que otros Cuentas de AWS Para usar esta CMK en operaciones criptográficas. Para ello, en laOtros Cuentas de AWS En la parte inferior de la página, elijaAdd another Cuenta de AWS e introduzca la Cuenta de AWS número de identificación de una cuenta externa. Para añadir varias cuentas externas, repita este paso.

    nota

    Para permitir que las entidades principales de las cuentas externas usen la CMK, los administradores de la cuenta externa también deben crear las políticas de IAM que proporcionan estos permisos. Para obtener más información, consulte Permitir a los usuarios de otras cuentas utilizar una CMK .

  18. Elija Next (Siguiente).

  19. Revise la configuración de clave que eligió. Aún puedes volver atrás y cambiar todos los ajustes.

  20. Elija Finish para crear la CMK.

Puede utilizar la operación CreateKey para crear una clave maestra de cliente (CMK) simétrica. En estos ejemplos, se utiliza la AWS Command Line Interface (AWS CLI), pero puede usar cualquier lenguaje de programación admitido.

Al crear una CMK asimétrica, debe especificar el parámetro CustomerMasterKeySpec, que determina el tipo de claves que cree. Además, debe especificar un valor KeyUsage de ENCRYPT_DECRYPT o SIGN_VERIFY. No puede cambiar estas propiedades después de que se cree la CMK.

LaCreateKeyno le permite especificar un alias, pero puede usar el comandoCreateAliaspara crear un alias para su nuevo CMK.

En el ejemplo siguiente se utiliza la operación CreateKey para crear una CMK asimétrica de claves RSA de 4096 bits diseñadas para el cifrado de claves públicas.

$ aws kms create-key --customer-master-key-spec RSA_4096 --key-usage ENCRYPT_DECRYPT { "KeyMetadata": { "KeyState": "Enabled", "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "CustomerMasterKeySpec": "RSA_4096", "KeyManager": "CUSTOMER", "Description": "", "KeyUsage": "ENCRYPT_DECRYPT", "Arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "CreationDate": 1569973196.214, "MultiRegion": false, "EncryptionAlgorithms": [ "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256" ], "AWSAccountId": "111122223333", "Origin": "AWS_KMS", "Enabled": true } }

El comando de ejemplo siguiente crea una CMK asimétrica que representa un par de claves ECDSA utilizadas para la firma y verificación. No se puede crear un par de claves de curva elíptica para el cifrado y el descifrado.

$ aws kms create-key --customer-master-key-spec ECC_NIST_P521 --key-usage SIGN_VERIFY { "KeyMetadata": { "KeyState": "Enabled", "KeyId": "0987dcba-09fe-87dc-65ba-ab0987654321", "CreationDate": 1570824817.837, "Origin": "AWS_KMS", "SigningAlgorithms": [ "ECDSA_SHA_512" ], "Arn": "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321", "AWSAccountId": "111122223333", "CustomerMasterKeySpec": "ECC_NIST_P521", "KeyManager": "CUSTOMER", "Description": "", "Enabled": true, "MultiRegion": false, "KeyUsage": "SIGN_VERIFY" } }