Enkripsi dalam Otomasi Amazon Bedrock Data - Amazon Bedrock

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

Enkripsi dalam Otomasi Amazon Bedrock Data

Amazon Bedrock Otomasi Data (BDA) menggunakan enkripsi untuk melindungi data Anda saat istirahat. Ini termasuk cetak biru, proyek, dan wawasan yang diekstraksi yang disimpan oleh layanan. BDA menawarkan dua opsi untuk mengenkripsi data Anda:

  1. AWS kunci yang dimiliki — Secara default, BDA mengenkripsi data Anda dengan AWS kunci yang dimiliki. Anda tidak dapat melihat, mengelola, atau menggunakan kunci yang dimiliki AWS, atau mengaudit penggunaannya. Namun, Anda tidak perlu mengambil tindakan apa pun atau mengubah program apa pun untuk melindungi kunci yang mengenkripsi data Anda. Untuk informasi selengkapnya, lihat kunci yang AWS dimiliki di Panduan Pengembang Layanan Manajemen AWS Kunci.

  2. Kunci terkelola pelanggan — Anda dapat memilih untuk mengenkripsi data Anda dengan kunci terkelola pelanggan yang Anda kelola sendiri. Untuk informasi selengkapnya tentang AWS KMS kunci, lihat Kunci yang dikelola pelanggan di Panduan Pengembang Layanan Manajemen AWS Kunci. BDA tidak mendukung kunci yang dikelola pelanggan untuk digunakan di Amazon Bedrock konsol, hanya untuk operasi API.

Amazon Bedrock Otomatisasi Data secara otomatis memungkinkan enkripsi saat istirahat menggunakan kunci yang AWS dimiliki tanpa biaya. Jika Anda menggunakan kunci yang dikelola pelanggan, AWS KMS dikenakan biaya. Untuk informasi lebih lanjut tentang harga, lihat AWS KMS harga.

Bagaimana Amazon Bedrock menggunakan hibah di AWS KMS

Jika Anda menentukan kunci terkelola pelanggan untuk enkripsi BDA Anda saat memanggil invokeDataAutomation Async, layanan akan membuat hibah yang terkait dengan sumber daya Anda atas nama Anda dengan mengirimkan permintaan ke. CreateGrant AWS KMS Hibah ini memungkinkan BDA untuk mengakses dan menggunakan kunci yang dikelola pelanggan Anda.

BDA menggunakan hibah untuk kunci yang dikelola pelanggan Anda untuk operasi internal berikut:

  • DescribeKey — Kirim permintaan AWS KMS untuk memverifikasi bahwa ID AWS KMS kunci terkelola pelanggan simetris yang Anda berikan valid.

  • GenerateDataKey dan Dekripsi - Kirim permintaan AWS KMS untuk menghasilkan kunci data yang dienkripsi oleh kunci yang dikelola pelanggan Anda dan mendekripsi kunci data terenkripsi sehingga mereka dapat digunakan untuk mengenkripsi sumber daya Anda.

  • CreateGrant — Kirim permintaan AWS KMS untuk membuat hibah cakupan bawah dengan subset dari operasi di atas (DescribeKey,, Dekripsi) GenerateDataKey, untuk eksekusi operasi asinkron.

Anda memiliki akses penuh ke AWS KMS kunci yang dikelola pelanggan Anda. Anda dapat mencabut akses ke hibah dengan mengikuti langkah-langkah di Pensiun dan pencabutan hibah di Panduan AWS KMS Pengembang atau menghapus akses layanan ke kunci yang dikelola pelanggan Anda kapan saja dengan memodifikasi kebijakan utama. Jika Anda melakukannya, BDA tidak akan dapat mengakses sumber daya yang dienkripsi oleh kunci Anda.

Jika Anda memulai panggilan invokeDataAutomation Async baru setelah mencabut hibah, BDA akan membuat ulang hibah tersebut. Hibah dihentikan oleh BDA setelah 30 jam.

Membuat kunci yang dikelola pelanggan dan melampirkan kebijakan utama

Untuk mengenkripsi sumber daya BDA dengan kunci yang Anda buat dan kelola, ikuti langkah-langkah umum berikut:

  1. (Prasyarat) Pastikan bahwa peran IAM Anda memiliki izin untuk tindakan tersebut. CreateKey

  2. Ikuti langkah-langkah di Membuat kunci untuk membuat kunci yang dikelola pelanggan menggunakan AWS KMS konsol atau CreateKey operasi.

  3. Pembuatan kunci mengembalikan ARN yang dapat Anda gunakan untuk operasi yang memerlukan penggunaan kunci (misalnya, saat membuat proyek atau cetak biru di BDA), seperti operasi Async. invokeDataAutomation

  4. Buat dan lampirkan kebijakan kunci ke kunci dengan izin yang diperlukan. Untuk membuat kebijakan utama, ikuti langkah-langkah di Membuat kebijakan utama di Panduan AWS KMS Pengembang.

Izin dan kebijakan utama untuk sumber daya Otomasi Amazon Bedrock Data

Setelah Anda membuat AWS KMS kunci, Anda melampirkan kebijakan kunci untuk itu. AWS KMS Tindakan berikut digunakan untuk kunci yang mengenkripsi sumber daya BDA:

  1. kms:CreateGrant — Membuat hibah untuk kunci yang dikelola pelanggan dengan mengizinkan akses layanan BDA ke AWS KMS kunci yang ditentukan melalui operasi hibah, yang diperlukan untuk InvokeDataAutomationAsync.

  2. kms:DescribeKey — Memberikan detail kunci yang dikelola pelanggan untuk memungkinkan BDA memvalidasi kunci.

  3. kms:GenerateDataKey — Memberikan detail kunci yang dikelola pelanggan untuk memungkinkan BDA memvalidasi akses pengguna.

  4. kms:Dekripsi — Mendekripsi ciphertext yang disimpan untuk memvalidasi bahwa peran memiliki akses yang tepat ke kunci yang mengenkripsi sumber daya BDA. AWS KMS

Kebijakan utama untuk Otomasi Amazon Bedrock Data

Untuk menggunakan kunci terkelola pelanggan Anda untuk mengenkripsi sumber daya BDA, sertakan pernyataan berikut dalam kebijakan dan ganti kunci Anda ${account-id}${region}, serta ${key-id} dengan nilai spesifik Anda. :

{ "Version": "2012-10-17", "Id": "KMS key policy for a key to encrypt data for BDA resource", "Statement": [ { "Sid": "Permissions for encryption of data for BDA resources", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::${account-id}:role/${role}" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:DescribeKey", "kms:CreateGrant" ], "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": [ "bedrock.${region}.amazonaws.com" ] } } } ] }

Izin peran IAM

Peran IAM yang digunakan untuk berinteraksi dengan BDA dan AWS KMS harus memiliki izin berikut, ganti ${region}${account-id}, dan ${key-id} dengan nilai spesifik Anda:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt", "kms:DescribeKey", "kms:CreateGrant" ], "Resource": "arn:aws:kms:${region}:${account-id}:key/${key-id}", "Condition": { "StringLike": { "kms:ViaService": [ "bedrock.${region}.amazonaws.com" ] } } } }

Konteks enkripsi Otomasi Amazon Bedrock

BDA menggunakan konteks enkripsi yang sama di semua operasi kriptografi AWS KMS, di mana kuncinya aws:bedrock:data-automation-customer-account-id adalah dan nilainya adalah ID akun AWS Anda, contoh konteks enkripsi ada di bawah ini.

"encryptionContext": { "bedrock:data-automation-customer-account-id": "account id" }
Menggunakan konteks enkripsi untuk pemantauan

Saat Anda menggunakan kunci terkelola pelanggan simetris untuk mengenkripsi data, 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 utama dan kebijakan IAM sebagai kondisi untuk mengontrol akses ke kunci terkelola pelanggan simetris Anda. Anda juga dapat menggunakan kendala konteks enkripsi dalam hibah. BDA 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, Decrypt, GenerateDataKey", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleRole" }, "Action": ["kms:DescribeKey", "kms:Decrypt", "kms:GenerateDataKey"], "Resource": "*" }, { "Sid": "Enable CreateGrant", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleRole" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:bedrock:data-automation-customer-account-id": "111122223333" }, "StringEquals": { "kms:GrantOperations": ["Decrypt", "DescribeKey", "GenerateDataKey"] } } } ]

Memantau kunci enkripsi Anda untuk Otomasi Amazon Bedrock Data

Saat Anda menggunakan kunci yang dikelola AWS KMS pelanggan dengan sumber daya Otomasi Amazon Bedrock Data, Anda dapat menggunakan AWS CloudTrailatau Amazon CloudWatchmelacak permintaan yang dikirimkan oleh Otomasi Amazon Bedrock Data AWS KMS. Berikut ini adalah contoh AWS CloudTrail peristiwa CreateGrantuntuk memantau AWS KMS operasi yang disebut oleh Otomasi Amazon Bedrock Data untuk membuat hibah utama:

{ "eventVersion": "1.09", "userIdentity": { "type": "AssumedRole", "principalId": "AROAIGDTESTANDEXAMPLE:SampleUser01", "arn": "arn:aws:sts::111122223333:assumed-role/RoleForDataAutomation/SampleUser01", "accountId": "111122223333", "accessKeyId": "EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAIGDTESTANDEXAMPLE", "arn": "arn:aws:iam::111122223333:role/RoleForDataAutomation", "accountId": "111122223333", "userName": "RoleForDataAutomation" }, "attributes": { "creationDate": "2024-05-07T21:46:28Z", "mfaAuthenticated": "false" } }, "invokedBy": "bedrock.amazonaws.com" }, "eventTime": "2024-05-07T21:49:44Z", "eventSource": "kms.amazonaws.com", "eventName": "CreateGrant", "awsRegion": "us-east-1", "sourceIPAddress": "bedrock.amazonaws.com", "userAgent": "bedrock.amazonaws.com", "requestParameters": { "granteePrincipal": "bedrock.amazonaws.com", "retiringPrincipal": "bedrock.amazonaws.com", "keyId": "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE", "constraints": { "encryptionContextSubset": { "aws:bedrock:data-automation-customer-account-id": "000000000000" } }, "operations": [ "Decrypt", "CreateGrant", "GenerateDataKey", "DescribeKey" ] }, "responseElements": { "grantId": "0ab0ac0d0b000f00ea00cc0a0e00fc00bce000c000f0000000c0bc0a0000aaafSAMPLE", "keyId": "arn:aws:kms:us-east-1: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-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }