Membuat kunci AWS KMS

Ringkasan

GKE di AWS menggunakan kunci simetris AWS Key Management Service (KMS) yang dikelola pelanggan untuk mengenkripsi:

Untuk lingkungan produksi, sebaiknya gunakan kunci yang berbeda untuk enkripsi konfigurasi dan volume. Untuk lebih meminimalkan risiko jika kunci disusupi, Anda juga dapat membuat kunci yang berbeda untuk setiap hal berikut:

Untuk keamanan tambahan, Anda dapat membuat kebijakan kunci AWS KMS yang hanya menetapkan serangkaian izin minimum yang diperlukan. Untuk mengetahui informasi selengkapnya, lihat Membuat kunci KMS dengan izin tertentu.

Membuat kunci AWS KMS

Untuk membuat kunci, jalankan perintah berikut:

aws --region AWS_REGION kms create-key \
    --description "KEY_DESC"

Ganti kode berikut:

  • AWS_REGION dengan nama region AWS Anda
  • KEY_DESC dengan deskripsi teks kunci Anda

Untuk setiap kunci yang Anda buat, simpan nilai bernama KeyMetadata.Arn dalam output perintah ini untuk digunakan nanti.

Membuat kunci KMS dengan izin tertentu

Jika Anda membuat kunci terpisah untuk fungsi yang berbeda, Anda harus memberikan kebijakan kunci KMS untuk setiap kunci yang memberikan izin yang sesuai pada kunci tersebut. Jika Anda tidak menentukan kebijakan kunci saat membuat kunci, AWS KMS akan membuat kebijakan kunci default yang memberi semua principal di akun pemilik akses tanpa batas ke semua operasi untuk kunci tersebut.

Saat membuat kebijakan kunci, Anda harus mengizinkan akses kebijakan IAM AWS ke kebijakan kunci. Kebijakan kunci juga harus memberikan izin akun Anda untuk menggunakan kebijakan IAM. Tanpa izin dari kebijakan kunci, kebijakan IAM yang mengizinkan izin tidak akan berpengaruh. Untuk mengetahui informasi selengkapnya, lihat Kebijakan kunci di AWS KMS.

Tabel berikut menjelaskan izin untuk setiap peran IAM AWS yang digunakan GKE di AWS.

Peran agen layanan GKE Multi-Cloud API Peran bidang kontrol Peran node pool Peran Layanan AWS untuk AutoScaling
Enkripsi konfigurasi bidang kontrol cluster kms:Encrypt kms:Decrypt T/A T/A
Enkripsi database bidang kontrol cluster T/A kms:Encrypt
kms:Decrypt
T/A T/A
Enkripsi volume utama bidang kontrol cluster kms:GenerateDataKeyWithoutPlaintext kms:CreateGrant T/A T/A
Enkripsi volume root bidang kontrol cluster T/A T/A T/A Lihat Bagian kebijakan utama yang mengizinkan akses ke kunci yang dikelola pelanggan
Enkripsi konfigurasi node pool kms:Encrypt T/A kms:Decrypt T/A
Enkripsi volume root node pool T/A T/A T/A Lihat Bagian kebijakan utama yang mengizinkan akses ke kunci yang dikelola pelanggan
Persyaratan lainnya kms:DescribeKey T/A T/A T/A

Langkah berikutnya