Acceso a AWS Key Management Service - AWS Key Management Service

Acceso a AWS Key Management Service

Puede trabajar con AWS KMS de las siguientes formas:

AWS Management Console

La consola es una interfaz de usuario basada en la web para administrar AWS KMS y recursos de AWS. Si se ha registrado con una cuenta de Cuenta de AWS, puede acceder a la consola de AWS KMS iniciando sesión en la AWS Management Console y seleccionando AWS KMS en la página de inicio de la AWS Management Console.

Permisos necesarios para usar la consola de AWS KMS

Para trabajar con la consola de AWS KMS, los usuarios deben tener un conjunto mínimo de permisos que les permitan trabajar con los recursos de AWS KMS en su Cuenta de AWS. Además de estos permisos de AWS KMS, los usuarios también deben disponer de permisos para enumerar usuarios de IAM y los roles de IAM. Si crea una política de IAM que sea más restrictiva que el mínimo de permisos necesarios, la consola de AWS KMS no funcionará del modo esperado para los usuarios con esa política de IAM.

Para conocer los permisos mínimos necesarios para permitir a un usuario acceso de solo lectura a la consola de AWS KMS, consulte Permitir a un usuario ver las claves KMS en la consola AWS KMS.

Para permitir que los usuarios trabajen con la consola de AWS KMS para crear y administrar las claves KMS, asocie la política administrada AWSKeyManagementServicePowerUser al usuario, tal como se describe en Política administrada por AWS para usuarios avanzados.

No es necesario que conceda permisos mínimos para la consola a los usuarios que trabajan con la API de AWS KMS a través de las SDK de AWS, AWS Command Line Interface o AWS Tools for PowerShell. Sin embargo, es necesario conceder permiso a estos usuarios para utilizar la API. Para obtener más información, consulte Referencia de permisos.

AWS Command Line Interface

Puede utilizar las herramientas de AWS CLI para emitir comandos o compilar scripts en la línea de comandos de su sistema con el fin de ejecutar tareas de AWS (incluyendo AWS KMS).

Para obtener más información sobre el uso de AWS KMS a través de AWS CLI, consulte la Referencia de comandos de la AWS CLI

AWS KMS REST API

La arquitectura de AWS KMS está diseñada con un lenguaje de programación neutro y utiliza interfaces admitidas por AWS para almacenar y recuperar objetos. Puede acceder a S3 y AWS mediante programación con AWS KMS de REST API. La REST API es un interfaz HTTP para AWS KMS. Con la REST API, puede utilizar solicitudes HTTP estándar para crear, recuperar y eliminar buckets y objetos.

Para obtener más información sobre las AWS KMS de REST API, consulte la Referencia de la API de AWS Key Management Service

SDK de AWS

AWS ofrece SDK (kits de desarrollo de software) que se componen de bibliotecas y código de muestra para diversos lenguajes de programación y plataformas (Java, JavaScript, C, Python, etc.). Los SDK de AWS constituyen un cómodo mecanismo para crear acceso mediante programación a AWS KMS y AWS. AWS KMS es un servicio de REST. Puede enviar solicitudes a AWS KMS mediante las bibliotecas de SDK de AWS, que envuelven la REST API de AWS KMS subyacente y simplifican sus tareas de programación. Para obtener información sobre los SDKs de AWS (por ejemplo: cómo descargarlos e instalarlos), consulte Herramientas para crear en AWS.

Ejemplos de código de AWS KMS con un AWS SDK proporciona un buen punto de partida para el uso de AWS KMS a través de SDKs de AWS.

AWS Encryption SDK

AWS Encryption SDK es una herramienta para implementar el cifrado del cliente en su aplicación. No proporciona acceso completo a KMS, sino que se integra con AWS KMS o se puede usar como un SDK independiente sin hacer referencia a las claves KMS. Hay bibliotecas disponibles para Java, JavaScript, C, Python y otros lenguajes de programación.

Para obtener más información, consulte la Guía para desarrolladores de AWS Encryption SDK.

Políticas de AWS KMS key y políticas de IAM

Coherencia final de AWS KMS

La API de AWS KMS sigue un modelo de coherencia final debido a la naturaleza distribuida del sistema. Como resultado, es posible que los cambios en los recursos de AWS KMS no estén inmediatamente visibles para los comandos posteriores que ejecute.

Al realizar llamadas a la API de AWS KMS, es posible que se produzca una breve demora antes de que el cambio esté disponible en AWS KMS. Por lo general, el cambio tarda menos de unos segundos en propagarse por todo el sistema, pero en algunos casos puede tardar varios minutos. Es posible que se produzcan errores inesperados, como un error NotFoundException o InvalidStateException, en este periodo de tiempo. Por ejemplo, AWS KMS puede devolver un NotFoundException si llama a GetParametersForImport inmediatamente después de llamar a CreateKey.

Le recomendamos que configure una estrategia de reintentos en sus clientes de AWS KMS para reintentar automáticamente las operaciones tras un breve periodo de espera. Para obtener más información, consulte Retry behavior en la Guía de referencia de herramientas y SDK de AWS.

En el caso de las llamadas a la API relacionadas con las concesiones, puede utilizar un token de concesión para evitar posibles demoras y utilizar los permisos de una concesión de forma inmediata. Para obtener más información, consulte Eventual consistency (for grants).