全部产品
Search
文档中心

Container Service for Kubernetes:Gunakan KMS untuk mengenkripsi rahasia di kluster ACK Edge

更新时间:Nov 11, 2025

Di kluster ACK Edge Pro, Anda dapat menggunakan kunci yang dibuat di Alibaba Cloud Key Management Service (KMS) untuk mengenkripsi rahasia Kubernetes. Hal ini meningkatkan perlindungan terhadap data sensitif. Topik ini menjelaskan cara menggunakan kunci yang dikelola di KMS untuk mengenkripsi rahasia Kubernetes di kluster ACK Edge Pro.

Prasyarat

Item

Deskripsi

Kunci KMS

Kunci KMS telah dibuat di Konsol KMS. Kunci tersebut berada di Wilayah tempat kluster ACK Pro Anda berada.

Kluster ACK Pro mendukung kunci default, kunci yang dilindungi perangkat lunak, dan kunci yang dilindungi perangkat keras. Untuk informasi selengkapnya tentang fitur manajemen kunci KMS, lihat Memulai Key Management. Untuk informasi selengkapnya tentang penagihan KMS, lihat Penagihan.

Penting

Setelah Anda mengaktifkan enkripsi Secret, jangan gunakan API KMS atau Konsol KMS untuk menonaktifkan atau menghapus kunci yang digunakan untuk mengenkripsi dan mendekripsi Secret. Jika tidak, server API menjadi tidak tersedia dan tidak dapat mengambil objek Secret atau akun layanan. Akibatnya, layanan mengalami gangguan.

Konfigurasi ACL jaringan kluster

Saat Anda mengaktifkan enkripsi Secret, KMS pada lapisan kontrol perlu mengakses OpenAPI Alibaba Cloud KMS untuk melakukan enkripsi dan dekripsi instans Secret. Oleh karena itu, Anda harus memastikan bahwa aturan keluar dari grup keamanan atau ACL jaringan VPC yang digunakan oleh kluster mengizinkan akses ke blok CIDR (100.64.0.0/10) layanan Alibaba Cloud. Jika tidak, lapisan kontrol kluster mungkin menjadi tidak tersedia. Untuk informasi selengkapnya, lihat Mengonfigurasi grup keamanan untuk kluster.

Otorisasi

Operasi berikut dilakukan berdasarkan jenis akun Anda.

  • Jika Anda menggunakan Akun Alibaba Cloud, akun tersebut harus diotorisasi untuk mengasumsikan peran AliyunCSManagedSecurityRole. Jika tidak, Konsol ACK akan meminta Anda untuk melakukan otorisasi saat Anda mengaktifkan enkripsi Secret. Anda dapat mengikuti petunjuk di konsol untuk menyelesaikan otorisasi atau buka halaman Otorisasi Cepat RAM dan selesaikan otorisasi tersebut.

  • Jika Anda menggunakan pengguna Resource Access Management (RAM) atau Peran RAM:

Ikhtisar enkripsi rahasia

Rahasia Kubernetes digunakan untuk menyimpan dan mengelola data sensitif, seperti kata sandi aplikasi, sertifikat Transport Layer Security (TLS), dan kredensial untuk mengunduh citra Docker. Kubernetes menyimpan rahasia tersebut di etcd kluster. Untuk informasi selengkapnya, lihat Secrets.

Di kluster ACK Edge Pro, Anda dapat menggunakan kunci yang dibuat di KMS untuk mengenkripsi rahasia Kubernetes. Mekanisme penyedia KMS Kubernetes digunakan selama proses enkripsi. Penyedia KMS menerapkan enkripsi amplop untuk mengenkripsi dan mendekripsi rahasia yang disimpan di etcd. Prosedur enkripsi dan dekripsi rahasia adalah sebagai berikut:

  1. Saat Anda menyimpan rahasia Kubernetes, server API menghasilkan kunci enkripsi data (DEK) acak untuk mengenkripsi rahasia tersebut. Server API kemudian mengirim DEK ke KMS. KMS menggunakan kunci yang ditentukan untuk mengenkripsi DEK dan mengembalikan DEK terenkripsi ke server API. Selanjutnya, server API menyimpan rahasia terenkripsi beserta DEK-nya di etcd.

  2. Saat Anda mendekripsi rahasia Kubernetes, sistem memanggil operasi Decrypt KMS untuk mendekripsi DEK terlebih dahulu. Sistem kemudian menggunakan DEK dalam bentuk teks biasa untuk mendekripsi rahasia Kubernetes dan mengembalikan Secret yang telah didekripsi.

Untuk informasi selengkapnya, lihat Penyedia KMS dan Menggunakan enkripsi amplop.

Aktifkan fitur enkripsi rahasia untuk kluster ACK Edge Pro

Buat kluster baru

  1. Masuk ke Konsol ACK. Di panel navigasi sebelah kiri, klik Clusters.

  2. Di pojok kanan atas halaman Clusters, klik Create Kubernetes Cluster.

  3. Di halaman Create Cluster, klik tab ACK Edge. Di bagian bawah tab, klik Show Advanced Options. Temukan parameter Secret Encryption dan pilih Select Key. Lalu, pilih ID kunci dari daftar tarik-turun.

    Jika Anda belum membuat kunci di KMS, klik create keys untuk membuka Konsol KMS dan membuatnya. Untuk informasi selengkapnya, lihat Create a CMK.

    Untuk informasi selengkapnya tentang konfigurasi lainnya untuk kluster ACK Edge Pro, lihat Create a cluster.

    image.png

    Masuk ke Konsol ActionTrail. Di panel navigasi sebelah kiri, klik Event Query. Di halaman Event Query, jika peran sistem aliyuncsmanagedsecurityrole digunakan untuk mengenkripsi dan mendekripsi log event, berarti fitur enkripsi rahasia telah diaktifkan untuk kluster tersebut.结果验证

Kluster yang sudah dibuat

  1. Masuk ke Konsol ACK. Di panel navigasi sebelah kiri, klik Clusters.

  2. Di halaman Clusters, klik nama kluster ACK Pro yang ingin Anda kelola. Di halaman detail kluster, klik tab Basic Information. Di bagian Security and Auditing, aktifkan Secret Encryption.

    Jika ini pertama kalinya Anda mengaktifkan enkripsi Secret, klik Authorize Now untuk diarahkan ke halaman RAM Quick Authorization. Ikuti petunjuknya, lalu klik Authorize.

    Catatan
    • Jika Anda ingin mengaktifkan enkripsi Secret, pastikan pengguna RAM atau Peran RAM yang Anda gunakan memiliki salah satu peran Role-Based Access Control (RBAC) berikut: administrator atau insinyur O&M. Untuk informasi selengkapnya, lihat Grant RBAC permissions to a RAM user or RAM role.

    • Jika Anda ingin menetapkan peran aliyuncsmanagedsecurityrole, pastikan Anda masuk ke Konsol ACK dengan Akun Alibaba Cloud atau pengguna RAM atau Peran RAM yang memiliki izin manajemen RAM.

  3. Di kotak dialog Secret Encryption, pilih kunci yang sudah ada dan klik OK.

    Jika tidak ada kunci yang tersedia, klik create keys untuk membuat kunci di Konsol KMS. Untuk informasi selengkapnya, lihat Create a CMK.

    Jika status kluster berubah dari Updating menjadi Running, berarti fitur enkripsi Secret telah diaktifkan untuk kluster tersebut.

    Jika Anda tidak lagi memerlukan fitur enkripsi Secret, nonaktifkan Secret Encryption di bagian Security and Auditing.

Gunakan rotasi kunci otomatis untuk mengenkripsi Secret

Anda dapat menggunakan fitur rotasi kunci otomatis yang disediakan oleh KMS untuk mengenkripsi Secret. Selama rotasi kunci, sistem tetap menggunakan kunci asli untuk mengenkripsi Secret yang sudah ada, sedangkan Secret baru dienkripsi menggunakan kunci baru. Untuk informasi selengkapnya tentang rotasi kunci otomatis, lihat Configure key rotation.

Untuk memaksa sistem menggunakan kunci baru dalam mengenkripsi Secret yang sudah ada, jalankan perintah berikut setelah kunci diputar:

kubectl get secrets --all-namespaces -o json | kubectl annotate --overwrite -f - encryption-key-rotation-time="$(date -u +'%Y-%m-%dT%H:%M:%S%z')"

FAQ

Setelah enkripsi Secret diaktifkan, apakah ciphertext dikembalikan jika saya menggunakan kubectl untuk mengkueri Secret?

Tidak. Setelah enkripsi Secret diaktifkan, teks biasa dikembalikan jika Anda menggunakan kubectl untuk mengkueri Secret. Fitur enkripsi Secret hanya mengenkripsi Secret yang disimpan di etcd. Setelah Anda mengaktifkan enkripsi Secret, Secret disimpan di etcd sebagai ciphertext. Namun, jika Anda menggunakan klien kubectl untuk mengkueri Secret dengan memanggil API Secret yang disediakan oleh server API kluster, teks biasa akan dikembalikan untuk Secret tersebut.

Bagaimana cara melarang pengguna RAM atau Peran RAM mengaktifkan atau menonaktifkan fitur enkripsi Secret untuk kluster ACK Edge yang sudah ada?

Untuk melarang pengguna RAM atau Peran RAM mengaktifkan atau menonaktifkan fitur enkripsi Secret untuk kluster ACK Edge yang sudah ada, sambungkan Kebijakan RAM berikut ke pengguna RAM atau Peran RAM tersebut. Untuk informasi selengkapnya, lihat Use RAM to authorize access to clusters and cloud resources.

  {
      "Action": [
          "cs:UpdateKMSEncryption"
      ],
      "Effect": "Deny",
      "Resource": [
          "*"
      ]
  }