Configuré una CMK (clave administrada personalizada) para cifrar grupos de registros con AWS Systems Session Manager:
Primero, se agregan permisos para "administradores clave" y "usuarios/roles clave" en la consola KMS.
A continuación, la CMK se adjunta en las preferencias de AWS Systems Manager Session Manager al LogGroup como se muestra en esta imagen:
Error:
La clave de KMS especificada no existe o no se permite su uso con LogGroup 'arn:aws:logs:my_region:my_account_id:log-group:/SSM'
La clave debe existir porque se usa para cifrar las sesiones y simplemente no descifra los grupos de registro correctamente, pero está vinculada al grupo de registro y el usuario tiene permiso. ¿Lo que da?
Intenté replicar tu problema .
La configuración del administrador de mi sesión:
El grupo de registros de CloudWatch se ha cifrado mediante la CLI:
{ "logGroups": [ { "logGroupName": "SSM", "creationTime": 1593579430258, "metricFilterCount": 0, "arn": "arn:aws:logs:us-east-1:xxxxx:log-group:SSM:*", "storedBytes": 0, "kmsKeyId": "arn:aws:kms:us-east-1:xxxxxxxxx:key/xxxx-9500-xxxxx" } ] }Después de iniciar el administrador de sesión, puedo obtener la confirmación de que está encriptado:
Según esta verificación, lo único que se requería para que funcionara era establecer políticas clave de KMS. Agregué lo siguiente a mi KMS ( SSMRole es un rol de instancia, las otras entradas deben explicarse por sí mismas):
{ "Effect": "Allow", "Principal": { "Service": "logs.us-east-1.amazonaws.com" }, "Action": [ "kms:Encrypt*", "kms:Decrypt*", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:Describe*" ], "Resource": "*", "Condition": { "ArnLike": { "kms:EncryptionContext:aws:logs:arn": "arn:aws:logs:us-east-1:xxxxx:log-group:SSM" } } }, { "Effect": "Allow", "Principal": { "Service": "ssm.amazonaws.com" }, "Action": [ "kms:Encrypt*", "kms:Decrypt*", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:Describe*" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "kms:Encrypt*", "kms:Decrypt*", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:Describe*" ], "Resource": "*", "Principal": { "AWS": "arn:aws:iam::xxxxx:role/SSMRole" } }