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.
Determinación del uso anterior de una clave KMS
Para fines de supervisión y auditoría, es posible que desee saber cómo se ha utilizado una clave de KMS en el pasado. Por ejemplo, es posible que desee determinar si una clave de KMS se sigue utilizando activamente antes de inhabilitarla o programar su eliminación, o identificar las claves no utilizadas en su cuenta. Las siguientes estrategias pueden ayudarte a determinar el uso anterior de una clave de KMS.
aviso
Estas estrategias para determinar el uso anterior solo son efectivas para AWS los directores y AWS KMS las operaciones. No pueden detectar el uso de la clave si no implica llamadas a la API a AWS KMS. Una vez que se genera una clave de datos a partir de una clave de KMS simétrica, su uso posterior para el cifrado local o el descifrado externo no AWS KMS se refleja en la última información de uso. Del mismo modo, estas estrategias no pueden detectar el uso de la clave pública de una clave KMS asimétrica fuera de. AWS KMS Para obtener detalles acerca de los riesgos especiales de la eliminación de las claves KMS asimétricas utilizadas para la criptografía de clave pública, incluida la creación de textos cifrados que no se pueden descifrar, consulte Deleting asymmetric KMS keys.
Temas
Examen de los permisos de clave KMS para determinar el ámbito de uso potencial
Determinar quién o qué tiene acceso actualmente a una clave de KMS puede ayudarle a determinar en qué medida se usa la clave de KMS y si sigue siendo necesaria. Para determinar quién o qué tiene acceso actualmente a una clave de KMS, consulteDeterminar el acceso a AWS KMS keys.
Examine la última operación criptográfica realizada con una clave de KMS
AWS KMS proporciona información de uso sobre la última operación criptográfica exitosa realizada con cada clave de KMS, junto con el identificador de CloudTrail evento asociado. Esto puede facilitar el proceso de identificación de las claves de KMS no utilizadas. También puedes usar la clave kms: TrailingDaysWithoutKeyUsage condition en las políticas de claves para evitar que las claves usadas recientemente se deshabiliten accidentalmente o programen su eliminación.
Puede ver la última operación criptográfica exitosa realizada con una clave de KMS mediante la API Consola de administración de AWS AWS CLI, o. AWS KMS
nota
Algunos AWS servicios crean recursos que dependen de una clave de KMS para la protección de datos, pero no invocan operaciones criptográficas en esa clave con frecuencia. Por ejemplo, el servicio Amazon EC2 llama AWS KMS para descifrar la clave de datos de un volumen de Amazon EBS cifrado solo cuando el volumen está adjunto a una instancia. En estos casos, no debe basarse únicamente en la última información de uso para determinar si se puede eliminar una clave de KMS. Si se elimina la clave de KMS que protege un volumen de Amazon EBS, no se interrumpirá el volumen de Amazon EBS que ya está adjunto, pero los intentos posteriores de adjuntar ese volumen de Amazon EBS cifrado a otra instancia de Amazon EC2 fallarán.
Comprender el período de seguimiento del uso
AWS KMS rastrea solo la última operación criptográfica exitosa realizada con cada clave de KMS. Puede haber un retraso de hasta una hora entre el momento en que se produce una operación criptográfica y el momento en que se registra el uso.
Cuando compruebas la última información de uso de una clave de KMS, la respuesta incluye la fecha de inicio del seguimiento. TrackingStartDateEs la fecha a partir de la cual se AWS KMS empezó a registrar la actividad criptográfica de esa clave. Utilice esta fecha junto con la fecha de creación de la clave para determinar su historial de uso comparando la fecha de creación de la clave con la fecha de inicio del seguimiento:
-
Si hay información sobre el último uso , significa que la clave se ha utilizado para una operación criptográfica desde que se inició el seguimiento. La respuesta incluye el tipo de operación, la marca de tiempo y el identificador de evento asociado AWS CloudTrail .
-
Si la información del último uso está vacía, la clave no ha registrado ninguna operación criptográfica desde que comenzó el seguimiento. Compare la fecha de creación de la clave con la
TrackingStartDatepara determinar qué significa esto:-
Si la clave se creó el o después del
TrackingStartDate, la clave no se ha utilizado para ninguna operación criptográfica desde que se creó. -
Si la clave se creó antes del
TrackingStartDate, no hay ningún registro de que la clave se haya utilizado desde que se inició el seguimiento. Sin embargo, es posible que la clave se haya utilizado antes de que comenzara el seguimiento. Para determinar si la clave se usó anteriormente, examine sus AWS CloudTrail registros anteriores.
-
aviso
No te fíes únicamente de la información de uso anterior para eliminar las claves no utilizadas. En su lugar, desactive primero la clave y AWS CloudTrail compruebe si DisabledException hay entradas que indiquen intentos de utilizar la clave mientras está desactivada. Esto ayuda a identificar posibles dependencias y errores en la carga de trabajo. AWS CloudTrail sigue siendo la fuente autorizada de todas las llamadas a la API realizadas a su clave.
Operaciones criptográficas rastreadas
Solo se rastrean y registran las siguientes operaciones criptográficas exitosas para informar sobre la última información de uso. Non-cryptographic se excluyen las operaciones.
-
Decrypt -
DeriveSharedSecret -
Encrypt -
GenerateDataKey -
GenerateDataKeyPair -
GenerateDataKeyPairWithoutPlaintext -
GenerateDataKeyWithoutPlaintext -
GenerateMac -
ReEncrypt -
Sign -
Verify -
VerifyMac
Otras consideraciones
Tenga en cuenta lo siguiente cuando utilice la información de uso:
-
Multi-Region Claves de KMS: en el caso de las claves de KMS de varias regiones, las claves principales y de réplica registran la última información de uso de forma independiente. Cada clave de un conjunto de claves multirregionales conserva su propia información de último uso.
-
ReEncrypt operaciones: la
ReEncryptoperación utiliza dos claves: una clave de origen para el descifrado y una clave de destino para el cifrado. La última información de uso se registra de forma independiente para ambas claves, cada una con el identificador de CloudTrail evento de la cuenta del propietario de la clave correspondiente.
Puedes ver la última información de uso mediante los siguientes métodos:
Puede ver la última operación criptográfica exitosa realizada con una clave de KMS en la página de detalles de cada clave de KMS. Para ver los procedimientos sobre cómo ver la página de detalles de una clave de KMS, consulteAcceso y enumeración de detalles de claves KMS.
La GetKeyLastUsage operación devuelve información de uso de la última operación criptográfica realizada con la clave de KMS especificada. Para identificar la clave de KMS, utilice el identificador de la clave o el ARN de la clave.
Por ejemplo, la siguiente llamada para GetKeyLastUsage recuperar la información de uso de una clave de KMS con el ID de la clave. 1234abcd-12ab-34cd-56ef-1234567890ab
$ aws kms get-key-last-usage --key-id "1234abcd-12ab-34cd-56ef-1234567890ab" { "KeyCreationDate": 1773253425.56, "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "TrackingStartDate": 1773253425.56, "KeyLastUsage": { "Timestamp": 1773253497.0, "Operation": "Encrypt", "KmsRequestId": "040cce3e-9ef3-4651-b8cf-e47c9bafdc9b", "CloudTrailEventId": "2cfd5892-ea8c-4342-ad49-4b9594b06a8b" } }
Por el contrario, la siguiente llamada a no GetKeyLastUsage revela información de uso de una clave de KMS con el identificador 0987dcba-09fe-87dc-65ba-ab0987654321 de clave.
$ aws kms get-key-last-usage --key-id "0987dcba-09fe-87dc-65ba-ab0987654321" { "KeyCreationDate": 1672531200.0, "KeyId": "0987dcba-09fe-87dc-65ba-ab0987654321", "TrackingStartDate": 1773253425.56, "KeyLastUsage": {} }
Examine AWS CloudTrail registros para comprobar el uso anterior
Puedes usar el historial de uso de una clave de KMS como ayuda para determinar si tienes textos cifrados cifrados con una clave de KMS determinada.
Toda la actividad AWS KMS de la API se registra en los archivos de AWS CloudTrail registro. Si ha creado un registro en la CloudTrail región en la que se encuentra su clave de KMS, puede examinar sus archivos de CloudTrail registro para ver un historial de toda la actividad de la AWS KMS API relacionada con una clave de KMS en particular. Si no tienes una ruta, puedes seguir viendo los eventos recientes en tu historial de CloudTrail eventos. Para obtener más información sobre cómo se AWS KMS usa CloudTrail, consultaRegistro AWS KMS Llamadas a la API con AWS CloudTrail.
Los siguientes ejemplos muestran las entradas de CloudTrail registro que se generan cuando se usa una clave de KMS para proteger un objeto almacenado en Amazon Simple Storage Service (Amazon S3). En este ejemplo, el objeto se carga en Amazon S3 mediante la protección de datos mediante el cifrado del lado del servidor con claves KMS ()SSE-KMS. Cuando subes un objeto a Amazon S3 con SSE-KMS, especificas la clave de KMS que se va a usar para proteger el objeto. Amazon S3 usa la AWS KMS GenerateDataKey operación para solicitar una clave de datos única para el objeto, y este evento de solicitud se registra CloudTrail con una entrada similar a la siguiente:
{ "eventVersion": "1.02", "userIdentity": { "type": "AssumedRole", "principalId": "AROACKCEVSQ6C2EXAMPLE:example-user", "arn": "arn:aws:sts::111122223333:assumed-role/Admins/example-user", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2015-09-10T23:12:48Z" }, "sessionIssuer": { "type": "Role", "principalId": "AROACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::111122223333:role/Admins", "accountId": "111122223333", "userName": "Admins" } }, "invokedBy": "internal.amazonaws.com" }, "eventTime": "2015-09-10T23:58:18Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKey", "awsRegion": "us-west-2", "sourceIPAddress": "internal.amazonaws.com", "userAgent": "internal.amazonaws.com", "requestParameters": { "encryptionContext": {"aws:s3:arn": "arn:aws:s3:::example_bucket/example_object"}, "keySpec": "AES_256", "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }, "responseElements": null, "requestID": "cea04450-5817-11e5-85aa-97ce46071236", "eventID": "80721262-21a5-49b9-8b63-28740e7ce9c9", "readOnly": true, "resources": [{ "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "accountId": "111122223333" }], "eventType": "AwsApiCall", "recipientAccountId": "111122223333" }
Cuando más adelante descargue este objeto de Amazon S3, Amazon S3 envía una Decrypt solicitud AWS KMS para descifrar la clave de datos del objeto mediante la clave de KMS especificada. Al hacerlo, los archivos de CloudTrail registro incluyen una entrada similar a la siguiente:
{ "eventVersion": "1.02", "userIdentity": { "type": "AssumedRole", "principalId": "AROACKCEVSQ6C2EXAMPLE:example-user", "arn": "arn:aws:sts::111122223333:assumed-role/Admins/example-user", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2015-09-10T23:12:48Z" }, "sessionIssuer": { "type": "Role", "principalId": "AROACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::111122223333:role/Admins", "accountId": "111122223333", "userName": "Admins" } }, "invokedBy": "internal.amazonaws.com" }, "eventTime": "2015-09-10T23:58:39Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-west-2", "sourceIPAddress": "internal.amazonaws.com", "userAgent": "internal.amazonaws.com", "requestParameters": { "encryptionContext": {"aws:s3:arn": "arn:aws:s3:::example_bucket/example_object"}}, "responseElements": null, "requestID": "db750745-5817-11e5-93a6-5b87e27d91a0", "eventID": "ae551b19-8a09-4cfc-a249-205ddba330e3", "readOnly": true, "resources": [{ "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "accountId": "111122223333" }], "eventType": "AwsApiCall", "recipientAccountId": "111122223333" }
Al evaluar estas entradas de registro, puede determinar el uso anterior de una determinada clave KMS y esto puede ayudarle a determinar si desea eliminarla.
Para ver más ejemplos de cómo aparece la actividad de la AWS KMS API en sus archivos de CloudTrail registro, vaya aRegistro AWS KMS Llamadas a la API con AWS CloudTrail. Para obtener más información al respecto, CloudTrail consulte la Guía AWS CloudTrail del usuario.
Consideraciones sobre los costos de CloudTrail las consultas
Cuando consultas CloudTrail los registros con Amazon CloudWatch Logs Insights, Amazon CloudWatch Logs Insights te cobra en función de la cantidad de datos escaneados. Las consultas grandes e ilimitadas pueden generar costes inesperadamente altos. Para administrar los costos, defina cada consulta según el intervalo de tiempo relevante más reducido. Filtre por nombre de evento, ARN del recurso o ID principal. Antes de intentar realizar una consulta, considere la posibilidad de examinar primero la última operación criptográfica exitosa realizada con una clave de KMS para evitar incurrir en costos de consulta innecesarios. También puede configurar alertas presupuestarias en AWS Presupuestos para detectar un volumen de consultas inesperado. Para obtener más información sobre los precios, consulte CloudWatch los precios de Amazon