Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Keamanan dan kontrol akses
Amazon SageMaker Feature Store memungkinkan Anda membuat dua jenis toko: toko online atau toko offline. Toko online digunakan untuk kasus penggunaan inferensi real-time latensi rendah sedangkan toko offline digunakan untuk pelatihan dan kasus penggunaan inferensi batch. Saat Anda membuat grup fitur untuk penggunaan online atau offline, Anda dapat memberikan kunci yang dikelola AWS Key Management Service pelanggan untuk mengenkripsi semua data Anda saat istirahat. Jika Anda tidak memberikan AWS KMS kunci maka kami memastikan bahwa data Anda dienkripsi di sisi server menggunakan kunci yang AWS dimiliki atau AWS KMS kunci AWS terkelola AWS KMS . Saat membuat grup fitur, Anda dapat memilih jenis penyimpanan dan secara opsional memberikan AWS KMS kunci untuk mengenkripsi data, lalu Anda dapat memanggil berbagai API untuk manajemen data sepertiPutRecord,,, GetRecordDeleteRecord, ListRecords dan. BatchWriteRecord
Fitur Store memungkinkan Anda untuk memberikan atau menolak akses ke individu di tingkat grup fitur dan memungkinkan akses lintas akun ke Toko Fitur. Misalnya, Anda dapat mengatur akun pengembang untuk mengakses toko offline untuk pelatihan model dan eksplorasi yang tidak memiliki akses tulis ke akun produksi. Anda dapat mengatur akun produksi untuk mengakses toko online dan offline. Toko Fitur menggunakan AWS KMS kunci pelanggan unik untuk enkripsi data offline dan toko online saat istirahat. Kontrol akses diaktifkan melalui API dan akses AWS KMS kunci. Anda juga dapat membuat kontrol akses tingkat grup fitur.
Untuk informasi selengkapnya tentang kunci terkelola pelanggan, lihat kunci yang dikelola pelanggan. Untuk informasi lebih lanjut tentang AWS KMS, lihat AWS KMS
Penggunaan AWS KMS izin untuk Amazon SageMaker Feature Store
Enkripsi saat istirahat melindungi Toko Fitur di bawah kunci yang dikelola AWS KMS pelanggan. Secara default, ia menggunakan kunci yang dikelola pelanggan yang AWS dimiliki untuk OnlineStore dan kunci yang AWS dikelola pelanggan yang dikelola untuk OfflineStore. Feature Store mendukung opsi untuk mengenkripsi toko online atau offline Anda di bawah kunci yang dikelola pelanggan. Anda dapat memilih kunci yang dikelola pelanggan untuk Toko Fitur saat Anda membuat toko online atau offline, dan mereka dapat berbeda untuk setiap toko.
Feature Store hanya mendukung kunci yang dikelola pelanggan simetris. Anda tidak dapat menggunakan kunci yang dikelola pelanggan asimetris untuk mengenkripsi data Anda di toko online atau offline Anda. Untuk bantuan menentukan apakah kunci yang dikelola pelanggan simetris atau asimetris, lihat Mengidentifikasi kunci terkelola pelanggan simetris dan asimetris.
Saat Anda menggunakan kunci yang dikelola pelanggan, Anda dapat memanfaatkan fitur-fitur berikut:
-
Anda membuat dan mengelola kunci terkelola pelanggan, termasuk menetapkan kebijakan utama, kebijakan IAM, dan hibah untuk mengontrol akses ke kunci yang dikelola pelanggan. Anda dapat mengaktifkan dan menonaktifkan kunci yang dikelola pelanggan, mengaktifkan dan menonaktifkan rotasi kunci otomatis, dan menghapus kunci yang dikelola pelanggan saat tidak lagi digunakan.
-
Anda dapat menggunakan kunci yang dikelola pelanggan dengan material kunci yang diimpor atau kunci yang dikelola pelanggan di penyimpanan kunci kustom yang Anda miliki dan kelola.
Anda tidak membayar biaya bulanan untuk kunci yang dikelola pelanggan yang AWS dimiliki. Kunci yang dikelola pelanggan akan dikenakan biaya
Mengotorisasi penggunaan Kunci yang dikelola pelanggan untuk toko online Anda
Jika Anda menggunakan kunci yang dikelola pelanggan untuk melindungi toko online Anda, kebijakan pada kunci yang dikelola pelanggan tersebut harus memberikan izin kepada Toko Fitur untuk menggunakannya atas nama Anda. Anda memiliki kendali penuh atas kebijakan dan hibah pada kunci yang dikelola pelanggan.
Toko Fitur tidak memerlukan otorisasi tambahan untuk menggunakan kunci KMS yang AWS dimiliki default untuk melindungi toko online atau offline Anda di akun Anda AWS .
Kebijakan kunci yang dikelola pelanggan
Ketika Anda memilih kunci yang dikelola pelanggan untuk melindungi Toko Online Anda, Toko Fitur harus memiliki izin untuk menggunakan kunci yang dikelola pelanggan atas nama prinsipal yang membuat pilihan. Prinsipal tersebut, pengguna atau peran, harus memiliki izin pada kunci yang dikelola pelanggan yang diperlukan oleh Feature Store. Anda dapat memberikan izin ini dalam kebijakan kunci, kebijakan IAM, atau pemberian izin. Minimal, Toko Fitur memerlukan izin berikut pada kunci yang dikelola pelanggan:
-
“kms:Encrypt”, “kms:Decrypt”, “kms: “, “kms: DescribeKey “, “kms: CreateGrant “, “kms: RetireGrant “, “kms: “, ReEncryptFrom “kms: “, “kms: ReEncryptTo “, “kms:GenerateDataKey” ListAliases ListGrants RevokeGrant
Sebagai contoh, kebijakan kunci berikut hanya menyediakan izin yang diperlukan. Kebijakan ini memiliki efek sebagai berikut:
-
Memungkinkan Toko Fitur untuk menggunakan kunci yang dikelola pelanggan dalam operasi kriptografi dan membuat hibah, tetapi hanya jika bertindak atas nama kepala sekolah di akun yang memiliki izin untuk menggunakan Toko Fitur Anda. Jika prinsipal yang ditentukan dalam pernyataan kebijakan tidak memiliki izin untuk menggunakan Feature Store, panggilan gagal, meskipun berasal dari layanan Feature Store.
-
Kunci ViaService kondisi kms: mengizinkan izin hanya jika permintaan berasal dari FeatureStore atas nama kepala sekolah yang tercantum dalam pernyataan kebijakan. Pengguna utama ini tidak dapat memanggil operasi ini secara langsung. Nilai untuk
kms:ViaServiceseharusnyasagemaker.*.amazonaws.com.rproxy.goskope.com.catatan
Kunci
kms:ViaServicekondisi hanya dapat digunakan untuk AWS KMS kunci yang dikelola pelanggan toko online, dan tidak dapat digunakan untuk toko offline. Jika Anda menambahkan kondisi khusus ini ke kunci yang dikelola pelanggan Anda, dan menggunakan AWS KMS kunci yang sama untuk toko online dan offline, maka itu akan gagal operasiCreateFeatureGroupAPI. -
Memberikan akses hanya-baca kepada administrator kunci terkelola pelanggan ke kunci terkelola pelanggan dan izin untuk mencabut hibah, termasuk hibah yang digunakan Feature Store untuk melindungi data Anda.
Sebelum menggunakan kebijakan kunci contoh, ganti prinsip contoh dengan prinsip aktual dari akun Anda. AWS
Menggunakan hibah untuk mengotorisasi Toko Fitur
Selain kebijakan utama, Feature Store menggunakan hibah untuk menetapkan izin pada kunci yang dikelola pelanggan. Untuk melihat hibah pada kunci yang dikelola pelanggan di akun Anda, gunakan ListGrants operasi. Toko Fitur tidak memerlukan hibah, atau izin tambahan apa pun, untuk menggunakan kunci yang dikelola pelanggan yang AWS dimiliki untuk melindungi toko online Anda.
Toko Fitur menggunakan izin hibah saat melakukan pemeliharaan sistem latar belakang dan tugas perlindungan data berkelanjutan.
Setiap hibah khusus untuk toko online. Jika akun menyertakan beberapa toko yang dienkripsi di bawah kunci yang dikelola pelanggan yang sama, akan ada hibah unik per FeatureGroup menggunakan kunci yang dikelola pelanggan yang sama.
Kebijakan utama juga dapat memungkinkan akun untuk mencabut hibah pada kunci yang dikelola pelanggan. Namun, jika Anda mencabut hibah di toko online terenkripsi aktif, Toko Fitur tidak akan dapat melindungi dan memelihara toko.
Memantau interaksi Feature Store dengan AWS KMS
Jika Anda menggunakan kunci yang dikelola pelanggan untuk melindungi toko online atau offline Anda, Anda dapat menggunakan AWS CloudTrail log untuk melacak permintaan yang dikirimkan oleh Feature Store atas nama Anda. AWS KMS
Mengakses data di toko online Anda
Penelepon (baik pengguna atau peran) untuk DataPlane operasi harus memiliki izin tindakan IAM yang sesuai pada sumber daya grup fitur target. Selain itu, semua DataPlane operasi memerlukan kms:Decrypt kunci yang dikelola pelanggan.
PutRecord— Membutuhkan
sagemaker:PutRecordUpdateRecord— Membutuhkan
sagemaker:PutRecord.UpdateRecordtidak memiliki tindakan IAM terpisah. Sebaliknya, IAM memberi wewenangUpdateRecordterhadap tindakan tersebut.sagemaker:PutRecordKebijakan apa pun yang mengizinkan atau menyangkalsagemaker:PutRecordjuga berlaku untukUpdateRecord. Anda tidak perlu memperbarui kebijakan yang ada.GetRecord— Membutuhkan
sagemaker:GetRecordDeleteRecord— Membutuhkan
sagemaker:DeleteRecordListRecords— Membutuhkan
sagemaker:ListRecordsBatchWriteRecord— Membutuhkan
sagemaker:BatchWriteRecorddansagemaker:PutRecordBatchGetRecord— Membutuhkan
sagemaker:BatchGetRecord
catatan
BatchWriteRecordAPI mengharuskan pemanggil untuk memiliki keduanya sagemaker:BatchWriteRecord dan sagemaker:PutRecord izin pada grup fitur target. Penolakan eksplisit pada salah satu tindakan memblokir permintaan.
Tombol kondisi untuk kontrol UpdateRecordakses
IAM memberi wewenang UpdateRecord terhadap tindakan tersebut. sagemaker:PutRecord Dengan tombol kondisi ini, Anda dapat menulis kebijakan yang lebih terperinci. Tombol memungkinkan Anda membedakan pembaruan rekaman sebagian dari penulisan catatan lengkap:
-
sagemaker:IsUpdateRecord— Setel ketruesaat permintaan adalahUpdateRecordpanggilan, danfalsesaat permintaan adalahPutRecordpanggilan. Kunci ini tidak ada untuk DataPlane operasi lain, termasukPutRecordpemeriksaan yangBatchWriteRecordmelakukan. -
sagemaker:UpdatableFeatures— Daftar nama fitur yang termasuk dalamUpdateRecordpermintaan. IAM menghilangkan kunci ini ketika permintaan tidak menentukan fitur apa pun; kuncinya tidak pernah hadir dengan daftar kosong. Ini mencegahForAllValueskondisi dievaluasi terhadap set kosong. Kunci ini tidak ada padaPutRecordpermintaan.
Dengan kunci kondisi ini, Anda dapat membuat kebijakan seperti berikut ini:
-
Kebijakan IAM JSON berikut hanya mengizinkan
UpdateRecordpanggilan dan memblokirPutRecordpanggilan langsung pada grup fitur. Kebijakan ini juga memblokirBatchWriteRecord.sagemaker:IsUpdateRecordKuncinya tidak ada selama pemeriksaansagemaker:PutRecordotorisasi yangBatchWriteRecordmelakukan. Jika Anda perlu mengizinkanBatchWriteRecord, tambahkan pernyataan terpisah tanpaIsUpdateRecordsyarat:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "sagemaker:PutRecord", "Resource": "arn:aws:sagemaker:us-east-1:111122223333:feature-group/test-fg", "Condition": { "Bool": { "sagemaker:IsUpdateRecord": "true" } } } ] } -
Kebijakan IAM JSON berikut memungkinkan
PutRecordpanggilan dan memblokirUpdateRecordpanggilan pada grup fitur. OperatorBoolIfExistskondisi memastikan pernyataan juga cocok dengansagemaker:PutRecordpemeriksaan yangBatchWriteRecorddilakukan. UntukBatchWriteRecord, konteks otorisasi tidak termasuk:sagemaker:IsUpdateRecord{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "sagemaker:PutRecord", "Resource": "arn:aws:sagemaker:us-east-1:111122223333:feature-group/test-fg", "Condition": { "BoolIfExists": { "sagemaker:IsUpdateRecord": "false" } } } ] } -
Kebijakan IAM JSON berikut menolak
UpdateRecordpanggilan yang mencoba memodifikasi fitur sensitif, terlepas dari fitur lain apa yang termasuk dalam permintaan:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "sagemaker:PutRecord", "Resource": "arn:aws:sagemaker:us-east-1:111122223333:feature-group/test-fg", "Condition": { "Bool": { "sagemaker:IsUpdateRecord": "true" }, "ForAnyValue:StringEquals": { "sagemaker:UpdatableFeatures": ["ssn", "credit_score"] } } } ] } -
Kebijakan IAM JSON berikut mengizinkan
UpdateRecordpanggilan hanya jika semua fitur yang diminta ada di daftar aman untuk diperbarui yang disetujui.NullKondisisagemaker:UpdatableFeaturesharus ada, karenaForAllValuesoperator sebaliknya mengevaluasitruekapan kunci tidak ada:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "sagemaker:PutRecord", "Resource": "arn:aws:sagemaker:us-east-1:111122223333:feature-group/test-fg", "Condition": { "Bool": { "sagemaker:IsUpdateRecord": "true" }, "Null": { "sagemaker:UpdatableFeatures": "false" }, "ForAllValues:StringEquals": { "sagemaker:UpdatableFeatures": ["last_login", "click_count"] } } } ] }
catatan
Kebijakan yang memberikan atau menolak sagemaker:PutRecord tanpa syarat apa pun sagemaker:IsUpdateRecord terus berlaku untuk keduanya PutRecord dan UpdateRecord panggilan, jadi Anda tidak perlu mengubah kebijakan kecuali Anda ingin membedakan antara kedua operasi tersebut.
Untuk informasi selengkapnya tentang menggunakan kunci kondisi IAM, lihat elemen kebijakan IAM JSON: Operator kondisi di Panduan Pengguna IAM.
Mengotorisasi penggunaan kunci yang dikelola pelanggan untuk toko offline Anda
RoLearn yang diteruskan sebagai parameter createFeatureGroup harus memiliki izin di bawah ini untuk: OfflineStore KmsKeyId
"kms:GenerateDataKey"
catatan
Kebijakan utama untuk toko online juga berfungsi untuk toko offline, hanya ketika kms:ViaService kondisinya tidak ditentukan.
penting
Anda dapat menentukan kunci AWS KMS enkripsi untuk mengenkripsi lokasi Amazon S3 yang digunakan untuk feature store offline saat membuat grup fitur. Jika kunci AWS KMS enkripsi tidak ditentukan, secara default kami mengenkripsi semua data saat istirahat menggunakan AWS KMS kunci. Dengan mendefinisikan kunci tingkat ember Anda untuk SSE, Anda dapat mengurangi biaya AWS KMS permintaan hingga 99 persen.