View a markdown version of this page

Menggunakan kunci yang dikelola pelanggan untuk enkripsi - Amazon Managed Workflows for Apache Airflow

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menggunakan kunci yang dikelola pelanggan untuk enkripsi

Anda dapat secara opsional memberikan Customer-managed kunci untuk enkripsi data di lingkungan Anda. Anda harus membuat kunci KMS yang dikelola pelanggan di Wilayah yang sama dengan instans lingkungan Amazon MWAA dan bucket Amazon S3 tempat Anda menyimpan sumber daya untuk alur kerja. Jika kunci KMS yang dikelola pelanggan yang Anda tentukan berada di akun yang berbeda dari yang Anda gunakan untuk mengonfigurasi lingkungan, Anda harus menentukan kunci menggunakan ARN-nya untuk akses lintas akun. Untuk informasi selengkapnya tentang membuat kunci, lihat Membuat Kunci di Panduan AWS Key Management Service Pengembang.

Apa yang didukung

AWS KMS fitur Didukung

ID AWS KMS kunci atau ARN.

Ya

Alias AWS KMS kunci.

Tidak

K AWS KMS unci multi-wilayah.

Tidak

Menggunakan Hibah untuk Enkripsi

Topik ini menjelaskan hibah yang dilampirkan Amazon MWAA ke kunci KMS yang dikelola pelanggan atas nama Anda untuk mengenkripsi dan mendekripsi data Anda.

Cara kerjanya

Ada dua mekanisme kontrol akses berbasis sumber daya yang didukung oleh AWS KMS kunci KMS yang dikelola pelanggan: kebijakan kunci dan hibah. https://docs.aws.amazon.com/kms/latest/developerguide/grants.html

Kebijakan kunci digunakan ketika izin sebagian besar statis dan digunakan dalam mode layanan sinkron. Hibah digunakan ketika izin yang lebih dinamis dan terperinci diperlukan, seperti ketika layanan perlu menentukan izin akses yang berbeda untuk dirinya sendiri atau akun lain.

Amazon MWAA menggunakan dan melampirkan empat kebijakan hibah ke kunci KMS yang dikelola pelanggan Anda. Ini karena izin granular yang diperlukan untuk lingkungan untuk mengenkripsi data diam dari CloudWatch Log, antrian Amazon SQS, database basis data Aurora PostgreSQL, rahasia Manajer Rahasia, bucket Amazon S3, dan tabel DynamoDB.

Saat Anda membuat lingkungan Amazon MWAA dan menentukan kunci KMS yang dikelola pelanggan, Amazon MWAA melampirkan kebijakan hibah ke kunci KMS yang dikelola pelanggan Anda. Kebijakan ini memungkinkan Amazon MWAA menggunakan kunci KMS yang dikelola pelanggan Anda untuk mengenkripsi sumber daya atas nama Anda yang dimiliki oleh Amazon MWAA. airflow.us-east-1.amazonaws.com

Amazon MWAA membuat, dan melampirkan, hibah tambahan ke kunci KMS tertentu atas nama Anda. Ini termasuk kebijakan untuk menghentikan hibah jika Anda menghapus lingkungan Anda, untuk menggunakan kunci KMS yang dikelola pelanggan untuk Client-Side Enkripsi (CSE), dan untuk peran AWS Fargate eksekusi yang perlu mengakses rahasia yang dilindungi oleh kunci yang dikelola pelanggan Anda di Manajer Rahasia.

Kebijakan hibah

Amazon MWAA menambahkan hibah kebijakan berbasis sumber daya berikut atas nama Anda ke kunci KMS yang dikelola pelanggan. Kebijakan ini memungkinkan penerima hibah dan kepala sekolah (Amazon MWAA) untuk melakukan tindakan yang ditentukan dalam kebijakan.

Hibah 1: digunakan untuk membuat sumber daya bidang data

{ "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" ] }

Hibah 2: digunakan untuk ControllerLambdaExecutionRole akses

{ "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" ] }

Hibah 3: digunakan untuk CfnManagementLambdaExecutionRole akses

{ "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" ] }

Grant 4: digunakan untuk peran eksekusi Fargate untuk mengakses rahasia 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" ] }

Melampirkan kebijakan utama ke kunci yang dikelola pelanggan

Jika Anda memilih untuk menggunakan kunci KMS yang dikelola pelanggan Anda sendiri dengan Amazon MWAA, Anda harus melampirkan kebijakan berikut ke kunci tersebut untuk mengizinkan Amazon MWAA menggunakannya untuk mengenkripsi data Anda.

Jika kunci KMS yang dikelola pelanggan yang Anda gunakan untuk lingkungan Amazon MWAA belum dikonfigurasi untuk digunakan CloudWatch, Anda harus memperbarui kebijakan kunci untuk mengizinkan Log teren kripsi. CloudWatch Untuk informasi selengkapnya, lihat Enkripsi data log dalam CloudWatch menggunakan AWS Key Management Service layanan.

Contoh berikut mewakili kebijakan utama untuk CloudWatch Log. Ganti nilai sampel yang disediakan untuk wilayah tersebut.

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