Keamanan dan kontrol akses EMR Studio - Amazon SageMaker AI

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

Keamanan dan kontrol akses EMR Studio

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, kemudian Anda dapat memanggil berbagai APIs untuk manajemen data sepertiPutRecord,,. GetRecord DeleteRecord

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 yang dikelola pelanggan, lihat Kunci yang dikelola pelanggan di Panduan Developer . Untuk informasi selengkapnya tentang AWS KMS, lihat AWS KMS.

Menggunakan 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 mendapatkan bantuan tentang cara menentukan apakah kunci yang dikelola pelanggan simetris atau asimetris, lihat Mengidentifikasi kunci yang dikelola pelanggan simetris dan asimetris.

Saat menggunakan kunci yang dikelola pelanggan, Anda dapat memanfaatkan fitur-fitur berikut:

Anda tidak membayar biaya bulanan untuk CMK yang dikelola AWS . Kunci yang dikelola pelanggan akan dikenakan biaya untuk setiap panggilan API dan AWS Key Management Service kuota berlaku untuk setiap kunci yang dikelola pelanggan.

Mengizinkan penggunaan kunci yang dikelola pelanggan

Jika Anda menggunakan kunci yang dikelola pelanggan untuk melindungi toko online Anda, kebijakan pada kunci yang dikelola pelanggan harus memberikan izin Toko Fitur untuk menggunakannya atas nama Anda. Anda memiliki kontrol penuh atas kebijakan dan hibah pada CMK 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 CMK 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. Pengguna utama tersebut, pengguna atau peran, harus memiliki izin pada kunci KMS yang dibutuhkan DynamoDB. Anda dapat memberikan izin ini dalam kebijakan kunci, kebijakan IAM, atau pemberian izin. Minimal, DynamoDB 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 DynamoDB untuk menggunakan kunci KMS dalam operasi kriptografi dan membuat pemberian izin, tetapi hanya ketika bertindak atas nama pengguna utama di akun yang memiliki izin untuk menggunakan DynamoDB. Jika pengguna utama yang disebutkan dalam pernyataan kebijakan tidak memiliki izin untuk menggunakan DynamoDB, panggilan gagal, bahkan ketika panggilan berasal dari layanan DynamoDB.

  • Kunci kondisi kms:ViaService memungkinkan izin hanya ketika permintaan berasal dari DynamoDB atas nama pengguna utama yang tercantum dalam pernyataan kebijakan. Pengguna utama ini tidak dapat memanggil operasi ini secara langsung. Nilai untuk kms:ViaService seharusnyasagemaker.*.amazonaws.com.

    catatan

    Kunci kms:ViaService kondisi 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 operasi CreateFeatureGroup API.

  • Memberikan administrator kunci yang dikelola pelanggan akses hanya-baca ke kunci yang dikelola pelanggan dan izin untuk mencabut hibah, termasuk hibah yang digunakan Toko Fitur untuk melindungi data Anda.

Sebelum menggunakan kebijakan kunci contoh, ganti pengguna utama contoh dengan pengguna utama aktual dari AWS Anda.

{"Id": "key-policy-feature-store", "Version":"2012-10-17", "Statement": [ {"Sid" : "Allow access through Amazon SageMaker AI Feature Store for all principals in the account that are authorized to use Amazon SageMaker AI Feature Store", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:user/featurestore-user"}, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:DescribeKey", "kms:CreateGrant", "kms:RetireGrant", "kms:ReEncryptFrom", "kms:ReEncryptTo", "kms:GenerateDataKey", "kms:ListAliases", "kms:ListGrants" ], "Resource": "*", "Condition": {"StringLike": {"kms:ViaService" : "sagemaker.*.amazonaws.com" } } }, {"Sid": "Allow administrators to view the customer managed key and revoke grants", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:role/featurestore-admin" }, "Action": [ "kms:Describe*", "kms:Get*", "kms:List*", "kms:RevokeGrant" ], "Resource": "*" }, {"Sid": "Enable IAM User Permissions", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::123456789:root" }, "Action": "kms:*", "Resource": "*" } ] }

Menggunakan hibah untuk mengotorisasi Toko Fitur

Selain kebijakan kunci, DynamoDB menggunakan pemberian izin untuk mengatur izin pada kunci yang dikelola pelanggan atau untuk DynamoDB (). Untuk melihat pemberian izin pada kunci KMS di akun Anda, gunakan operasi ListGrants. Toko Fitur tidak memerlukan hibah, atau izin tambahan apa pun, untuk menggunakan kunci yang dikelola pelanggan yang AWS dimiliki untuk melindungi toko online Anda.

DynamoDB menggunakan izin yang diberikan ketika melakukan pemeliharaan sistem latar belakang dan tugas perlindungan data berkelanjutan.

Setiap hibah spesifik pada 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 kunci juga dapat memungkinkan akun untuk mencabut pemberian izin pada kunci KMS. Namun, jika Anda mencabut hibah di toko online terenkripsi yang aktif, Toko Fitur tidak akan dapat melindungi dan memelihara toko.

Memantau interaksi Feature Store dengan AWS KMS

Jika Anda menggunakan kunci yang dikelola pelanggan atau AWS CloudTrail untuk melindungi tabel DynamoDB Anda, Anda dapat menggunakan log untuk melacak permintaan yang dikirim DynamoDB ke atas nama Anda.

Mengakses data di toko online Anda

Penelepon (baik pengguna atau peran) ke SEMUA DataPlane operasi (Put, Get, DeleteRecord) harus memiliki izin di bawah ini pada kunci yang dikelola pelanggan:

"kms:Decrypt"

Mengizinkan penggunaan kunci yang dikelola pelanggan

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.