Uso de claves administradas por el cliente para el cifrado - Amazon Managed Workflows para Apache Airflow

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.

Uso de claves administradas por el cliente para el cifrado

Si lo desea, puede proporcionar una clave administrada por el cliente para el cifrado de datos en su entorno. Debe crear la clave de KMS administrada por el cliente en la misma región que su instancia de entorno de Amazon MWAA y su bucket de Amazon S3, donde almacena los recursos para sus flujos de trabajo. Si la clave de KMS administrada por el cliente que especifique está en una cuenta diferente de la que usa para configurar un entorno, debe especificar la clave mediante su ARN para el acceso entre cuentas. Para obtener más información sobre la creación de claves, consulte Creación de claves en la Guía para desarrolladores.AWS Key Management Service

Elementos compatibles

Uso de concesiones para el cifrado

En este tema se describen las concesiones que Amazon MWAA adjunta a una clave de KMS administrada por el cliente en su nombre para cifrar y descifrar sus datos.

Funcionamiento

La clave KMS administrada por el cliente admite dos mecanismos de control de acceso basados en recursos: una política de claves y AWS KMS una concesión.

La política de claves se utiliza cuando el permiso es principalmente estático y se utiliza en modo de servicio sincrónico, mientras que la concesión se utiliza cuando se requieren permisos más dinámicos y detallados, como cuando un servicio necesita definir diferentes permisos de acceso para sí mismo o para otras cuentas.

Amazon MWAA utiliza y adjunta cuatro políticas de concesión a su clave de KMS gestionada por el cliente. Esto se debe a los permisos detallados necesarios para que un entorno cifre los datos en reposo de CloudWatch Logs, la cola de Amazon SQS, la base de datos Aurora PostgreSQL, los secretos de Secrets Manager, el bucket de Amazon S3 y las tablas de DynamoDB.

Al crear un entorno de Amazon MWAA y especificar una clave de KMS gestionada por el cliente, Amazon MWAA adjunta las políticas de concesión a la clave de KMS gestionada por el cliente. Estas políticas permiten airflow.us-east-1.amazonaws.com a Amazon MWAA utilizar su clave de KMS administrada por el cliente para cifrar los recursos en su nombre que son propiedad de Amazon MWAA.

Amazon MWAA crea y asocia concesiones adicionales a una clave de KMS específica en su nombre. Esto incluye políticas para retirar una subvención si elimina su entorno, para usar su clave KMS administrada por el cliente para el cifrado del lado del cliente (CSE) y para el rol de AWS Fargate ejecución que necesita acceder a los secretos protegidos por su clave administrada por el cliente en Secrets Manager.

Políticas de concesión

Amazon MWAA añade las siguientes concesiones de políticas basadas en recursos en su nombre a una clave de KMS administrada por el cliente. Estas políticas permiten que el beneficiario y la entidad principal (Amazon MWAA) lleven a cabo las acciones definidas en la política.

Concesión 1: se utiliza para crear recursos del plano de datos

{ "Name": "mwaa-grant-for-env-mgmt-role-environment name", "GranteePrincipal": "airflow.us-east-1.amazonaws.com", "RetiringPrincipal": "airflow.us-east-1.amazonaws.com", "Operations": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:CreateGrant", "kms:DescribeKey", "kms:RetireGrant" ] }

Concesión 2: se utiliza para el acceso del ControllerLambdaExecutionRole

{ "Name": "mwaa-grant-for-lambda-exec-environment name", "GranteePrincipal": "airflow.us-east-1.amazonaws.com", "RetiringPrincipal": "airflow.us-east-1.amazonaws.com", "Operations": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey", "kms:RetireGrant" ] }

Concesión 3: se utiliza para el acceso del CfnManagementLambdaExecutionRole

{ "Name": " mwaa-grant-for-cfn-mgmt-environment name", "GranteePrincipal": "airflow.us-east-1.amazonaws.com", "RetiringPrincipal": "airflow.us-east-1.amazonaws.com", "Operations": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ] }

Concesión 4: se utiliza para el rol de ejecución de Fargate a fin de acceder a la información secreta del backend

{ "Name": "mwaa-fargate-access-for-environment name", "GranteePrincipal": "airflow.us-east-1.amazonaws.com", "RetiringPrincipal": "airflow.us-east-1.amazonaws.com", "Operations": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey", "kms:RetireGrant" ] }

Adjuntar políticas clave a una clave administrada por el cliente

Si decide utilizar su propia clave de KMS gestionada por el cliente con Amazon MWAA, debe adjuntar la siguiente política a la clave para permitir que Amazon MWAA la utilice para cifrar sus datos.

Si la clave de KMS administrada por el cliente que utilizó para su entorno de Amazon MWAA aún no está configurada para funcionar con ella CloudWatch, debe actualizar la política de claves para permitir los registros cifrados. CloudWatch Para obtener más información, consulte el servicio Cifrar los datos de registro durante el uso. CloudWatch AWS Key Management Service

El siguiente ejemplo representa una política clave para CloudWatch los registros. Sustituya los valores de ejemplo que se han indicado para la región.

{ "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:*:*" } } }