Criptografar logs do Amazon EMR no EKS com armazenamento gerenciado
As seções a seguir mostram como configurar a criptografia para logs.
Enable encryption (Habilitar criptografia)
Para criptografar logs no armazenamento gerenciado com sua própria chave do KMS, use a configuração a seguir ao enviar uma execução de trabalho.
"monitoringConfiguration": { "managedLogs": { "allowAWSToRetainLogs":"ENABLED", "encryptionKeyArn":"KMS key arn" }, "persistentAppUI": "ENABLED" }
A configuração allowAWSToRetainLogs permite que a AWS retenha os logs do namespace do sistema ao executar um trabalho usando o FGAC nativo. A configuração persistentAppUI permite que a AWS salve logs de eventos que são usados para gerar a IU do Spark. encryptionKeyArn é usado para especificar o ARN da chave do KMS que você deseja usar para criptografar os log armazenados pela AWS.
Permissões necessárias para criptografia de logs
O usuário que envia o trabalho ou visualiza a IU do Spark deve ter permissão para as ações kms:DescribeKey, kms:GenerateDataKey e kms:Decrypt para a chave de criptografia. Essas permissões são usadas para verificar a validade da chave e confirmar que o usuário possui as permissões necessárias para ler e gravar logs criptografados com a chave do KMS. Se o usuário que envia o trabalho não tiver as permissões necessárias, o Amazon EMR no EKS rejeitará o envio da execução do trabalho.
Exemplo de política do IAM para perfil usado para chamar StartJobRun
Você também deve configurar a chave do KMS para permitir as entidades principais persistentappui.elasticmapreduce.amazonaws.com e elasticmapreduce.amazonaws.com para kms:GenerateDataKey e kms:Decrypt. Isso permite que o EMR leia e grave logs criptografados com a chave do KMS no armazenamento gerenciado.
Exemplo de política de chave do KMS
Como práticas recomendadas de segurança, recomendamos que você adicione as condições kms:EncryptionContext, kms:viaService e aws:SourceArn. Essas condições ajudam a garantir que a chave seja usada somente pelo Amazon EMR no EKS e usada exclusivamente para logs gerados a partir de trabalhos executados em um cluster virtual específico.