Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Hibah di AWS KMS
Hi bah adalah instrumen kebijakan yang memungkinkan kepala sekolah atau AWS prinsipal AWS layanan untuk menggunakan kunci KMS dalam operasi kriptografi. Ini juga dapat membiarkan mereka melihat kunci KMS (DescribeKey) dan membuat dan mengelola hibah. Saat mengotorisasi akses ke kunci KMS, hibah dipertimbangkan bersama dengan kebijakan utama dan kebijakan IAM. Hibah sering digunakan untuk izin sementara karena Anda dapat membuatnya, menggunakan izinnya, dan menghapusnya tanpa mengubah kebijakan kunci atau kebijakan IAM.
Hibah biasanya digunakan oleh AWS layanan yang terintegrasi dengan AWS KMS untuk mengenkripsi data Anda saat istirahat. Layanan akan membuat pemberian izin atas nama pengguna di akun, menggunakan izinnya, dan menghentikan pemberian izin begitu tugasnya selesai. Untuk detail tentang cara AWS layanan, menggunakan hibah, lihat topik Enkripsi saat istirahat di panduan pengguna layanan atau panduan pengembang.
Pemberian izin adalah mekanisme kontrol akses yang sangat fleksibel dan berguna. Saat Anda membuat hibah untuk kunci KMS, hibah memungkinkan prinsipal penerima hibah untuk memanggil operasi hibah yang ditentukan pada kunci KMS asalkan semua kondisi yang ditentukan dalam hibah terpenuhi.
-
Setiap hibah memungkinkan akses ke tepat satu kunci KMS. Anda dapat membuat hibah untuk kunci KMS dengan cara yang berbeda Akun AWS.
-
Hibah dapat mengizinkan akses ke kunci KMS, tetapi tidak menolak akses.
-
Setiap hibah memiliki satu penerima hibah, yang dapat berupa prinsipal penerima hi bah (identitas AWS IAM) atau prinsipal layanan penerima hibah (prinsipal layanan). AWS Anda dapat menentukan
GranteePrincipalatauGranteeServicePrincipal, tetapi bukan keduanya. -
Hibah hanya dapat mengizinkan operasi hibah. Operasi hibah harus didukung oleh kunci KMS dalam hibah. Jika Anda menentukan operasi yang tidak didukung, CreateGrant permintaan gagal dengan peng
ValidationErrorecualian. -
Kepala sekolah penerima hibah dapat menggunakan izin yang diberikan hibah kepada mereka tanpa menentukan hibah, sama seperti yang mereka lakukan jika izin berasal dari kebijakan utama atau kebijakan IAM. Namun, karena AWS KMS API mengikuti model konsist ensi akhirnya, saat Anda membuat, menghentikan, atau mencabut hibah, mungkin ada penundaan singkat, sebelum perubahan tersedia secara keseluruhan. AWS KMS Untuk segera menggunakan izin dalam pemberian izin, gunakan token izin.
-
Kepala sekolah yang berwenang dapat menghapus hibah (pensiun atau Mencabut (pemberian izin) mencabutnya). Menghapus hibah menghilangkan semua izin yang diizinkan oleh hibah. Anda tidak perlu mencari tahu kebijakan mana yang harus ditambahkan atau dihapus untuk membatalkan hibah.
-
AWS KMS membatasi jumlah hibah pada setiap kunci KMS. Untuk detailnya, lihat Hi Hibah per kunci KMS: 50.000 kunci KMS.
Berhati-hatilah saat membuat pemberian izin dan saat memberi izin kepada orang lain untuk membuat pemberian izin. Izin untuk membuat hibah memiliki implikasi keamanan, seperti mengiz inkan PutKeyPolicy izin kms: untuk menetapkan kebijakan.
-
Pengguna dengan izin untuk membuat hibah untuk kunci KMS (
kms:CreateGrant) dapat menggunakan hibah untuk mengizinkan pengguna dan peran, termasuk AWS layanan, menggunakan kunci KMS. Prinsipal dapat berupa identitas Anda sendiri Akun AWS atau identitas di akun atau organisasi yang berbeda. -
Hibah hanya dapat mengizinkan sebagian AWS KMS operasi. Anda dapat menggunakan hibah untuk mengizinkan kepala sekolah melihat kunci KMS, menggunakannya dalam operasi kriptografi, dan membuat dan menghentikan hibah. Untuk detailnya, lihat Operasi pemberian izin. Anda juga dapat menggunakan batas pemberian izin untuk membatasi izin dalam pemberian izin.
-
Perwakilan bisa mendapatkan izin untuk membuat pemberian izin dari kebijakan kunci atau kebijakan IAM. Kepala sekolah yang mendapatkan
kms:CreateGrantizin dari kebijakan dapat membuat hibah untuk operasi hi bah apa pun pada kunci KMS. Para kepala sekolah ini tidak diharuskan memiliki izin yang mereka berikan pada kunci. Saat Anda memberikan izinkms:CreateGrantdalam kebijakan, Anda dapat menggunakan ketentuan kebijakan untuk membatasi izin ini. -
Perwakilan juga bisa mendapatkan izin untuk membuat pemberian izin dari sebuah pemberian izin. Prinsipal ini hanya dapat mendelegasikan izin yang diberikan kepada mereka, bahkan jika mereka memiliki izin lain dari kebijakan. Lihat perinciannya di Memberikan CreateGrant izin.
Konsep hibah
Untuk menggunakan pemberian izin secara efektif, Anda harus memahami istilah dan konsep yang digunakan AWS KMS .
- Batas pemberian izin
-
Kondisi yang membatasi izin dalam hibah. AWS KMS mendukung dua jenis kendala hibah:
-
Kendala konteks enkripsi — Membatasi izin berdasarkan konteks enkripsi yang diser takan dalam permintaan untuk operasi kriptografi. Kendala ini hanya berfungsi dengan kunci KMS enkripsi simetris.
-
SourceArn batasan — Membatasi izin pemberian untuk permintaan yang dibuat atas nama sumber daya tertentu AWS . Ini secara efektif menempatkan kunci kondisi aws:SourceArn global ke dalam hibah. Kendala ini bekerja dengan semua jenis kunci KMS.
Lihat perinciannya di Menggunakan batas pemberian izin.
-
- ID Pemberian izin
-
Pengidentifikasi unik hibah untuk kunci KMS. Anda dapat menggunakan ID hibah, bersama dengan pengenal kunci, untuk mengidentifikasi hibah dalam RevokeGrant permintaan RetireGrant atau.
- Operasi pemberian izin
-
AWS KMS Operasi yang dapat Anda izinkan dalam hibah. Jika Anda menentukan operasi lain, CreateGrant permintaan gagal dengan peng
ValidationErrorecualian. Ini juga merupakan operasi yang menerima token izin. Untuk informasi selengkapnya tentang izin ini, lihat AWS KMS izin.Operasi hibah ini sebenarnya mewakili izin untuk menggunakan operasi. Oleh karena itu, untuk operasi
ReEncrypt, Anda dapat menentukanReEncryptFrom,ReEncryptTo, atau keduaReEncrypt*.Operasi pemberian izin adalah:
-
Operasi kriptografi
-
Operasi lainnya
Operasi hibah yang Anda izinkan harus didukung oleh kunci KMS dalam hibah. Jika Anda menentukan operasi yang tidak didukung, CreateGrant permintaan gagal dengan peng
ValidationErrorecualian. Misalnya, hibah untuk kunci KMS enkripsi simetris tidak dapat mengizinkan Penandatang anan, Verifikasi,GenerateMacatauVerifyMacoperasi. Hibah untuk kunci KMS asimetris tidak dapat mengizinkan operasi apa pun yang menghasilkan kunci data atau pasangan kunci data. -
- Token izin
-
AWS KMS API mengikuti model konsistensi akhirnya. Saat Anda membuat hibah, mungkin ada penundaan singkat sebelum perubahan tersedia secara keseluruhan AWS KMS. Biasanya diperlukan waktu kurang dari beberapa detik agar perubahan menyebar ke seluruh sistem, tetapi dalam beberapa kasus dapat memakan waktu beberapa menit. Jika Anda mencoba menggunakan hibah sebelum sepenuhnya menyebar melalui sistem, Anda mungkin mendapatkan kesalahan akses ditolak. Token izin memungkinkan Anda mengacu pada pemberian izin dan segera menggunakan izin pemberian izin.
Token hibah adalah string unik, tidak rahasia, berdurasi variabel, yang dikodekan base64 yang mewakili hibah. Anda dapat menggunakan token izin untuk mengidentifikasi pemberian izin dalam operasi pemberian izin. Namun, karena nilai token merupakan intisari hash, nilai tersebut tidak mengungkap detail tentang pemberian izin.
Token hibah dirancang untuk digunakan hanya sampai hibah telah diperbanyak sepenuhnya AWS KMS. Setelah itu, perwakilan penerima dapat menggunakan izin dalam pemberian izin tanpa memberikan token izin atau bukti izin lain. Anda dapat menggunakan token hibah kapan saja, tetapi setelah hibah pada akhirnya konsisten, AWS KMS gunakan hibah untuk menentukan izin, bukan token hibah.
Misalnya, perintah berikut memanggil GenerateDataKey operasi. Ini menggunakan token hibah untuk mewakili hibah yang memberikan izin kepada pemanggil (prinsipal penerima hibah) untuk memanggil kunci KMS
GenerateDataKeyyang ditentukan.$aws kms generate-data-key \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \ --key-spec AES_256 \ --grant-token $tokenAnda juga dapat menggunakan token izin untuk mengidentifikasi pemberian izin dalam operasi yang mengelola pemberian izin. Misalnya, kepala sekolah yang pensiun dapat menggunakan token hibah dalam panggilan ke RetireGrant operasi.
$aws kms retire-grant \ --grant-token $tokenCreateGrantadalah satu-satunya operasi yang menampilkan token izin. Anda tidak bisa mendapatkan token hibah dari AWS KMS operasi lain atau dari CloudTrail peristiwa log untuk CreateGrant operasi tersebut. ListRetirableGrantsOper ListGrants asi dan mengembalikan ID hibah, tetapi bukan token hibah.Lihat perinciannya di Menggunakan token izin.
- Perwakilan penerima
-
Prinsi AWS pal (identitas IAM) yang mendapatkan izin yang ditentukan dalam hibah.
Prinsip penerima hibah dapat berupa prinsipal AWS apa pun, termasuk Akun AWS (root), pengguna IAM, peran IAM, peran atau pengguna federasi, atau pengguna peran yang diasum sikan. Prinsip penerima hibah dapat berada di akun yang sama dengan kunci KMS atau akun yang berbeda. Namun, perwakilan penerima tidak boleh menjadi perwakilan layanan, grup IAM, atau AWS organisasi.
Untuk menentukan prinsipal penerima hibah, gunakan
GranteePrincipalparameter dalam permintaan. CreateGrantcatatan
Praktik terbaik IAM mencegah penggunaan pengguna IAM dengan kredenSIAL jangka panjang. Bila memungkinkan, gunakan peran IAM, yang menyediakan kredenSIAL sementara. Untuk detailnya, lihat Praktik terbaik keamanan di IAM di Panduan Pengguna IAM.
- Kepala layanan penerima hibah
-
Prinsi AWS p layanan yang mendapatkan izin yang ditentukan dalam hibah. Untuk menentukan prinsipal layanan penerima hibah, gunakan
GranteeServicePrincipalparameter dalam permintaan. CreateGrantSaat Anda membuat hibah dengan a
GranteeServicePrincipal, Anda juga harus menyertakan a SourceArn grant constraint. KenSourceArndala memastikan bahwa prinsipal layanan dapat menggunakan kunci KMS hanya ketika permintaan dibuat atas nama sumber daya yang ditentukan AWS .Ketika Anda menentukan a
GranteeServicePrincipal, Anda juga harus menentukan a RetiringPrincipal atau a RetiringServicePrincipal.
catatan
Anda dapat menentukan GranteePrincipal atau GranteeServicePrincipal, tetapi bukan keduanya.
- Penghentian (pemberian izin)
-
Mengakhiri pemberian izin. Anda menghentikan hibah setelah selesai menggunakan izin.
Mencabut dan menghentikan pemberian izin akan menghapus pemberian izin tersebut. Namun penghentian dilakukan oleh perwakilan yang ditentukan dalam pemberian izin. Pencabutan biasanya dilakukan oleh administrator kunci. Untuk detail selengkapnya, lihat Menghentikan dan mencabut pemberian izin.
- Perwakilan penghentian
-
Perwakilan yang dapat menghentikan pemberian izin. Anda dapat menentukan perwakilan penghentian dalam pemberian izin, tetapi tidak diperlukan. Prinsip pensiun dapat berupa prinsipal apa pun AWS , termasuk, pengguna IAM Akun AWS, peran IAM, pengguna federasi, dan pengguna peran yang diasumsikan. Prinsip pensiun dapat berada di akun yang sama dengan kunci KMS atau akun yang berbeda.
Untuk menentukan prinsipal pensiun, gunakan
RetiringPrincipalparameter dalam CreateGrant permintaan.catatan
Praktik terbaik IAM mencegah penggunaan pengguna IAM dengan kredenSIAL jangka panjang. Bila memungkinkan, gunakan peran IAM, yang menyediakan kredenSIAL sementara. Untuk detailnya, lihat Praktik terbaik keamanan di IAM di Panduan Pengguna IAM.
- Kepala layanan pensiun
-
Kepala AWS sekolah layanan yang memiliki izin untuk pensiun hibah. Untuk menentukan prinsipal layanan pensiun, gunakan
RetiringServicePrincipalparameter dalam CreateGrant permintaan.
catatan
Anda dapat menentukan salah satu dari RetiringPrincipal atau RetiringServicePrincipal, bukan keduanya.
Untuk informasi lebih lanjut tentang siapa yang dapat pensiun hibah, lihatMenghentikan dan mencabut pemberian izin.
- Mencabut (pemberian izin)
-
Mengakhiri pemberian izin. Anda mencabut pemberian izin untuk secara aktif menolak izin yang diberikan pemberian izin.
Mencabut dan menghentikan pemberian izin akan menghapus pemberian izin tersebut. Namun penghentian dilakukan oleh perwakilan yang ditentukan dalam pemberian izin. Pencabutan biasanya dilakukan oleh administrator kunci. Untuk detail selengkapnya, lihat Menghentikan dan mencabut pemberian izin.
- Eventual consistency (untuk pemberian izin)
-
AWS KMS API mengikuti model
konsistensi akhirnya. Saat Anda membuat, menghentikan, atau mencabut hibah, mungkin ada penundaan singkat sebelum perubahan tersedia secara keseluruhan. AWS KMS Biasanya diperlukan waktu kurang dari beberapa detik agar perubahan menyebar ke seluruh sistem, tetapi dalam beberapa kasus dapat memakan waktu beberapa menit. Anda mungkin menyadari penundaan singkat ini jika Anda mengalami kesalahan yang tidak terduga. Misalnya, Jika Anda mencoba mengelola hibah baru atau menggunakan izin dalam hibah baru sebelum hibah diketahui secara keseluruhan AWS KMS, Anda mungkin mendapatkan kesalahan akses ditolak. Jika Anda menghentikan atau mencabut pemberian izin, perwakilan penerima mungkin masih bisa menggunakan izin selama jangka waktu yang singkat sampai pemberian izin sepenuhnya dihapus. Strategi tipikal adalah mencoba kembali permintaan, dan beberapa AWS SDK menyertakan logika backoff dan coba ulang otomatis.
AWS KMS memiliki fitur untuk mengurangi penundaan singkat ini.
-
Untuk segera menggunakan izin dalam pemberian izin baru, gunakan token izin. Anda dapat menggunakan token izin untuk mengacu pada pemberian izin dalam operasi pemberian izin. Untuk petunjuk, lihat Menggunakan token izin.
-
CreateGrantOperasi memiliki
Nameparameter yang mencegah operasi percobaan ulang membuat hibah duplikat.
catatan
Token izin menggantikan validitas pemberian izin sampai semua titik akhir dalam layanan telah diperbarui dengan status izin baru. Dalam kebanyakan kasus, eventual consistency akan tercapai dalam waktu lima menit.
Untuk informasi lebih lanjut, lihat AWS KMS konsistensi akhir.
-