Crear claves
Puede crear AWS KMS keys en la AWS Management Console, o mediante el uso de la operación CreateKey o una plantilla de AWS CloudFormation. Durante este proceso, elija el tipo de clave KMS, la regionalidad (una única región o varias regiones) y el origen del material de claves (de manera predeterminada, AWS KMS crea el material de clave). No puede cambiar estas propiedades después de que se cree la clave KMS. También establece la política de claves para la clave KMS, que puede cambiar en cualquier momento.
En este tema se explica cómo crear la clave KMS básica, una clave KMS de cifrado simétrica para una única región con material de claves de AWS KMS. Puede utilizar esta clave KMS para proteger sus recursos en un Servicio de AWS. Para obtener información detallada acerca de las claves KMS de cifrado simétricas, consulte Especificación de clave SYMMETRIC_DEFAULT. Para obtener ayuda para crear otros tipos de claves, consulte Llaves para fines especiales.
Si crea una clave KMS para cifrar los datos que almacena o administra en un servicio AWS, cree una clave KMS de cifrade simétrica. Los servicios de AWS que se integran con AWS KMS
Claves KMS simétricas ahora se denominan claves KMS de cifrado simétricas. AWS KMS admite dos tipos de claves KMS simétricas, claves KMS de cifrado simétricas (el tipo predeterminado) y claves KMS HMAC, que también son claves simétricas.
Cuando crea una clave KMS en la consola AWS KMS, debe darle un alias (nombre descriptivo). La operación CreateKey
no crea un alias para la nueva clave KMS. Para crear un alias para una clave KMS nueva o existente, utilice la operación CreateAlias. Para obtener información detallada sobre los alias de AWS KMS, consulte Uso de alias.
En este tema se explica cómo crear una clave KMS de cifrado simétrica.
Más información:
-
Para crear claves de datos para el cifrado del lado del cliente, utilice la operación GenerateDataKey.
-
Para crear una clave KMS asimétrica para cifrado o firma, consulteCreación de claves KMS asimétricas.
-
Para crear una clave KMS HMAC, consulte Creación de claves KMS HMAC.
-
Para crear una clave KMS con material de claves importado (“traiga su propia clave”), consulte Paso 1 de la importación de material de claves: Crear una AWS KMS keysin material de claves.
-
Para crear una clave principal de varias regiones o una clave de réplica, consulte Creación de claves de varias regiones.
-
Para crear una clave KMS en un almacén de claves personalizado (origen del material de claves es Custom Key Store [CloudHSM]), consulte Crear claves de KMS en un almacén de claves de AWS CloudHSM.
-
Para utilizar una plantilla de AWS CloudFormation para crear una clave KMS, consulteAWS::KMS::Key en la Guía del usuario de AWS CloudFormation.
-
Para determinar si una clave KMS existente es simétrica o asimétrica, consulte Identificación de claves KMS asimétricas.
-
Para usar la clave KMS mediante programación y en las operaciones de la interfaz de línea de comandos, necesita un ID de clave o un ARN de clave. Para obtener instrucciones detalladas, consulte Búsqueda del ID y el ARN de la clave.
-
Para obtener información acerca de las cuotas que se aplican a las claves KMS, consulte Cuotas.
Permisos para crear claves KMS
Para crear una clave KMS en la consola o mediante las API, debe tener el permiso siguiente en una política de IAM. Siempre que sea posible, use claves de condición para limitar los permisos. Por ejemplo, puede utilizar la clave de condición kms:KeySpec en una política de IAM para permitir a las principales entidades crear solo claves de cifrado simétricas.
Para obtener un ejemplo de una política de IAM para las principales entidades que crean claves, consulte Permitir a un usuario crear claves KMS.
Tenga cuidado al dar permiso a las entidades principales para administrar etiquetas y alias. El cambio de etiqueta o alias puede permitir o denegar permiso a la clave administrada por el cliente. Para obtener más información, consulte ABAC para AWS KMS.
-
kms:CreateKey es obligatorio.
-
kms:CreateAlias para crear una clave KMS en la consola donde se requiere un alias para cada nueva clave KMS.
-
kms:TagResource para agregar etiquetas al crear la clave KMS.
-
iam:CreateServiceLinkedRole es necesario para crear claves primarias de varias regiones. Para obtener más información, consulte Control del acceso a claves de varias regiones.
El permiso kms:PutKeyPolicy no es necesario para crear la clave KMS. El permiso kms:CreateKey
incluye permiso para establecer la política de clave inicial. Pero debe agregar este permiso a la política de clave mientras crea la clave KMS para asegurarse de que puede controlar el acceso a la clave KMS. La alternativa es usar el parámetro BypassLockoutSafetyCheck, que no se recomienda.
Las claves KMS pertenecen a la cuenta de AWS en la que se crearon. El usuario de IAM que crea una clave KMS no se considera el propietario de la clave y no tiene permiso automáticamente para usar o administrar la clave KMS que creó. Al igual que cualquier otra entidad principal, el creador de la clave necesita obtener permiso a través de una política de claves, una política de IAM o una concesión. Sin embargo, las entidades principales que tienen el permiso de kms:CreateKey
pueden establecer la política de clave inicial y darse permiso a ellas mismas para usar o administrar la clave.
Creación de claves KMS de cifrado simétricas
Puede crear claves KMS en la AWS Management Console o utilizando la API de AWS KMS.
En este tema se explica cómo crear la clave KMS básica, una clave KMS de cifrado simétrica para una única región con material de claves de AWS KMS. Puede utilizar esta clave KMS para proteger sus recursos en un Servicio de AWS. Para obtener ayuda para crear otros tipos de claves, consulte Llaves para fines especiales.
Creación de claves KMS de cifrado simétricas (consola)
Puede utilizar la AWS Management Console para crear AWS KMS keys (claves KMS).
-
Inicie sesión en la AWS Management Console y abra la consola AWS Key Management Service (AWS KMS) en https://console.aws.amazon.com/kms
. -
Para cambiar la Región de AWS, utilice el Selector de regiones ubicado en la esquina superior derecha de la página.
-
En el panel de navegación, elija Claves administradas por el cliente.
-
Elija Create key.
-
Para crear una clave KMS de cifrado simétrica, para Key type (Tipo de clave) seleccione Symmetric (Simétrica).
Para obtener información acerca de cómo crear una clave KMS asimétrica en la consola de AWS KMS, consulte Creación de claves KMS asimétricas (consola).
-
En Key usage (Uso de claves), se selecciona la opción Encrypt and decrypt (Cifrar y descifrar) para usted.
Para obtener información acerca de cómo crear claves KMS que generan y verifican códigos MAC, consulte Creación de claves KMS HMAC.
-
Elija Next (Siguiente).
Para obtener más información acerca de las Opciones avanzadas, consulte Llaves para fines especiales.
-
Escriba un alias para la clave KMS. El nombre del alias no puede empezar por
aws/
. El prefijoaws/
está reservado para Amazon Web Services y representa las Claves administradas por AWS de su cuenta.nota Agregar, eliminar o actualizar un alias puede permitir o denegar el permiso a la clave KMS. Para más detalles, consulte ABAC para AWS KMS y Usar alias para controlar el acceso a las claves KMS.
Un alias es un nombre de visualización que puede usar para identificar a una clave KMS. Le recomendamos que elija un alias que indique el tipo de datos que piensa proteger o la aplicación que piensa usar con la clave KMS.
Los alias son necesarios para crear una clave KMS en la AWS Management Console. Se emplean en la operación CreateKey.
-
(Opcional) Escriba una descripción de la clave KMS.
Puede agregar una descripción ahora o actualizarla en cualquier momento, a menos que el estado de la clave sea
Pending Deletion
oPending Replica Deletion
. Para agregar, cambiar o eliminar la descripción de una clave KMS administrada por el cliente existente, edite la descripción en la AWS Management Console o utilice la operación UpdateKeyDescription. -
(Opcional) Escriba una clave de etiqueta y un valor de etiqueta opcional. Para agregar más de una etiqueta a la clave KMS, elija Add tag (Agregar etiqueta).
nota Etiquetar o quitar las etiquetas de la clave KMS puede permitir o denegar permiso a la clave KMS. Para más detalles, consulte ABAC para AWS KMS y Uso de etiquetas para controlar el acceso a las claves KMS.
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 pueden utilizarse para controlar el acceso a una clave KMS. Para obtener información acerca del etiquetado de claves KMS, consulte Etiquetar claves y ABAC para AWS KMS.
-
Elija Next (Siguiente).
-
Seleccione los usuarios y roles de IAM que pueden administrar la clave KMS.
nota Esta política de claves proporciona a la Cuenta de AWS control total de esta clave KMS. Permite a los administradores de cuentas utilizar las políticas de IAM para dar permiso a otras entidades principales para administrar la clave KMS. Para obtener más información, consulte Política de claves predeterminada.
Las prácticas recomendadas de IAM desalientan el uso de usuarios de IAM con credenciales a largo plazo. Siempre que sea posible, utilice los roles de IAM, que proporcionan credenciales temporales. Para obtener más información, consulte la sección Prácticas recomendadas de seguridad de IAM en la Guía del usuario de IAM;.
-
(Opcional) Para evitar que los usuarios y los roles de IAM seleccionados eliminen esta clave KMS, en la sección Key deletion (Eliminación de clave) situada en la parte inferior de la página, desactive la casilla Allow key administrators to delete this key (Permitir a los administradores de claves eliminar esta clave).
-
Elija Next (Siguiente).
-
Seleccione los usuarios y roles de IAM que pueden usar la clave en operaciones criptográficas
nota Esta política de claves proporciona a la Cuenta de AWS control total de esta clave KMS. Permite a los administradores de cuentas utilizar las políticas de IAM para dar permiso a otras entidades principales para utilizar la clave KMS. Para obtener más información, consulte Política de claves predeterminada.
Las prácticas recomendadas de IAM desalientan el uso de usuarios de IAM con credenciales a largo plazo. Siempre que sea posible, utilice los roles de IAM, que proporcionan credenciales temporales. Para obtener más información, consulte la sección Prácticas recomendadas de seguridad de IAM en la Guía del usuario de IAM;.
-
(Opcional) Puede permitir que otras cuentas de Cuentas de AWS usen esta clave KMS en operaciones criptográficas. Para ello, en la parte inferior de la página de la sección Other Cuentas de AWS (Otras), elija Add another Cuenta de AWS (Agregar otra) e ingrese el número de identificación de Cuenta de AWS de una cuenta externa. Para agregar varias cuentas externas, repita este paso.
nota Para permitir que las entidades principales de las cuentas externas usen la clave KMS, 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 clave KMS.
-
Elija Next (Siguiente).
-
Revise los ajustes de clave que ha elegido. Aún puede volver atrás y cambiar todos los ajustes.
-
Elija Finish (Finalizar) para crear la clave KMS.
Creación de claves KMS de cifrado simétricas (API de AWS KMS)
Puede utilizar la operación CreateKey para crear AWS KMS keys de todos los tipos. En estos ejemplos, se utiliza la AWS Command Line Interface (AWS CLI)
La siguiente operación crea la clave KMS más utilizada, una clave de cifrado simétrica en una única región respaldada por material de claves generado por AWS KMS. 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 agregar elementos opcionales como, por ejemplo, una descripción y etiquetas en cualquier momento. También puede crear claves asimétricas, claves de varias regiones, claves con material de claves importado, y claves en almacenes de claves personalizados.
La operación CreateKey
no le permite especificar un alias, pero puede usar la operación CreateAlias para crear un alias para la nueva clave KMS.
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 clave KMS de cifrado simétrica para 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, "KeySpec": "SYMMETRIC_DEFAULT", "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 clave KMS, 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 clave KMS.
Por ejemplo, esta llamada a la operación GetKeyPolicy devuelve la política de claves que aplica CreateKey
. Le da el acceso de Cuenta de AWS a la clave KMS y le permite crear políticas AWS Identity and Access Management (IAM) para la clave KMS. Para obtener información detallada sobre las políticas de IAM y las políticas de claves para claves KMS, consulte Autenticació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" : "*" } ] }