Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Enkripsi saat diam untuk pembelajaran penguatan multi-putaran
Opsi untuk enkripsi saat istirahat
Multi-turn pekerjaan pembelajaran penguatan di Amazon SageMaker AI mengenkripsi semua data saat istirahat. Data input pelatihan Anda, data keluaran (termasuk pos pemeriksaan model dan artefak model terlatih), dan data perantara yang disimpan di Amazon S3 dienkripsi menggunakan enkripsi sisi server. Anda tidak perlu melakukan konfigurasi tambahan apa pun untuk memastikan bahwa data Anda dienkripsi saat diam.
Amazon SageMaker AI mendukung opsi enkripsi berikut untuk pekerjaan RL multi-putaran:
-
Server-side enkripsi dengan kunci KMS yang AWS dimiliki — Secara default, Amazon SageMaker AI mengenkripsi semua output pelatihan dan data perantara menggunakan kunci KMS yang AWS dimiliki. Tidak diperlukan konfigurasi tambahan.
-
Server-side enkripsi dengan AWS KMS kunci (SSE-KMS) — Anda dapat secara opsional menentukan kunci KMS yang dikelola pelanggan untuk mengenkripsi data keluaran pelatihan Anda di Amazon S3. Jika data input Anda di Amazon S3 sudah dienkripsi dengan kunci yang dikelola pelanggan, peran eksekusi harus memiliki izin untuk mendekripsi data tersebut.
Mengenkripsi data saat diam menggunakan yang dikelola pelanggan AWS KMS keys
Bagaimana RL multi-turn menggunakan kunci KMS yang dikelola pelanggan
Saat Anda menentukan kunci KMS yang dikelola pelanggan dalam konfigurasi keluaran pekerjaan RL multi-putaran Anda, Amazon SageMaker AI menggunakan kunci tersebut untuk mengenkripsi sumber daya berikut di Amazon S3:
-
Data keluaran pelatihan, termasuk artefak model terlatih (bobot adaptor LoRa)
-
Model menengah input/output (pos pemeriksaan model yang dapat dilanjutkan dan data lintasan)
-
Data dan jejak percobaan MLFlow
Saat Anda menentukan kunci KMS yang dikelola pelanggan, Amazon SageMaker AI menggunakan dua mekanisme untuk mengenkripsi data Anda:
-
Hibah — Pada saat penciptaan pekerjaan, Amazon SageMaker AI menggunakan kredenSIAL penelepon untuk membuat satu atau dua hibah pada kunci KMS:
-
Tulis hibah — Dibuat untuk setiap pekerjaan yang menentukan kunci yang dikelola pelanggan. Memungkinkan layanan untuk mengenkripsi dan mendekripsi pos pemeriksaan pekerjaan saat ini dan data sementara yang disimpan dalam platform selama pelatihan.
-
Baca hibah — Dibuat hanya untuk pekerjaan berulang yang dilanjutkan dari pos pemeriksaan pekerjaan sebelumnya ketika pekerjaan sebelumnya juga menggunakan kunci yang dikelola pelanggan. Memungkinkan layanan untuk mendekripsi data pos pemeriksaan pekerjaan sebelumnya. Hibah ini hanya mengizinkan dekripsi dan tidak memungkinkan penulisan data baru.
Semua hibah dihentikan secara otomatis saat pekerjaan selesai, memastikan bahwa layanan tidak lagi memiliki akses ke kunci setelah siklus hidup pekerjaan berakhir.
-
-
Peran eksekusi — Saat menyimpan data keluaran (artefak model, pos pemeriksaan) ke bucket Amazon S3 Anda, Amazon SageMaker AI menggunakan peran eksekusi yang Anda berikan. Peran eksekusi harus memiliki izin untuk menggunakan kunci KMS untuk enkripsi dan dekripsi melalui Amazon S3.
Selama pekerjaan pelatihan, AWS KMS operasi berikut terjadi:
-
kms:GenerateDataKey- Dipanggil melalui Amazon S3 saat menulis data output terenkripsi (artefak model, pos pemeriksaan, dan log). -
kms:Decrypt- Dipanggil melalui Amazon S3 saat membaca data input terenkripsi atau data output yang ditulis sebelumnya. -
kms:DescribeKey— Dipanggil oleh identitas penelepon pada waktu pembuatan pekerjaan untuk memverifikasi konfigurasi dan status kunci KMS. -
kms:CreateGrant— Dipanggil oleh identitas penelepon pada waktu pembuatan pekerjaan untuk memberikan izin kepada layanan untuk menyimpan data sementara dalam platform untuk siklus hidup pekerjaan.
Layanan tidak menyimpan kunci data. Setiap panggilan operasi baca atau tulis Amazon S3 AWS KMS secara independen melalui integrasi layanan Amazon S3.
Mengkonfigurasi kunci KMS yang dikelola pelanggan
Multi-turn Pekerjaan RL hanya mendukung AWS KMS kunci simetris. Multi-region kunci tidak didukung.
Mengkonfigurasi izin untuk menggunakan kunci KMS yang dikelola pelanggan
Untuk menggunakan kunci KMS yang dikelola pelanggan dengan pekerjaan RL multi-putaran, Anda harus mengonfigurasi izin pada peran eksekusi IAM dan kebijakan kunci KMS.
Izin peran eksekusi
Peran eksekusi IAM yang Anda berikan ke CreateJob API harus memiliki AWS KMS izin berikut. Izin ini memungkinkan pekerjaan pelatihan untuk mengenkripsi data keluaran dan mendekripsi data input melalui Amazon S3.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "KMSPermissionsForS3Encryption", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "arn:aws:kms:region:account-id:key/key-id", "Condition": { "StringLike": { "kms:ViaService": "s3.*.amazonaws.com" } } } ] }
-
kms:Decrypt- Diperlukan untuk membaca data input terenkripsi dan data output yang ditulis sebelumnya dari Amazon S3. -
kms:GenerateDataKey- Diperlukan untuk mengenkripsi data keluaran (artefak model, pos pemeriksaan) yang ditulis ke Amazon S3.
kms:ViaServiceKondisi ini membatasi penggunaan kunci untuk permintaan yang datang melalui Amazon S3, mencegah kunci digunakan untuk tujuan lain.
Izin peran runtime agen
Peran runtime agen yang diasumsikan oleh AgentCore agen atau AWS Lambda forwarder Amazon Bedrock Anda harus memiliki izin berikut AWS KMS . SageMaker AI memeriksa apakah pemanggil memiliki izin ini sebelum menggunakan kunci KMS selama pekerjaan pembelajaran penguatan multi-putaran (RL).
{ "Version": "2012-10-17", "Statement": [ { "Sid": "KMSPermissionsForMTRLRuntime", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "arn:aws:kms:region:account-id:key/key-id", "Condition": { "StringLike": { "kms:ViaService": "sagemaker.*.amazonaws.com" } } } ] }
kms:ViaServiceKondisi untuk peran runtime agen menentukan sagemaker.*.amazonaws.com karena layanan runtime SageMaker AI melakukan AWS KMS operasi atas nama pemanggil. Sebaliknya, peran eksekusi digunakan s3.*.amazonaws.com karena mengakses kunci melalui Amazon S3.
Kebijakan kunci KMS
Kebijakan kunci KMS default sudah mengizinkan peran IAM di akun yang sama untuk menggunakan kunci. Secara opsional, Anda dapat menambahkan pernyataan berikut untuk membatasi akses lebih lanjut ke hanya peran eksekusi dan peran runtime agen:
{ "Sid": "AllowMTRLJobEncryption", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::account-id:role/SageMakerExecutionRole", "arn:aws:iam::account-id:role/AgentRuntimeRole" ] }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": [ "s3.*.amazonaws.com", "sagemaker.*.amazonaws.com" ] } } }
Untuk mengizinkan penelepon membuat hibah dan menjelaskan kunci, tambahkan pernyataan berikut ke kebijakan kunci:
{ "Sid": "AllowCreateGrantForCaller", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::account-id:role/CallerRole" }, "Action": [ "kms:CreateGrant", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:CallerAccount": "account-id" }, "StringLike": { "kms:ViaService": "sagemaker.*.amazonaws.com" }, "Bool": { "kms:GrantIsForAWSResource": "true" } } }
Membuat pekerjaan RL multi-putaran dengan kunci KMS yang dikelola pelanggan
Untuk mengenkripsi data keluaran dengan kunci KMS yang dikelola pelanggan Anda, tentukan kunci ARN OutputDataConfig di KmsKeyArn bidang CreateJob permintaan Anda. Untuk informasi selengkapnya, lihat CreateJob di Refer SageMaker ensi API AI.
Contoh berikut menunjukkan cara menentukan kunci KMS di: OutputDataConfig
{ "OutputDataConfig": { "S3OutputPath": "s3://your-bucket/output/", "KmsKeyArn": "arn:aws:kms:region:account-id:key/key-id" } }
Jika data input Anda di Amazon S3 dienkripsi dengan kunci yang dikelola pelanggan (SSE-KMS), pastikan peran eksekusi memiliki kms:Decrypt izin untuk kunci tersebut. Anda dapat menggunakan kunci yang sama untuk enkripsi input dan output, atau kunci yang berbeda.
Mengurangi akses ke kunci KMS yang dikelola pelanggan
Anda dapat menggunakan mekanisme berikut untuk membatasi akses ke kunci KMS yang dikelola pelanggan Anda:
- sagemaker: kunci OutputKmsKeyArn kondisi
-
Gunakan kunci
sagemaker:OutputKmsKeyArnkondisi dalam kebijakan IAM pemanggil untuk mengontrol kunci KMS mana yang dapat ditentukan untuk enkripsi output pekerjaan. Hal ini memungkinkan administrator untuk menegakkan bahwa hanya kunci yang disetujui yang digunakan saat membuat pekerjaan RL multi-putaran. Untuk daftar lengkap kunci kondisi SageMaker AI, lihat Tindakan, sumber daya, dan kunci kondisi untuk Amazon SageMaker AI."Condition": { "ArnEquals": { "sagemaker:OutputKmsKeyArn": "arn:aws:kms:region:account-id:key/key-id" } } - Perlindungan wakil yang bingung
-
Gunakan kunci
aws:SourceAccountkondisiaws:SourceArnatau dalam kebijakan kunci KMS Anda untuk mencegah masalah wakil yang membingungkan. Ini memastikan bahwa hanya permintaan yang berasal dari akun atau sumber daya spesifik Anda yang dapat menggunakan kunci."Condition": { "StringEquals": { "aws:SourceAccount": "account-id" }, "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:region:account-id:job/*" } }
Konteks enkripsi untuk pekerjaan RL multi-putaran
Saat pekerjaan RL multi-putaran mengenkripsi data menggunakan kunci KMS yang dikelola pelanggan Anda, Amazon SageMaker AI menyertakan konteks enkripsi di setiap AWS KMS permintaan yang dibuat melalui Amazon S3. Konteks enkripsi adalah sekumpulan pasangan kunci-nilai yang menyediakan data otentikasi tambahan (AAD) untuk operasi. AWS KMS Konteks enkripsi masuk AWS CloudTrail dan dapat digunakan dalam kebijakan kunci KMS dan memberikan batasan untuk membatasi akses lebih lanjut.
Amazon SageMaker AI menggunakan pasangan kunci-nilai konteks enkripsi berikut untuk pekerjaan pelatihan RL multi-putaran:
{ "aws:sagemaker:finetuning-job-arn": "arn:aws:sagemaker:region:account-id:job/AgentRFT/job-name" }
Untuk pekerjaan evaluasi RL multi-putaran, konteks enkripsi menggunakan:
{ "aws:sagemaker:agent-rft-evaluation-job-arn": "arn:aws:sagemaker:region:account-id:job/AgentRFTEvaluation/job-name" }
Konteks enkripsi terikat pada pekerjaan tertentu yang membuat data terenkripsi. Setiap pekerjaan mengenkripsi outputnya sendiri dengan ARN sendiri dalam konteks enkripsi. Ini menyediakan pengikatan kriptografi antara data terenkripsi dan pekerjaan yang menghasilkannya.
Menggunakan konteks enkripsi dalam kebijakan utama
Konteks enkripsi diberlakukan secara otomatis melalui batasan hibah yang dibuat Amazon SageMaker AI pada waktu penciptaan pekerjaan. Anda tidak perlu menambahkan kondisi konteks enkripsi ke kebijakan kunci KMS agar enkripsi berfungsi dengan benar.
Jika Anda menambahkan kondisi konteks enkripsi ke kms:CreateGrant pernyataan dalam kebijakan kunci KMS Anda, Anda harus mengizinkan hibah untuk pekerjaan saat ini dan pekerjaan sebelumnya dalam rantai pelatihan berulang. Contoh berikut memungkinkan Amazon SageMaker AI untuk membuat hibah dengan pekerjaan pelatihan apa pun ARN dalam konteks enkripsi:
{ "Sid": "AllowCreateGrantForCaller", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::account-id:role/CallerRole" }, "Action": [ "kms:CreateGrant", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": "sagemaker.*.amazonaws.com", "kms:EncryptionContext:aws:sagemaker:finetuning-job-arn": "arn:aws:sagemaker:region:account-id:job/AgentRFT/*" }, "Bool": { "kms:GrantIsForAWSResource": "true" } } }
catatan
Jika Anda kms:CreateGrant membatasi ARN pada satu pekerjaan tertentu dalam konteks enkripsi, pelatihan berulang akan gagal karena Amazon SageMaker AI juga membuat hibah baca dengan ARN pekerjaan sebelumnya sebagai konteks enkripsi. Gunakan pola wildcard untuk mengizinkan hibah untuk pekerjaan apa pun di akun Anda.
Konteks enkripsi dalam pelatihan berulang
Saat Anda menjalankan pekerjaan pelatihan berulang (di mana pekerjaan berikutnya dilanjutkan dari pos pemeriksaan pekerjaan sebelumnya), konteks enkripsi untuk setiap pekerjaan berisi ARN pekerjaan itu sendiri. Amazon SageMaker AI secara otomatis mengelola dua AWS KMS hibah untuk mendukung pelatihan berulang:
-
Tulis hibah — Memungkinkan pekerjaan saat ini mengenkripsi data pos pemeriksaan sendiri menggunakan ARN pekerjaan saat ini sebagai konteks enkripsi.
-
Baca hibah — Memungkinkan pekerjaan saat ini untuk mendekripsi data pos pemeriksaan dari pekerjaan sebelumnya menggunakan ARN pekerjaan sebelumnya sebagai konteks enkripsi.
Kedua hibah secara otomatis pensiun ketika pekerjaan selesai. Anda tidak perlu menambahkan pernyataan kebijakan kunci tambahan untuk pelatihan berulang agar dapat bekerja dengan kunci yang dikelola pelanggan.
Konteks enkripsi di AWS CloudTrail
Saat Anda meninjau CloudTrail log untuk panggilan AWS KMS API yang dilakukan oleh pekerjaan RL multi-putaran, konteks enkripsi muncul di requestParameters bidang entri log. Anda dapat menggunakan informasi ini untuk menentukan pekerjaan mana yang melakukan operasi enkripsi atau dekripsi tertentu pada data Anda.
Memantau interaksi RL multi-putaran dengan AWS KMS
Anda dapat menggunakannya AWS CloudTrail untuk memantau panggilan AWS KMS API yang dilakukan atas nama pekerjaan RL multi-turn Anda. Nama CloudTrail acara berikut relevan untuk memantau penggunaan kunci KMS:
-
Decrypt— Tercatat saat pekerjaan membaca data terenkripsi dari Amazon S3. -
GenerateDataKey— Tercatat saat pekerjaan menulis data terenkripsi ke Amazon S3. -
CreateGrant— Tercatat saat penelepon membuat hibah pada waktu pembuatan pekerjaan. -
DescribeKey— Tercatat saat pekerjaan menjelaskan kunci KMS untuk validasi.
Dalam entri CloudTrail log untuk peristiwa ini, cari nilai-nilai berikut:
-
request Parameters.granteePrincipal — Untuk
CreateGrantacara, tunjukkan prinsipal layanan yang menerima hibah (job.sagemaker.amazonaws.com).
Untuk informasi selengkapnya tentang AWS KMS mencatat panggilan API, lihat Penc AWS KMS atatan panggilan API dengan AWS CloudTrail di Panduan AWS KMS Pengembang.