Utiliza las claves de cifrado como un profesional con AWS Key Management

¿Estás buscando una forma de cifrar y descifrar tus datos de manera rápida? ¡Consulta AWS Key Management! Este servicio ofrece seguridad de alto nivel para tus datos al permitirte crear y gestionar claves criptográficas. También puedes controlar quién tiene acceso a tus claves y qué acciones pueden realizar con ellas.

Este tutorial, de ninguna manera, cubre todo lo que hay que saber sobre AWS Key Management. Sin embargo, te dará una buena visión general de los conceptos básicos para utilizar esta poderosa herramienta.

¡Sigue leyendo para aprovechar los beneficios de seguridad de AWS Key Management!

Prerrequisitos

Este tutorial será una demostración práctica. Si deseas seguirlo, asegúrate de tener lo siguiente.

  • Una cuenta de AWS con facturación activa. Puedes crear una cuenta de AWS de forma gratuita aquí. La capa gratuita incluye suficientes servicios para comenzar con este tutorial.
  • Tienes AWS CLI instalada y configurada en tu máquina. Consulta este tutorial para obtener más información.

Creando una Clave KMS Utilizando la Consola de AWS

Lee si prefieres la consola de AWS (GUI) en lugar de la AWS CLI. La siguiente sección te guiará a través de la creación de una clave KMS utilizando la consola.

Creación de un usuario IAM

Para comenzar, debes crear un usuario IAM que utilizarás para acceder al servicio de administración de claves AWS desde la interfaz de línea de comandos de AWS (CLI).

Los usuarios IAM son independientes de las credenciales de tu cuenta principal de AWS. Utilizar usuarios IAM se considera una buena práctica porque te permite tener un control detallado sobre quién tiene acceso a qué recursos en tu cuenta de AWS.

Sigue estos pasos para crear un usuario IAM con acceso mediante contraseña para el servicio de administración de claves AWS:

1. Inicia sesión en la Consola de administración de AWS como usuario principal.

2. Escribe IAM en la barra de búsqueda de servicios y selecciona IAM en los resultados para abrir la consola IAM. Esta consola es donde puedes gestionar usuarios IAM y sus permisos.

Opening the IAM console

3. Ve a Usuarios → Agregar usuarios para añadir un nuevo usuario IAM.

Adding a new IAM user

4. Realiza los siguientes pasos en la página Agregar usuario.

Ingresa un nombre para tu nuevo usuario. En este ejemplo, se llama KMSUserConsole.

Selecciona la opción Contraseña – acceso a la consola de administración de AWS radio button > Contraseña generada automáticamente. Esta opción generará una contraseña aleatoria para tu usuario.

Asegúrate de que la casilla El usuario debe crear una nueva contraseña en el próximo inicio de sesión esté desmarcada. Esto te permitirá iniciar sesión como este usuario sin tener que restablecer la contraseña primero.

Haz clic en Siguiente: Permisos para continuar.

Adding the IAM user details

5. En la página Establecer permisos, selecciona Adjuntar directamente políticas existentes. Selecciona AdministratorAccess de la lista de políticas disponibles. Esta política otorga al usuario acceso completo a AWS, incluida la capacidad de crear y gestionar claves.

Haz clic en Siguiente: Etiquetas para continuar.

Setting permissions

6. En la página Agregar etiquetas (opcional), puedes agregar cualquier etiqueta relevante a tu usuario. Para este tutorial, no agregarás ninguna etiqueta. Haz clic en Siguiente: Revisar para revisar los permisos e información de tu usuario.

Viewing the Add tags (optional) page

7. Asegúrate de que la política AdministratorAccess esté seleccionada y haz clic en Crear usuario para terminar de crear tu nuevo usuario IAM.

AdministratorAccess

8. La creación del usuario IAM finaliza después de unos minutos y verás un mensaje de éxito en un banner.

Copia o descarga la contraseña en un lugar seguro porque la necesitarás para iniciar sesión como este nuevo usuario IAM más tarde.

Haz clic en la URL junto al mensaje para ir a la página de inicio de sesión del usuario IAM.

Haz clic en Cerrar para cerrar la ventana del mensaje.

IAM User creation completion

9. En la siguiente página, ingresa el nombre de usuario y la contraseña que acabas de generar y haz clic en Iniciar sesión para iniciar sesión como tu nuevo usuario IAM.

Signing in as the IAM user

Creando una Clave de KMS Usando la Consola de AWS

Ahora que has iniciado sesión en la Consola de Administración de AWS como tu usuario IAM, estás listo para crear tu primera clave de KMS.

Sigue estos pasos para crear una clave de KMS utilizando la consola de AWS.

1. Escribe KMS en la barra de búsqueda de Encontrar servicios. Selecciona Servicio de administración de claves en los resultados para abrir la consola de KMS.

Opening the KMS console

2. Haz clic en “Customer managed keys” en la barra lateral izquierda > Crea una clave para crear una nueva clave KMS.

Creating a new key

3. Realiza lo siguiente en la siguiente pantalla.

Tipo de clave: Selecciona Simétrica. Este tipo de clave es para cifrado y descifrado y funciona mejor para la mayoría de los casos de uso.

Uso de la clave: Selecciona Cifrado y descifrado. Este uso de clave te permite utilizar tu clave para cifrado y descifrado.

Mantén todas las demás configuraciones con sus valores predeterminados y haz clic en Siguiente.

Configuring keys

4. Ingresa un Alias para tu clave. Este alias te ayudará a identificar rápidamente tu clave en la consola de KMS. El alias debe tener entre 1 y 256 caracteres y solo puede contener caracteres alfanuméricos, guiones (-) y guiones bajos (_).

El alias no puede comenzar con aws/ ya que este prefijo está reservado para claves gestionadas por AWS. Obtendrás el siguiente mensaje de error si intentas usar este prefijo.

Getting the aws/ is a restricted prefix error.

Ingresa una Descripción para tu clave. Este campo es opcional, pero siempre es buena idea incluir una descripción para que puedas recordar el uso de la clave más tarde.

Mantén todas las demás configuraciones con sus valores predeterminados y haz clic en Siguiente para continuar.

Adding an alias

5. Selecciona la casilla junto al usuario que creaste anteriormente, KMSUserConsole. Este usuario será el único que tendrá acceso para usar esta clave.

Mantén desmarcada la opción Permitir a los administradores de clave eliminar esta clave, ya que no querrás que nadie elimine tu clave.

Haz clic en Siguiente para continuar.

Selecting key admin

Selecciona el usuario que creaste anteriormente, KMSUserConsole, y haz clic en siguiente. Esta acción permite que tu usuario utilice la llave en operaciones criptográficas operaciones, como cifrar y descifrar datos.

Selecting the IAM users and roles that can access the KMS key in cryptographic operations

7. Finalmente, haz clic en el botón de Finalizar para completar el proceso de creación de la llave.

Completing the key creation process

Tu nueva llave KMS ahora aparecerá en la sección de llaves administradas por el cliente de la consola KMS. Puedes ver información sobre tu llave, como el estado, el ID de la llave, alias, etc.

Viewing your keys

Gestionando Llaves KMS Usando la Consola de AWS

Ahora que has creado una llave KMS, las siguientes secciones te muestran cómo gestionarlas usando la consola de AWS.

Editando una Llave KMS

Puedes editar una llave KMS en cualquier momento para cambiar sus ajustes. Para hacer esto, sigue estos pasos:

1. Haz clic en el hipervínculo de la llave que quieres editar. Esta acción abre la página de detalles de la llave.

Opening the key details page.

2. Haz clic en el botón de Editar en la esquina superior derecha de la página.

Click on the Edit button.

3. Haz los cambios que quieras hacer a la llave y haz clic en Guardar. Debes saber que lo único que puedes cambiar es la descripción.

make to the key and click Save

Deshabilitando y Habilitando una Llave KMS

Puedes deshabilitar y habilitar una llave KMS en cualquier momento. Por defecto, todas las llaves están habilitadas cuando se crean por primera vez. Supongamos que una llave pudo haber sido comprometida. Es una buena idea deshabilitar la llave hasta que investigues más a fondo.

1. Marca la casilla al lado de la llave que quieres deshabilitar y haz clic en Acciones de la llave → Deshabilitar.

Disabling a KMS Key

2. Una ventana te pide que confirmes si deseas desactivar la tecla. Haz clic en la casilla junto a Confirmar que deseas desactivar esta tecla y luego en Desactivar.

Confirming to disable a key

La tecla ahora está desactivada y verás un mensaje en la página de detalles de la tecla. El estado de la tecla también cambiará a Desactivado, como se muestra a continuación.

Viewing your key is disabled

3. Cuando tu investigación esté completa, puedes volver a habilitar una tecla y estarás listo para volver a usarla. Marca la casilla junto a la tecla que deseas habilitar → Acciones de tecla → Habilitar.

Key actions → Enable.

Creación de una Clave KMS Utilizando la AWS CLI

¡Gran fanático del uso de la AWS CLI? ¡Bien por ti! También puedes crear una clave KMS utilizando la AWS CLI. Esta sección te enseñará cómo crear un usuario IAM con acceso programático.

Después de crear el usuario, almacenarás las credenciales en un perfil de AWS. Interactuarás con AWS con ese perfil para crear una clave KMS.

Creación de un Usuario IAM con Acceso Programático

Necesitas un usuario IAM con acceso programático para autenticarte usando la AWS CLI sin contraseña. El acceso programático utiliza claves de acceso, una combinación de un ID de clave de acceso y una clave de acceso secreta para realizar llamadas a la API.

Sigue estos pasos para crear un usuario IAM con acceso programático

1. Crea un nuevo usuario IAM llamado KMSUserCli en la Consola de AWS. Consulta la sección Creación de un Usuario IAM anterior (pasos 1 a 4).

2. Cuando llegues a Seleccionar tipo de acceso de AWS, selecciona Acceso programático y haz clic en Siguiente: Permisos.

Selecting Programmatic access

3. Selecciona Adjuntar directamente políticas existentes. Marca la casilla junto a AdministratorAccess y haz clic en Siguiente: Etiquetas.

Selecting permissions

4. Saltar la adición de etiquetas y hacer clic en Siguiente: Revisar.

Skip adding tags

5. Finalmente, haz clic en Crear usuario para crear el usuario.

Creating an IAM user

Una vez que el proceso se complete, verás una pantalla similar a la siguiente, con el ID de clave de acceso y la clave de acceso secreta de tu nuevo usuario. Estas son las claves que usarás para configurar la AWS CLI. Asegúrate de guardar estas claves en un lugar seguro, ya que no podrás verlas nuevamente después de esta página.

¡No compartas esas claves en pipelines CI/CD públicos o comentarios en GitHub u otros foros públicos!

Viewing your access keys

Configuración del Perfil de AWS CLI

Ahora que has creado un usuario IAM, necesitas configurar tu perfil de AWS en tu máquina para poder acceder al Servicio de Administración de Claves de AWS utilizando las credenciales de ese usuario.

Sigue estos pasos para configurar tu perfil de AWS:

1. Abre PowerShell o Command Prompt como administrador.

2. Ejecuta el siguiente comando para verificar si tienes instalada la AWS CLI. Verás algo similar a la captura de pantalla a continuación si está instalada.

aws --version
Verify if you have the AWS CLI installed.

3. Ahora, ejecuta el siguiente comando para configurar tu nuevo perfil.

aws configure

4. En el indicador, ingresa la siguiente información.

  • ID de clave de acceso de AWS: Ingresa el ID de clave de acceso para el usuario IAM que creaste anteriormente.
  • Clave de acceso secreta de AWS: Ingresa la clave de acceso secreta para el usuario IAM que creaste anteriormente.
  • Nombre de región predeterminado: Ingresa tu región preferida. Para este tutorial, usarás us-west-2.
  • Formato de salida predeterminado: Ingresa JSON. El formato de salida JSON es más fácil de leer.
Configuring a profile in AWS CLI

Creando una clave de KMS utilizando AWS CLI

Ahora que tienes un usuario IAM con acceso programático, puedes comenzar a crear una clave de KMS.

Ejecuta el siguiente comando para crear una nueva clave de KMS.

aws km create-key

Verás una salida similar a la siguiente. El KeyId es el identificador de tu nueva clave de KMS. Anótalo, ya que lo necesitarás más adelante.

Creating a KMS Key Using The AWS CLI.

Dado que no especificas explícitamente una política de clave, AWS KMS crea una política de clave predeterminada para la nueva clave. Esta política otorga control total de la clave al usuario raíz, incluida la capacidad de crear usuarios y roles de AWS Identity and Access Management (IAM).

Ejecuta el siguiente comando para recuperar la política de clave de tu nueva clave de KMS. Reemplaza el argumento --key-id con el KeyId real de tu nueva clave de KMS. Este comando devuelve un documento de texto que contiene la política de clave de tu nueva clave de KMS.

aws km get-key-policy --key-id you_KeyId_here --policy-name default --output text

La salida debería verse algo como lo siguiente.

Retrieving the key policy of your new KMS key.

Gestionando claves de KMS utilizando AWS CLI

Ahora que has creado una clave KMS, puedes aprender cómo administrarla usando AWS CLI. Esta sección te enseñará cómo listar, deshabilitar y habilitar una clave KMS.

Puedes deshabilitar y habilitar una clave KMS en cualquier momento. Deshabilitar una clave KMS es útil cuando quieres investigar un posible uso indebido o si necesitas dejar de usar la clave temporalmente por cualquier otra razón.

1. Ejecuta el siguiente comando para deshabilitar una clave KMS. Reemplaza el argumento -key-id con el KeyId real de tu clave KMS. Este comando no tiene ninguna salida.

aws aws kms disable-key --key-id you_KeyId_here
Disabling a KMS key.

2. Para verificar que la clave está deshabilitada, ejecuta el siguiente comando. La salida debería incluir el campo “KeyState”: “Disabled”, como se muestra.

aws kms describe-key --key-id you_KeyId_here
Verifying that the key is disabled.

3. Para habilitar la clave, ejecuta el siguiente comando. Nuevamente, este comando no tiene ninguna salida.

aws kms enable-key --key-id you_KeyId_here
aws kms describe-key --key-id you_KeyId_here
Enabling the key.

4. Finalmente, ejecuta el siguiente comando para listar todas las claves KMS en tu cuenta. La salida incluye información como el keyId y KeyArn de cada clave.

aws kms list-keys
Listing all the KMS keys in your account,

Conclusión

En este artículo, aprendiste cómo crear y administrar claves KMS usando AWS CLI y la consola de AWS. También aprendiste cómo crear un usuario IAM con acceso programático permitiendo a AWS CLI administrar tus claves KMS.

La habilidad de gestión de claves de AWS es esencial para cualquiera que trabaje con AWS, especialmente si eres responsable de gestionar datos sensibles. Siguiendo los pasos de este artículo, ahora deberías tener las habilidades que necesitas para comenzar a usar AWS KMS.

Con este nuevo conocimiento, ¿por qué no crear recursos de AWS KMS con AWS CloudFormation para ahorrar tiempo y esfuerzo?

Source:
https://adamtheautomator.com/aws-key-management/