Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Enkripsi rekomendasi
Saat Anda menentukan rekomendasi, layanan mengenkripsi konfigurasi rekomendasi dan hasil rekomendasi menggunakan enkripsi amplop dengan En AWS kripsi SDK. kmsKeyArn Semua metadata rekomendasi lainnya (nama, jenis, status) tetap dienkripsi dengan kunci yang AWS dimiliki.
Ini kmsKeyArn ditentukan pada waktu pembuatan melaluiStartRecommendation.
Cara kerjanya
Enkripsi rekomendasi menggunakan AWS Enkripsi SDK untuk enkripsi amplop. Ketika layanan menulis atau membaca data rekomendasi, ia memanggil KMS untuk menghasilkan atau mendekripsi kunci data. Hasil rekomendasi juga disimpan di S3 dengan SSE-KMS menggunakan kunci yang dikelola pelanggan yang sama.
Pada waktu API, layanan memvalidasi bahwa pemanggil memiliki izin KMS menggunakan pemeriksaan dry-run (Sesi Akses Teruskan). Ini menangkap masalah izin dengan segera daripada gagal secara asinkron selama alur kerja rekomendasi.
Ketika alur kerja rekomendasi berjalan secara asinkron, service principal (bedrock-agentcore.amazonaws.com) mendekripsi konfigurasi dan mengenkripsi hasilnya. Prinsipal layanan harus memiliki kms:GenerateDataKey dan kms:Decrypt izin dalam kebijakan utama.
AgentCore pengoptimalan hanya mendukung kunci KMS enkripsi simetris. Kunci KMS harus berada di Wilayah yang sama AWS dengan rekomendasi.
Mengkonfigurasi izin untuk menggunakan kunci KMS yang dikelola pelanggan
Kebijakan kunci berikut memberikan izin minimum yang diperlukan untuk enkripsi rekomendasi. Kebijakan tersebut memiliki tiga pernyataan:
-
AllowCallerAccess- Memungkinkan pengguna atau peran IAM untuk memvalidasi kunci melalui
DescribeKey. -
AllowCallerCryptoOps- Memungkinkan pengguna atau peran IAM untuk mengenkripsi dan mendekripsi, dicakup oleh konteks enkripsi.
-
AllowServicePrincipalAccess- Memungkinkan prinsi AgentCore pal layanan untuk mengenkripsi dan mendekripsi data rekomendasi selama alur kerja rekomendasi asinkron, dicakup oleh akun sumber dan ARN sumber.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCallerAccess", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/MyRecommendationRole" }, "Action": "kms:DescribeKey", "Resource": "*" }, { "Sid": "AllowCallerCryptoOps", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/MyRecommendationRole" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:bedrock-agentcore:recommendationArn": "arn:aws:bedrock-agentcore:us-east-1:111122223333:recommendation/*" } } }, { "Sid": "AllowServicePrincipalAccess", "Effect": "Allow", "Principal": { "Service": "bedrock-agentcore.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "ArnLike": { "aws:SourceArn": "arn:aws:bedrock-agentcore:us-east-1:111122223333:recommendation/*" } } } ] }
Kebijakan tersebut berisi pernyataan berikut:
-
AllowCallerAccess— Memberikan
kms:DescribeKeyizin peran IAM untuk validasi kunci pada waktu pembuatan rekomendasi. Ganti111122223333dengan ID akun Anda danMyRecommendationRoledengan peran IAM atau pengguna yang memulai rekomendasi. -
AllowCallerCryptoOps— Memberikan peran
kms:GenerateDataKeydankms:Decryptizin IAM, dicakup oleh konteks enaws:bedrock-agentcore:recommendationArnkripsi. Ganti111122223333,MyRecommendationRole, danus-east-1dengan nilai-nilai Anda. Untuk mengizinkan akses ke semua rekomendasi di akun Anda, gunakan wildcard denganStringLike:arn:aws:bedrock-agentcore:us-east-1:111122223333:recommendation/*. -
AllowServicePrincipalAccess- Memberikan prinsip AgentCore layanan
kms:GenerateDataKeydankms:Decryptizin untuk mengenkripsi dan mendekripsi data rekomendasi selama alur kerja asinkron. Dicakup oleh akun sumber dan sumber ARN (aws:SourceArn) untuk mencegah serangan wakil yang membingungkan. Gantius-east-1dan111122223333dengan wilayah dan ID akun Anda.
Mengurangi akses ke kunci KMS yang dikelola pelanggan
Anda dapat menggunakan konteks enkripsi untuk mengurangi akses ke kunci yang dikelola pelanggan. AgentCore pengoptimalan mencakup konteks enkripsi berikut di semua operasi KMS:
{ "aws:bedrock-agentcore:recommendationArn": "arn:aws:bedrock-agentcore:us-east-1:111122223333:recommendation/recommendation-id" }
Anda dapat menggunakan konteks enkripsi ini dalam kondisi kebijakan utama untuk membatasi operasi KMS ke rekomendasi tertentu, seperti yang ditunjukkan dalam AllowCallerCryptoOps pernyataan dalam contoh kebijakan kunci di atas. Perhatikan bahwa digunakan AllowServicePrincipalAccess aws:SourceArn untuk pelingkupan daripada konteks enkripsi.
Memulai rekomendasi dengan kunci KMS yang dikelola pelanggan
Tentukan kmsKeyArn parameter saat memanggilStartRecommendation:
contoh
Memantau penggunaan KMS untuk rekomendasi
Nama CloudTrail acara berikut muncul untuk operasi KMS rekomendasi:
-
GenerateDataKey— Saat memulai rekomendasi (mengenkripsi konfigurasi) dan ketika alur kerja rekomendasi selesai (mengenkripsi hasilnya).encryptionContextBidang berisiaws:bedrock-agentcore:recommendationArn. -
Decrypt- Ketika alur kerja rekomendasi memproses konfigurasi, atau saat mengambil hasil rekomendasi. -
DescribeKey— Saat memvalidasi kunci pada waktu pembuatan rekomendasi.
Perilaku saat kunci menjadi tidak tersedia
Jika Anda menonaktifkan atau menghapus kunci KMS yang dikelola pelanggan yang digunakan oleh rekomendasi:
-
StartRecommendation— Gagal saat validasi dengan
ValidationException. -
GetRecommendation— Gagal
ValidationExceptionmenunjukkan kunci KMS dinonaktifkan atau dihapus. -
ListRecommendations— Berhasil karena listing hanya mengembalikan metadata dan tidak memerlukan operasi KMS.
-
DeleteRecommendation— Berhasil karena penghapusan tidak memerlukan dekripsi data rekomendasi.