Container Service for Kubernetes (ACK) memungkinkan Anda menggunakan customer master key (CMK) di Key Management Service (KMS) untuk mengenkripsi Secrets yang disimpan di etcd pada kluster Kubernetes managed profesional. Fitur ini melindungi data sensitif—seperti kata sandi, sertifikat, kredensial, dan access key—yang tersimpan di sekitar 50 Secrets bawaan kluster serta Secrets aplikasi yang Anda buat.
Cara kerja
ACK menggunakan mekanisme KMS provider Kubernetes untuk menerapkan enkripsi amplop. Enkripsi amplop menggunakan dua lapis kunci:
Data Encryption Key (DEK): Kunci unik yang dihasilkan untuk setiap Secret. DEK mengenkripsi data Secret sesungguhnya.
Key Encryption Key (KEK): CMK Anda di KMS. KEK mengenkripsi DEK.
Alur Enkripsi
Saat Anda menyimpan Secret Kubernetes melalui Kubernetes Secret API:
API server menghasilkan DEK acak.
DEK mengenkripsi data Secret.
KMS mengenkripsi DEK menggunakan CMK Anda.
Ciphertext DEK disimpan di etcd bersama Secret yang telah dienkripsi.
Alur Dekripsi
Saat Anda mengambil Secret:
KMS mendekripsi ciphertext DEK menggunakan CMK Anda (melalui operasi
Decrypt).DEK dalam bentuk teks biasa mendekripsi data Secret.
Secret yang telah didekripsi dikembalikan.
Prasyarat
Sebelum memulai, pastikan Anda telah memiliki:
Akun Alibaba Cloud yang diberi peran AliyunCSManagedSecurityRole. Jika peran tersebut belum ditetapkan, Anda akan diminta untuk menetapkannya saat mengaktifkan enkripsi Secret.
Pengguna RAM yang diberikan izin AliyunKMSCryptoAdminAccess. Untuk detailnya, lihat Berikan izin kepada Pengguna RAM.
CMK bertipe Aliyun_AES_256 yang telah dibuat di konsol KMS. Untuk detailnya, lihat Buat CMK.
Aktifkan enkripsi Secret at rest pada kluster baru
Masuk ke Konsol ACK.
Di panel navigasi sebelah kiri, klik Clusters.
Di pojok kanan atas halaman Clusters, klik Cluster Template.
Pada kotak dialog Select Cluster Template, pilih Professional Managed Kubernetes Cluster lalu klik Create.
Di tab Managed Kubernetes, temukan Secret Encryption, pilih Select Key, lalu pilih ID CMK dari daftar drop-down.
Atur parameter lainnya dan selesaikan pembuatan kluster.
Untuk detail lengkap pembuatan kluster, lihat Buat kluster ACK Pro.
Aktifkan enkripsi Secret at rest pada kluster yang sudah ada
Di halaman Clusters, klik nama kluster Kubernetes managed profesional.
Klik tab Basic Information. Di bagian Basic Information, aktifkan Secret Encryption.
Pada kotak dialog Secret Encryption, pilih ID CMK dari daftar drop-down Existing Key lalu klik OK.
Saat status kluster berubah dari Updating menjadi Running, enkripsi Secret at rest telah diaktifkan.
Verifikasi enkripsi
Untuk memastikan enkripsi Secret aktif:
Buka Konsol ActionTrail.
Buka halaman Event Detail Query.
Filter event berdasarkan peran AliyunCSManagedSecurityRole dan cari panggilan enkripsi atau dekripsi KMS.
Jika terdapat event KMS, berarti enkripsi Secret at rest telah aktif untuk kluster tersebut.