Enkripsi data saat istirahat untuk Amazon DataZone - Amazon DataZone

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

Enkripsi data saat istirahat untuk Amazon DataZone

Enkripsi data saat istirahat secara default membantu mengurangi overhead operasional dan kompleksitas yang terlibat dalam melindungi data sensitif. Pada saat yang sama, ini memungkinkan Anda untuk membangun aplikasi aman yang memenuhi kepatuhan enkripsi yang ketat dan persyaratan peraturan.

Amazon DataZone menggunakan kunci yang AWS dimiliki default untuk mengenkripsi data Anda secara otomatis saat istirahat. Anda tidak dapat melihat, mengelola, atau mengaudit penggunaan kunci yang AWS dimiliki. Untuk informasi selengkapnya, lihat kunci AWS yang dimiliki.

Meskipun Anda tidak dapat menonaktifkan lapisan enkripsi ini atau memilih jenis enkripsi alternatif, Anda dapat menambahkan lapisan enkripsi kedua di atas kunci enkripsi yang ada AWS dengan memilih kunci yang dikelola pelanggan saat Anda membuat domain Amazon DataZone . Amazon DataZone mendukung penggunaan kunci terkelola pelanggan simetris yang dapat Anda buat, miliki, dan kelola untuk menambahkan lapisan enkripsi kedua di atas enkripsi yang AWS dimiliki yang ada. Karena Anda memiliki kendali penuh atas lapisan enkripsi ini, di dalamnya Anda dapat melakukan tugas-tugas berikut:

  • Menetapkan dan memelihara kebijakan utama

  • Menetapkan dan memelihara IAM kebijakan dan hibah

  • Mengaktifkan dan menonaktifkan kebijakan utama

  • Putar bahan kriptografi kunci

  • Tambahkan tag

  • Buat alias kunci

  • Kunci jadwal untuk penghapusan

Untuk informasi selengkapnya, lihat Kunci terkelola pelanggan.

catatan

Amazon DataZone secara otomatis mengaktifkan enkripsi saat istirahat menggunakan kunci yang AWS dimiliki untuk melindungi data pelanggan tanpa biaya.

AWS KMSbiaya berlaku untuk menggunakan kunci yang dikelola pelanggan. Untuk informasi selengkapnya tentang harga, lihat Harga Layanan Manajemen AWS Utama.

Bagaimana Amazon DataZone menggunakan hibah di AWS KMS

Amazon DataZone membutuhkan tiga hibah untuk menggunakan kunci yang dikelola pelanggan Anda. Saat Anda membuat DataZone domain Amazon yang dienkripsi dengan kunci yang dikelola pelanggan, Amazon DataZone membuat hibah dan sub-hibah atas nama Anda dengan mengirimkan permintaan ke. CreateGrant AWS KMS Hibah AWS KMS digunakan untuk memberi Amazon DataZone akses ke KMS kunci di akun Anda. Amazon DataZone membuat hibah berikut untuk menggunakan kunci terkelola pelanggan Anda untuk operasi internal berikut:

Satu hibah untuk mengenkripsi data Anda saat istirahat untuk operasi berikut:

  • Kirim DescribeKeypermintaan AWS KMS untuk memverifikasi bahwa ID KMS kunci terkelola pelanggan simetris yang dimasukkan saat membuat koleksi DataZone domain Amazon valid.

  • Kirim GenerateDataKeyrequestske AWS KMS untuk menghasilkan kunci data yang dienkripsi oleh kunci yang dikelola pelanggan Anda.

  • Kirim permintaan Dekripsi ke AWS KMS untuk mendekripsi kunci data terenkripsi sehingga mereka dapat digunakan untuk mengenkripsi data Anda.

  • RetireGrantuntuk menghentikan hibah saat domain dihapus.

Dua hibah untuk pencarian dan penemuan data Anda:

Anda dapat mencabut akses ke hibah, atau menghapus akses layanan ke kunci yang dikelola pelanggan kapan saja. Jika Anda melakukannya, Amazon DataZone tidak akan dapat mengakses data apa pun yang dienkripsi oleh kunci yang dikelola pelanggan, yang memengaruhi operasi yang bergantung pada data tersebut. Misalnya, jika Anda mencoba mendapatkan detail Aset Data yang tidak DataZone dapat diakses Amazon, maka operasi akan mengembalikan AccessDeniedException kesalahan.

Buat kunci terkelola pelanggan

Anda dapat membuat kunci terkelola pelanggan simetris dengan menggunakan AWS Management Console, atau. AWS KMS APIs

Untuk membuat kunci terkelola pelanggan simetris, ikuti langkah-langkah untuk Membuat kunci terkelola pelanggan simetris di Panduan Pengembang Layanan Manajemen AWS Kunci.

Kebijakan utama - kebijakan utama mengontrol akses ke kunci yang dikelola pelanggan Anda. Setiap kunci yang dikelola pelanggan harus memiliki persis satu kebijakan utama, yang berisi pernyataan yang menentukan siapa yang dapat menggunakan kunci dan bagaimana mereka dapat menggunakannya. Saat membuat kunci terkelola pelanggan, Anda dapat menentukan kebijakan kunci. Untuk informasi selengkapnya, lihat Mengelola akses ke kunci terkelola pelanggan di Panduan Pengembang Layanan Manajemen AWS Kunci.

Untuk menggunakan kunci yang dikelola pelanggan dengan DataZone sumber daya Amazon Anda, API operasi berikut harus diizinkan dalam kebijakan utama:

  • kms: CreateGrant — menambahkan hibah ke kunci yang dikelola pelanggan. Memberikan akses kontrol ke KMS kunci tertentu, yang memungkinkan akses ke operasi hibah yang DataZone dibutuhkan Amazon. Untuk informasi selengkapnya tentang Menggunakan Hibah, lihat Panduan Pengembang Layanan Manajemen AWS Utama.

  • kms: DescribeKey — menyediakan detail kunci yang dikelola pelanggan untuk memungkinkan Amazon DataZone memvalidasi kunci.

  • kms: GenerateDataKey — mengembalikan kunci data simetris yang unik untuk digunakan di luar. AWS KMS

  • KMS: Decrypt — mendekripsi ciphertext yang dienkripsi oleh kunci. KMS

Berikut ini adalah contoh pernyataan kebijakan yang dapat Anda tambahkan untuk Amazon DataZone:

"Statement" : [ { "Sid" : "Allow access to principals authorized to manage Amazon DataZone", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::<account_id>:root" }, "Action" : [ "kms:DescribeKey", "kms:CreateGrant", "kms:GenerateDataKey", "kms:Decrypt" ], "Resource" : "arn:aws:kms:region:<account_id>:key/key_ID", } ]
catatan

Tolak KMS kebijakan tidak diterapkan untuk sumber daya yang diakses melalui portal DataZone data Amazon.

Untuk informasi selengkapnya tentang menentukan izin dalam kebijakan, lihat Panduan Pengembang Layanan Manajemen AWS Kunci.

Untuk informasi selengkapnya tentang akses kunci pemecahan masalah, lihat Panduan Pengembang Layanan Manajemen AWS Kunci.

Menentukan kunci yang dikelola pelanggan untuk Amazon DataZone

Konteks DataZone enkripsi Amazon

Konteks enkripsi adalah kumpulan opsional pasangan kunci-nilai yang berisi informasi kontekstual tambahan tentang data.

AWS KMSmenggunakan konteks enkripsi sebagai data otentikasi tambahan untuk mendukung enkripsi yang diautentikasi. Bila Anda menyertakan konteks enkripsi dalam permintaan untuk mengenkripsi data, AWS KMS mengikat konteks enkripsi ke data terenkripsi. Untuk mendekripsi data, Anda menyertakan konteks enkripsi yang sama dalam permintaan.

Amazon DataZone menggunakan konteks enkripsi berikut:

"encryptionContextSubset": { "aws:datazone:domainId": "{root-domain-uuid}" }

Menggunakan konteks enkripsi untuk pemantauan - saat Anda menggunakan kunci terkelola pelanggan simetris untuk mengenkripsi Amazon DataZone, Anda juga dapat menggunakan konteks enkripsi dalam catatan audit dan log untuk mengidentifikasi bagaimana kunci yang dikelola pelanggan digunakan. Konteks enkripsi juga muncul di log yang dihasilkan oleh AWS CloudTrail atau Amazon CloudWatch Logs.

Menggunakan konteks enkripsi untuk mengontrol akses ke kunci terkelola pelanggan Anda - Anda dapat menggunakan konteks enkripsi dalam kebijakan dan IAM kebijakan utama sebagai kondisi untuk mengontrol akses ke kunci terkelola pelanggan simetris Anda. Anda juga dapat menggunakan kendala konteks enkripsi dalam hibah.

Amazon DataZone menggunakan batasan konteks enkripsi dalam hibah untuk mengontrol akses ke kunci yang dikelola pelanggan di akun atau wilayah Anda. Batasan hibah mengharuskan operasi yang diizinkan oleh hibah menggunakan konteks enkripsi yang ditentukan.

Berikut ini adalah contoh pernyataan kebijakan kunci untuk memberikan akses ke kunci yang dikelola pelanggan untuk konteks enkripsi tertentu. Kondisi dalam pernyataan kebijakan ini mengharuskan hibah memiliki batasan konteks enkripsi yang menentukan konteks enkripsi.

{ "Sid": "Enable DescribeKey", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleReadOnlyRole" }, "Action": "kms:DescribeKey", "Resource": "*" },{ "Sid": "Enable Decrypt, GenerateDataKey", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleReadOnlyRole" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:aws:datazone:domainId": "{root-domain-uuid}" } } }

Memantau kunci enkripsi Anda untuk Amazon DataZone

Saat Anda menggunakan kunci yang dikelola AWS KMS pelanggan dengan DataZone sumber daya Amazon, Anda dapat menggunakannya AWS CloudTrailuntuk melacak permintaan yang DataZone dikirimkan Amazon AWS KMS. Contoh berikut adalah AWS CloudTrail peristiwa untukCreateGrant,, GenerateDataKeyDecrypt, dan DescribeKey untuk memantau KMS operasi yang dipanggil oleh Amazon DataZone untuk mengakses data yang dienkripsi oleh kunci yang dikelola pelanggan Anda. Saat Anda menggunakan kunci yang dikelola AWS KMS pelanggan untuk mengenkripsi DataZone domain Amazon Anda, Amazon DataZone mengirimkan CreateGrant permintaan atas nama Anda untuk mengakses KMS kunci di AWS akun Anda. Hibah yang DataZone dibuat Amazon khusus untuk sumber daya yang terkait dengan kunci yang dikelola AWS KMS pelanggan. Selain itu, Amazon DataZone menggunakan RetireGrant operasi untuk menghapus hibah saat Anda menghapus domain. Contoh peristiwa berikut mencatat CreateGrant operasi:

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE3", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01", "accountId": "111122223333", "userName": "Admin" }, "webIdFederationData": {}, "attributes": { "mfaAuthenticated": "false", "creationDate": "2021-04-22T17:02:00Z" } }, "invokedBy": "datazone.amazonaws.com" }, "eventTime": "2021-04-22T17:07:02Z", "eventSource": "kms.amazonaws.com", "eventName": "CreateGrant", "awsRegion": "us-west-2", "sourceIPAddress": "172.12.34.56", "userAgent": "ExampleDesktop/1.0 (V1; OS)", "requestParameters": { "constraints": { "encryptionContextSubset": { "aws:datazone:domainId": "SAMPLE-root-domain-uuid" } }, "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE", "operations": [ "Decrypt", "GenerateDataKey", "RetireGrant", "DescribeKey" ], "granteePrincipal": "datazone.us-west-2.amazonaws.com" }, "responseElements": { "grantId": "0ab0ac0d0b000f00ea00cc0a0e00fc00bce000c000f0000000c0bc0a0000aaafSAMPLE", "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" }, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": false, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" } ], "eventType": "AwsApiCall", "managementEvent": true, "eventCategory": "Management", "recipientAccountId": "111122223333" }

Membuat lingkungan Data Lake yang melibatkan katalog Glue terenkripsi AWS

Dalam kasus penggunaan lanjutan, saat Anda bekerja dengan katalog AWS Glue yang dienkripsi, Anda harus memberikan akses ke DataZone layanan Amazon untuk menggunakan kunci yang dikelola pelangganKMS. Anda dapat melakukan ini dengan memperbarui KMS kebijakan kustom Anda dan menambahkan tag ke kunci. Untuk memberikan akses ke DataZone layanan Amazon agar bekerja dengan data dalam katalog AWS Glue terenkripsi, lengkapi yang berikut ini:

  • Tambahkan kebijakan berikut ke KMS kunci kustom Anda. Untuk informasi selengkapnya, lihat Mengubah kebijakan utama.

    { "Sid": "Allow datazone environment roles to use the key", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "kms:Decrypt", "kms:Describe*", "kms:Get*" ], "Resource": "*", "Condition": { "StringLike": { "aws:PrincipalArn": "arn:aws:iam::*:role/*datazone_usr*" } } }
  • Tambahkan tag berikut ke KMS kunci kustom Anda. Untuk informasi selengkapnya, lihat Menggunakan tag untuk mengontrol akses ke KMS kunci.

    key: AmazonDataZoneEnvironment value: all