Mengenkripsi Sumber Daya di Izin Terverifikasi Amazon - Izin Terverifikasi Amazon

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

Mengenkripsi Sumber Daya di Izin Terverifikasi Amazon

Izin Terverifikasi Amazon menyediakan enkripsi secara default untuk melindungi data pelanggan sensitif saat istirahat menggunakan kunci enkripsi yang AWS dimiliki. Sebagai lapisan perlindungan tambahan, Izin Terverifikasi Amazon memungkinkan Anda mengenkripsi toko kebijakan menggunakan AWS Key Management Service (AWS KMS) kunci yang dikelola pelanggan s (CMK). Fungsionalitas ini memastikan perlindungan data sensitif melalui enkripsi saat istirahat, yang membantu Anda:

  • Mengurangi beban operasional di ujung aplikasi Anda untuk melindungi data sensitif

  • Pertahankan kontrol atas siapa yang dapat melihat detail kebijakan otorisasi Anda melalui kebijakan Anda sendiri AWS KMS kunci yang dikelola pelanggan

  • Membangun aplikasi sensitif keamanan yang memenuhi kepatuhan enkripsi yang ketat dan persyaratan peraturan

Bagian berikut menjelaskan cara mengonfigurasi enkripsi untuk penyimpanan kebijakan baru dan mengelola kunci enkripsi Anda.

AWS KMS Jenis Kunci untuk Izin Terverifikasi Amazon

Izin Terverifikasi Amazon terintegrasi dengan AWS KMS untuk mengelola kunci enkripsi yang digunakan untuk data encrypting/decrypting pelanggan. Untuk mempelajari lebih lanjut tentang jenis dan status kunci, lihat AWS Key Management Service konsep di Panduan AWS KMS Pengembang. Saat membuat penyimpanan kebijakan baru, Anda dapat memilih dari jenis AWS KMS kunci berikut untuk mengenkripsi data Anda:

AWS Kunci yang Dimiliki

Jenis enkripsi default. Izin Terverifikasi Amazon memiliki kunci tanpa biaya tambahan kepada Anda dan mengenkripsi data sumber daya saat dibuat. Tidak ada konfigurasi tambahan yang diperlukan dalam kode atau aplikasi Anda ke data encrypt/decrypt Anda menggunakan kunci yang dimiliki oleh Izin Terverifikasi.

Kunci yang Dikelola Pelanggan

Anda membuat, memiliki, dan mengelola kunci di AWS akun Anda. Anda memiliki kendali penuh atas AWS KMS kunci. AWS KMS biaya berlaku untuk kunci yang dikelola pelanggan s. Untuk informasi lebih lanjut, lihat halaman AWS KMS Harga. Untuk informasi selengkapnya tentang jenis kunci, lihat Kunci yang dikelola pelanggan di Panduan AWS KMS Pengembang.

Saat Anda menentukan enkripsi kunci yang dikelola pelanggan untuk sumber daya tingkat atas (yaitu penyimpanan kebijakan), Izin Terverifikasi mengenkripsi sumber daya, serta sumber daya turunannya, dengan kunci tersebut. Untuk mengenkripsi penyimpanan kebijakan menggunakan kunci yang dikelola pelanggan, Anda harus memberikan akses ke Izin Terverifikasi dalam kebijakan utama Anda. Kebijakan utama adalah kebijakan berbasis sumber daya yang Anda lampirkan untuk mengontrol akses ke kunci yang dikelola pelanggan sana. Lihat Mengotorisasi penggunaan AWS KMS kunci Anda untuk Izin Terverifikasi Amazon untuk detail selengkapnya.

Selain itu, untuk membuat penyimpanan kebijakan terenkripsi dengan kunci yang dikelola pelanggan, atau untuk membuat panggilan API ke toko kebijakan yang dienkripsi oleh a kunci yang dikelola pelanggan, pengguna atau peran IAM yang membuat panggilan juga harus memiliki akses ke kunci. Jika Izin Terverifikasi tidak dapat mengakses kunci, keputusan otorisasi apa pun yang melibatkan sumber daya yang dienkripsi oleh kunci tersebut mungkin basi atau tidak akurat. Ketika Anda tidak memiliki akses ke kunci, Anda tidak akan dapat read/update/delete sumber daya yang dienkripsi oleh kunci itu, dan setiap panggilan buat untuk memanfaatkan kunci untuk enkripsi akan gagal.

catatan

Enkripsi Izin Terverifikasi saat istirahat tersedia di semua AWS Wilayah di mana Izin Terverifikasi tersedia.

penting

Setelah digunakan untuk mengenkripsi penyimpanan kebijakan, Anda TIDAK DAPAT memperbarui sumber daya untuk menggunakan kunci yang berbeda untuk enkripsi atau menghapus kunci dari penyimpanan kebijakan tersebut. kunci yang dikelola pelanggan

Menggunakan AWS KMS dan kunci data dengan Izin Terverifikasi Amazon

Fitur enkripsi Izin Terverifikasi Amazon saat istirahat menggunakan AWS KMS kunci dan hierarki kunci data untuk melindungi data sumber daya Anda.

catatan

Izin Terverifikasi Amazon hanya mendukung kunci simetris AWS KMS . Anda tidak dapat menggunakan AWS KMS kunci asimetris untuk mengenkripsi sumber daya Izin Terverifikasi Amazon.

Menggunakan Kunci AWS Milik

Izin Terverifikasi Amazon mengenkripsi semua sumber daya secara default dengan AWS kunci yang dimiliki. Kunci ini gratis untuk digunakan dan diputar setiap tahun untuk melindungi sumber daya akun Anda. Anda tidak perlu melihat, mengelola, menggunakan, atau mengaudit kunci ini, sehingga tidak ada tindakan yang diperlukan untuk perlindungan data. Untuk informasi selengkapnya tentang AWS kunci yang AWS dimiliki, lihat kunci yang dimiliki di Panduan AWS KMS Pengembang.

Menggunakan Kunci yang Dikelola Pelanggan

Memilih enkripsi kunci yang dikelola pelanggan untuk memberikan manfaat berikut:

  • Anda membuat dan mengelola AWS KMS kunci, termasuk menyetel kebijakan dan IAM kebijakan utama untuk mengontrol akses ke AWS KMS kunci. Anda dapat mengaktifkan dan menonaktifkan AWS KMS kunci, mengaktifkan dan menonaktifkan rotasi tombol otomatis, dan menghapus AWS KMS kunci ketika tidak lagi digunakan.

  • Anda dapat menggunakan bahan kunci kunci yang dikelola pelanggan yang diimpor atau kunci yang dikelola pelanggan di toko kunci khusus yang Anda miliki dan kelola.

  • Anda dapat mengaudit enkripsi dan dekripsi sumber daya Izin Terverifikasi dengan memeriksa panggilan API Izin Terverifikasi Amazon ke dalam log. AWS KMS AWS CloudTrail

Untuk Izin Terverifikasi Amazon untuk menggunakan kunci yang dikelola pelanggan s Anda untuk encryption/decryption, you will need to add specific key policies to allow Amazon Verified Permissions to encrypt/decrypt sumber daya atas nama Anda.

Mengotorisasi penggunaan AWS KMS kunci Anda untuk Izin Terverifikasi Amazon

Minimal, Izin Terverifikasi Amazon memerlukan izin berikut pada: kunci yang dikelola pelanggan

  • kms:Encrypt

  • kms:GenerateDataKeyWithoutPlaintext

  • kms:DescribeKey

  • kms:ReEncryptTo

  • kms:ReEncryptFrom

  • kms:Decrypt

Contoh kebijakan kunci dapat dilihat di bawah ini:

{ "Sid": "Enable AVP to use the KMS key for encrypting project J.A.K. policy resources", "Effect": "Allow", "Principal": { "Service": "verifiedpermissions.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKeyWithoutPlaintext", "kms:Encrypt", "kms:ReEncryptFrom", "kms:ReEncryptTo", "kms:DescribeKey" ], "Resource": "*" }

Memahami Konteks Sumber

Konteks sumber memberikan informasi tentang pemanggil sumber yang mencoba melakukan AWS KMS tindakan terhadap kunci yang diberikan. Ini mencegah kebingungan atau penyalahgunaan data terenkripsi dengan mengikat konteks ke sumber data.

Pelanggan dapat menggunakan konteks sumber sebagai ketentuan tambahan pada kebijakan utama mereka seperti pernyataan kebijakan utama berikut:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Enable this account full access to this key", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": "kms:*", "Resource": "*" }, { "Sid": "Enable AVP to retrieve this key's metadata", "Effect": "Allow", "Principal": { "Service": "verifiedpermissions.amazonaws.com" }, "Action": "kms:DescribeKey", "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "StringLike": { "aws:SourceArn": "arn:aws:verifiedpermissions::111122223333:policy-store/*" } } }, { "Sid": "Enable AVP to encrypt/decrypt resources utilizing this key", "Effect": "Allow", "Principal": { "Service": "verifiedpermissions.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:ReEncryptTo", "kms:ReEncryptFrom", "kms:GenerateDataKeyWithoutPlaintext", "kms:Encrypt" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "StringLike": { "aws:SourceArn": "arn:aws:verifiedpermissions::111122223333:policy-store/*" } } } ] }

Kebijakan kunci ini memungkinkan Izin Terverifikasi untuk melakukan AWS KMS panggilan atas nama Anda, jika akun sumber sama dengan akun tempat AWS KMS kunci ini berada. Nilai-nilai ini harus dapat diverifikasi saat memeriksa log AWS CloudTrail audit untuk kunci CMK. Untuk informasi selengkapnya tentang kunci AWS kondisi global, lihat Menggunakan aws:SourceArn atau tombol aws:SourceAccount kondisi.

Memahami Konteks Enkripsi

Konteks enkripsi adalah sekumpulan pasangan nilai kunci yang berisi data tambahan yang diautentikasi untuk pemeriksaan integritas enkripsi. Ketika Anda menyertakan konteks enkripsi dalam permintaan untuk mengenkripsi data, secara AWS KMS kriptografis mengikat konteks enkripsi ke data terenkripsi. Untuk mendekripsi data, Anda harus melewati konteks enkripsi yang sama.

Izin Terverifikasi Amazon menggunakan konteks enkripsi yang sama di semua operasi AWS KMS kriptografi dan dapat diverifikasi dalam AWS CloudTrail log saat Izin Terverifikasi melakukan AWS KMS panggilan atas nama Anda untuk proses. encryption/decryption Secara default, Izin Terverifikasi menggunakan pasangan nilai kunci konteks enkripsi berikut saat mengenkripsi sumber daya Anda:

{ "aws:verifiedpermissions:policy-store-arn": "arn:aws:verifiedpermissions::111122223333:policy-store/PSt123456789012" }

Izin Terverifikasi Amazon juga memungkinkan Anda menambahkan konteks enkripsi khusus sebagai bagian dari metadata tambahan yang ingin Anda sertakan selama proses. encryption/decryption Ini berarti kebijakan utama Anda dapat lebih terperinci dalam memberikan izin seperti contoh di bawah ini:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Enable this account full access to this key", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": "kms:*", "Resource": "*" }, { "Sid": "Enable AVP to retrieve this key's metadata", "Effect": "Allow", "Principal": { "Service": "verifiedpermissions.amazonaws.com" }, "Action": "kms:DescribeKey", "Resource": "*" }, { "Sid": "Enable AVP to encrypt/decrypt resources utilizing this key", "Effect": "Allow", "Principal": { "Service": "verifiedpermissions.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:ReEncryptTo", "kms:ReEncryptFrom", "kms:GenerateDataKeyWithoutPlaintext", "kms:Encrypt" ], "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:verifiedpermissions:policy-store-arn": "arn:aws:verifiedpermissions::111122223333:policy-store/*", "kms:EncryptionContext:policy_owner": "Tim" } } } ] }

Kebijakan kunci ini memungkinkan Izin Terverifikasi untuk melakukan AWS KMS panggilan atas nama Anda, jika peta konteks enkripsi berisi kunciaws:verifiedpermissions:policy-store-arn, yang nilainya mengikuti format arn:aws:verifiedpermissions::111122223333:policy-store/* dan juga berisi pasangan nilai kunci. "policy_owner": "Tim" Lihat Membuat toko Kebijakan Terenkripsi cara mengatur konteks enkripsi kustom.

catatan

Disarankan agar kebijakan utama dengan kondisi berdasarkan konteks enkripsi menjadi subset dari peta konteks enkripsi, daripada memeriksa setiap pasangan nilai kunci. Layanan dan dependensinya di hulu dapat menambahkan pasangan nilai kunci tambahan yang tidak terlihat oleh Anda, dan dapat memengaruhi akses kunci Izin Terverifikasi jika kebijakan kunci memungkinkan secara kondisional berdasarkan tampilan yang tepat dari peta konteks enkripsi.

Memahami kms: ViaService

Kunci kms:ViaService kondisi membatasi penggunaan AWS KMS kunci untuk permintaan dari AWS layanan tertentu. Kunci kondisi ini hanya berlaku untuk sesi akses Teruskan (FAS). Untuk informasi selengkapnyakms:ViaService, lihat kms: ViaService di Panduan AWS KMS Pengembang.

Misalnya, pernyataan kebijakan kunci berikut menggunakan kunci kms:ViaService kondisi untuk mengizinkan a digunakan kunci yang dikelola pelangganuntuk tindakan yang ditentukan hanya jika permintaan berasal dari Izin Terverifikasi Amazon di wilayah AS Timur (Virginia Utara) atas nama. BrentRole

{ "Sid": "Enable AVP to encrypt/decrypt resources using credentials of BrentRole", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/BrentRole" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKeyWithoutPlaintext", "kms:Encrypt", "kms:ReEncryptFrom", "kms:ReEncryptTo", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": [ "verifiedpermissions.us-east-1.amazonaws.com" ] } } }

Hal ini diperlukan agar Izin Terverifikasi dapat meneruskan identitas, izin, dan atribut sesi Anda saat Izin Terverifikasi mengajukan permintaan atas nama Anda untuk AWS KMS enkripsi/dekripsi. Untuk informasi selengkapnya tentang permintaan FAS, lihat Teruskan Sesi Akses di Panduan IAM Pengguna.

Kebijakan AWS KMS Kunci Lengkap

Berdasarkan konsep di bagian sebelumnya, ini adalah contoh kebijakan kunci yang memungkinkan Izin Terverifikasi Amazon menggunakan CMK untuk enkripsi/dekripsi:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Enable this account full access to this key", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": "kms:*", "Resource": "*" }, { "Sid": "Enable AVP to retrieve this key's metadata", "Effect": "Allow", "Principal": { "Service": "verifiedpermissions.amazonaws.com" }, "Action": "kms:DescribeKey", "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "StringLike": { "aws:SourceArn": "arn:aws:verifiedpermissions::111122223333:policy-store/*" } } }, { "Sid": "Enable AVP to encrypt/decrypt resources utilizing this key", "Effect": "Allow", "Principal": { "Service": "verifiedpermissions.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:ReEncryptTo", "kms:ReEncryptFrom", "kms:Encrypt", "kms:GenerateDataKeyWithoutPlaintext" ], "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:verifiedpermissions:policy-store-arn": "arn:aws:verifiedpermissions::111122223333:policy-store/*", "kms:EncryptionContext:policy_owner": "Tim", "aws:SourceArn": "arn:aws:verifiedpermissions::111122223333:policy-store/*" }, "StringEquals": { "aws:SourceAccount": "111122223333" } } }, { "Sid": "Enable AVP to encrypt/decrypt resources using credentials of BrentRole", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/BrentRole" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKeyWithoutPlaintext", "kms:Encrypt", "kms:ReEncryptFrom", "kms:ReEncryptTo", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": [ "verifiedpermissions.us-east-1.amazonaws.com" ] }, "StringLike": { "kms:EncryptionContext:aws:verifiedpermissions:policy-store-arn": "arn:aws:verifiedpermissions::111122223333:policy-store/*", "kms:EncryptionContext:policy_owner": "Tim" } } } ] }
Awas

Berhati-hatilah saat memodifikasi kebijakan AWS KMS kunci untuk kunci yang sudah digunakan oleh Izin Terverifikasi Amazon. Meskipun Izin Terverifikasi memvalidasi izin enkripsi dan dekripsi saat pertama kali mengonfigurasi AWS KMS kunci selama pembuatan sumber daya tingkat atas, kunci tersebut tidak dapat memverifikasi perubahan kebijakan berikutnya sesuai permintaan. Menghapus izin yang diperlukan secara tidak sengaja dapat mengganggu keputusan otorisasi Anda dan alur layanan Izin Terverifikasi reguler. Untuk panduan pemecahan masalah kesalahan umum yang terkait dengan kunci yang dikelola pelanggan s di Izin Terverifikasi Amazon, lihat. Memecahkan Masalah Kunci yang Dikelola Pelanggan di Izin Terverifikasi Amazon

IAM Kebijakan yang Diperlukan untuk Sumber Daya Terenkripsi

Pelanggan yang memanggil Izin Terverifikasi melalui IAM peran dalam akun mereka perlu memastikan bahwa IAM kebijakan terkait memiliki izin yang tepat untuk memanfaatkan enkripsi dan dekripsi sumber daya. kunci yang dikelola pelanggan

Untuk membuat penyimpanan kebijakan yang dienkripsi oleh a kunci yang dikelola pelanggan, IAM kebijakan berikut menggambarkan tindakan minimum yang diperlukan AWS KMS dan Izin Terverifikasi yang diperlukan untuk melakukannya:

{ "Version": "2012-10-17", "Statement": [ { "Action": "verifiedpermissions:CreatePolicyStore", "Resource": "*", "Effect": "Allow" }, { "Action": [ "kms:Decrypt", "kms:Encrypt", "kms:ReEncryptTo", "kms:ReEncryptFrom", "kms:DescribeKey", "kms:GenerateDataKeyWithoutPlaintext" ], "Resource": "*", "Effect": "Allow" } ] }
catatan

Untuk mengambil (operasi Get* dan List*) dan menghapus penyimpanan kebijakan yang dienkripsi oleh a kunci yang dikelola pelanggan, tidak diperlukan izin tambahan.

Untuk memperbarui penyimpanan kebijakan yang dienkripsi oleh kunci yang dikelola pelanggan, mengambil (operasi Get* dan List*), memperbarui, dan menghapus sumber daya turunan dari penyimpanan kebijakan yang dienkripsi oleh a kunci yang dikelola pelanggan, IAM kebijakan berikut menggambarkan tindakan Izin Terverifikasi minimum yang diperlukan dan dilakukan untuk melakukannya: AWS KMS

{ "Version": "2012-10-17", "Statement": [ { "Action": "verifiedpermissions:*", "Resource": "*", "Effect": "Allow" }, { "Action": [ "kms:Decrypt" ], "Resource": "*", "Effect": "Allow" } ] }

Sebagai IAM kebijakan tunggal, pelanggan dapat dengan mudah menambahkan yang berikut ini ke kebijakan IAM peran mereka:

{ "Version": "2012-10-17", "Statement": [ { "Action": "verifiedpermissions:*", "Resource": "*", "Effect": "Allow" }, { "Action": [ "kms:Decrypt", "kms:Encrypt", "kms:ReEncryptTo", "kms:ReEncryptFrom", "kms:DescribeKey", "kms:GenerateDataKeyWithoutPlaintext" ], "Resource": "*", "Effect": "Allow" } ] }

Mengelola toko Kebijakan Terenkripsi

Toko kebijakan adalah wadah entry-level yang akan berisi semua sumber daya kebijakan terkait. Untuk informasi selengkapnya tentang penyimpanan kebijakan dan hierarki sumber daya anak, lihat penyimpanan kebijakan Izin Terverifikasi Amazon di Panduan Pengguna Izin Terverifikasi Amazon.

Saat membuat penyimpanan kebijakan di Izin Terverifikasi, Anda dapat mengaktifkan enkripsi saat istirahat menggunakan AWS KMS kunci. Ini memastikan bahwa:

  • Semua operasi baca, perbarui, dan hapus di toko kebijakan, dan sumber daya anak mereka, akan memanfaatkan yang disediakan kunci yang dikelola pelanggan untuk proses dekripsi

  • Setiap panggilan keputusan otorisasi (yaitu IsAuthorized,, BatchIsAuthorized IsAuthorizedWithToken, dll.) akan menggunakan yang disediakan kunci yang dikelola pelanggan untuk proses dekripsi

Membuat toko Kebijakan Terenkripsi

Sebelum membuat penyimpanan kebijakan terenkripsi, pastikan bahwa yang kunci yang dikelola pelanggan Anda gunakan memiliki pernyataan kebijakan kunci yang tepat yang ditetapkan untuk Izin Terverifikasi Amazon untuk menggunakan kunci untuk enkripsi/dekripsi. Lihat Mengotorisasi penggunaan AWS KMS kunci Anda untuk Izin Terverifikasi Amazon izin apa yang diperlukan.

Menggunakan AWS CLI:

aws verifiedpermissions create-policy-store --region us-east-1 --encryption-settings file://encrypted.json --validation-settings "{\"mode\": \"OFF\"}"

Dimana encrypted.json terlihat seperti:

{ "kmsEncryptionSettings": { "key": "arn:aws:kms:us-east-1:111122223333:key/12345678-90ab-cdef-ghij-klmnopqrstuv", "encryptionContext": { "<ENCRYPTION_CONTEXT_KEY_1>": "<ENCRYPTION_CONTEXT_VALUE_1>", "<ENCRYPTION_CONTEXT_KEY_2>": "<ENCRYPTION_CONTEXT_VALUE_2>", ... } } }

Pastikan untuk mengganti key dengan kunci yang dikelola pelanggan ARN Anda dan mengganti <ENCRYPTION_CONTEXT_KEY> dan <ENCRYPTION_CONTEXT_VALUE> memasangkan dengan pasangan kunci-nilai yang diinginkanencryptionContext. encryptionContextdapat dihilangkan sepenuhnya jika tidak ada penambahan pasangan nilai kunci yang diinginkan.

penting

Jangan sertakan pasangan kunci-nilai aws:verifiedpermissions:policy-store-arn dalam konteks enkripsi kustom Anda. Ini ditambahkan secara otomatis dan akan menghasilkan kesalahan validasi jika itu adalah bagian dari pasangan nilai kunci konteks enkripsi kustom Anda yang diteruskan.

Untuk informasi selengkapnya tentang sumber daya anak yang tersedia APIs di penyimpanan kebijakan, lihat Tindakan di Panduan Referensi API Izin Terverifikasi Amazon.

catatan

Jika sumber daya AWS KMS kunci yang dikelola pelanggan Izin Terverifikasi Amazon Anda dihapus, dinonaktifkan, atau tidak dapat diakses karena kebijakan AWS KMS kunci yang salah, dekripsi sumber daya akan gagal, sehingga menghasilkan keputusan otorisasi yang basi. Hilangnya akses dapat bersifat sementara (kebijakan kunci dapat diperbaiki) atau permanen (kunci yang dihapus tidak dapat dipulihkan) tergantung pada keadaan. Kami menyarankan Anda membatasi akses ke operasi penting, seperti menghapus atau menonaktifkan kunci. AWS KMS Selain itu, kami menyarankan agar organisasi Anda menyiapkan prosedur akses AWS break-glass untuk memastikan pengguna istimewa Anda dapat mengakses jika AWS Izin Terverifikasi Amazon tidak dapat diakses.

Memantau Interaksi Izin Terverifikasi Amazon dengan AWS KMS

Anda dapat memantau penggunaan Izin Terverifikasi Amazon atas Anda kunci yang dikelola pelanggan . AWS CloudTrail Setiap permintaan AWS KMS melalui Izin Terverifikasi mencakup konteks enkripsi dan ARN kunci yang digunakan ( kunci yang dikelola pelanggan Anda) dalam parameter permintaan:

Contoh entri AWS CloudTrail log untukGenerateDataKeyWithoutPlaintext:

{ "eventVersion": "1.11", "userIdentity": { "type": "AWSService", "invokedBy": "verifiedpermissions.amazonaws.com" }, "eventTime": "2025-09-28T16:51:04Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKeyWithoutPlaintext", "awsRegion": "us-east-1", "sourceIPAddress": "verifiedpermissions.amazonaws.com", "userAgent": "verifiedpermissions.amazonaws.com", "requestParameters": { "keyId": "arn:aws:kms:us-east-1:111122223333:key/abcdefgh-0123-ijkl-4567-mnopqrstuvwx", "encryptionContext": { "aws:verifiedpermissions:policy-store-arn": "arn:aws:verifiedpermissions::111122223333:policy-store/PSt123456789012", "policy_store_editor": "Janus" }, ... }, ... }

Contoh entri AWS CloudTrail log untukDecrypt:

{ "eventVersion": "1.11", "userIdentity": { "type": "AWSService", "invokedBy": "verifiedpermissions.amazonaws.com" }, "eventTime": "2025-09-28T16:53:21Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-east-1", "sourceIPAddress": "verifiedpermissions.amazonaws.com", "userAgent": "verifiedpermissions.amazonaws.com", "requestParameters": { "encryptionAlgorithm": "SYMMETRIC_DEFAULT", "keyId": "arn:aws:kms:us-east-1:111122223333:key/abcdefgh-0123-ijkl-4567-mnopqrstuvwx", "encryptionContext": { "aws:verifiedpermissions:policy-store-arn": "arn:aws:verifiedpermissions::111122223333:policy-store/PSt123456789012", "policy_store_owner": "Elias" } }, ... }

Contoh entri AWS CloudTrail log untukReEncrypt:

{ "eventVersion": "1.11", "userIdentity": { "type": "AWSService", "invokedBy": "verifiedpermissions.amazonaws.com" }, "eventTime": "2025-09-28T16:51:04Z", "eventSource": "kms.amazonaws.com", "eventName": "ReEncrypt", "awsRegion": "us-east-1", "sourceIPAddress": "verifiedpermissions.amazonaws.com", "userAgent": "verifiedpermissions.amazonaws.com", "requestParameters": { "sourceKeyId": "arn:aws:kms:us-east-1:111122223333:key/abcdefgh-0123-ijkl-4567-mnopqrstuvwx", "destinationEncryptionContext": { "aws:verifiedpermissions:policy-store-arn": "arn:aws:verifiedpermissions::111122223333:policy-store/PSt123456789012" }, "sourceEncryptionAlgorithm": "SYMMETRIC_DEFAULT", "destinationKeyId": "arn:aws:kms:us-east-1:111122223333:key/abcdefgh-0123-ijkl-4567-mnopqrstuvwx", "sourceEncryptionContext": { "aws:verifiedpermissions:policy_store_arn": "arn:aws:verifiedpermissions::111122223333:policy-store/PSt123456789012" }, "destinationEncryptionAlgorithm": "SYMMETRIC_DEFAULT", ... }, ... }

Perhatikan bahwa entri log mencakup invokedBy referensi utama Izin Terverifikasi Amazon, dan disertakan dalam encryptionContext/sourceEncryptionContext/destinationEncryptionContext peta. requestParameters

Contoh entri AWS CloudTrail log untukDescribeKey:

{ "eventVersion": "1.11", "userIdentity": { "type": "AWSService", "invokedBy": "verifiedpermissions.amazonaws.com" }, "eventTime": "2025-09-28T16:51:02Z", "eventSource": "kms.amazonaws.com", "eventName": "DescribeKey", "awsRegion": "us-east-1", "sourceIPAddress": "verifiedpermissions.amazonaws.com", "userAgent": "verifiedpermissions.amazonaws.com", "requestParameters": { "keyId": "arn:aws:kms:us-east-1:111122223333:key/abcdefgh-0123-ijkl-4567-mnopqrstuvwx" }, ... }

Perhatikan bahwa entri log mencakup invokedBy referensi utama Izin Terverifikasi Amazon.

Untuk informasi selengkapnya tentang entri AWS CloudTrail log, lihat Memahami AWS CloudTrail peristiwa di Panduan AWS CloudTrail Pengguna.

Batasan

Topik ini menjelaskan batasan Izin Terverifikasi saat ini dan penggunaan kunci yang dikelola pelanggan s untuk enkripsi sumber daya.

  • Anda tidak dapat menonaktifkan enkripsi untuk penyimpanan kebijakan setelah diaktifkan

  • Setelah Anda membuat penyimpanan kebijakan tanpa enkripsi, Anda tidak dapat memperbarui penyimpanan kebijakan yang akan dienkripsi oleh kunci yang dikelola pelanggan

  • Setelah Anda mencabut akses Izin Terverifikasi ke penyimpanan kebijakan terenkripsi yang ada, ada potensi keputusan otorisasi basi kunci yang dikelola pelanggan

  • Setelah Anda membuat penyimpanan kebijakan dengan kunci yang dikelola pelanggan, Anda tidak dapat mengubah nilai konteks enkripsi kustom; nilai tersebut adalah nilai statis yang ditetapkan selama pembuatan penyimpanan kebijakan terenkripsi

Memecahkan Masalah Kunci yang Dikelola Pelanggan di Izin Terverifikasi Amazon

Topik ini menjelaskan kesalahan umum kunci yang dikelola pelanggan terkait yang mungkin Anda temui saat menggunakan Izin Terverifikasi Amazon dan menyediakan langkah-langkah pemecahan masalah untuk mengatasinya.

Akses Ditolak: Masalah AWS KMS Izin

Kesalahan: “Layanan atau pemanggil tidak diizinkan untuk menggunakan AWS KMS kunci yang disediakan, karena sumber daya tidak ada di Wilayah ini, tidak ada kebijakan berbasis sumber daya yang mengizinkan akses, atau kebijakan berbasis sumber daya secara eksplisit menolak akses”

Ini bisa berarti bahwa layanan atau pemanggil tidak memiliki izin kms:* tindakan yang diperlukan dalam kebijakan atau IAM kebijakan kunci mereka atau bahwa AWS KMS kunci yang direferensikan tidak ada atau tidak ada lagi.

Pemecahan masalah dengan: AWS CloudTrail

  • Cari kms.amazonaws.com acara di AWS CloudTrail

  • Cari nama acara AWS KMS operasi yang diidentifikasi tidak diizinkan (yaituDecrypt,,,ReEncrypt, GenerateDataKeyWithoutPlaintextDescribeKey, dll.)

  • Tinjau errorCode dan errorMessage bidang

  • Periksa userIdentity untuk mengonfirmasi kepala sekolah mana yang mencoba operasi

Untuk mengatasi masalah ini, berikan pengguna atau IAM prinsipal izin akses AWS KMS operasi yang tepat dalam IAM kebijakan dan kebijakan AWS KMS utama mereka. Untuk informasi selengkapnya, lihat Kebijakan AWS KMS Kunci Lengkap.

Pengecualian Validasi: Konfigurasi AWS KMS Kunci

Kesalahan: “ AWS KMS Kunci yang dikonfigurasi tidak memiliki konfigurasi yang valid”

Ini berarti bahwa kunci yang direferensikan tidak dapat digunakan oleh layanan untuk kunci yang dikelola pelanggan enkripsi karena konfigurasinya saat ini. Alasan mungkin termasuk kunci yang dinonaktifkan, kunci tidak didukung EncryptionAlgorithm, atau kunci memiliki tipe yang tidak didukung KeyUsage .

Pengecualian Throttling: AWS KMS Batas Nilai

Kesalahan: “Anda telah melampaui tingkat di mana Anda dapat menelepon AWS KMS”

Kesalahan ini berarti bahwa Anda telah melampaui AWS KMS batas untuk operasi kriptografi untuk kunci Anda: https://docs.aws.amazon.com/kms/ latest/developerguide/requests -per-second.html.