全部产品
Search
文档中心

Key Management Service:Ikhtisar Rahasia

更新时间:Oct 23, 2025

Key Management Service (KMS) menyediakan fitur manajemen rahasia yang memungkinkan Anda menyimpan informasi rahasia seperti kata sandi akun dan pasangan AccessKey. Dengan mengintegrasikan Alibaba Cloud SDK, KMS Instance SDK, atau SDK rahasia ke dalam aplikasi, aplikasi dapat secara dinamis mengambil informasi rahasia dari KMS. Hal ini membantu mencegah risiko kebocoran informasi atau operasi jahat akibat rahasia yang di-hardcode. Topik ini menjelaskan informasi dasar tentang rahasia, termasuk skenario, elemen, dan rotasi.

Manfaat fitur manajemen rahasia

Kebocoran data sensitif, seperti kata sandi akun yang digunakan untuk mengakses database dan server, kunci SSH, serta pasangan AccessKey, merupakan ancaman utama terhadap keamanan data. Untuk mengurangi risiko kebocoran data, Anda harus secara efektif melindungi dan secara berkala merotasikan rahasia. Fitur manajemen rahasia menawarkan manfaat berikut:

  • Menggunakan algoritma enkripsi keamanan tinggi untuk mengenkripsi dan menyimpan nilai rahasia. Ini mencegah kebocoran rahasia dan aset bernilai tinggi akibat rahasia yang di-hardcode, serta meningkatkan keamanan data.

  • Menyediakan metode akses yang aman dan nyaman. Aplikasi dapat menggunakan rahasia dengan cara tanpa kode atau kode minimal.

  • Menyediakan kemampuan tanggap darurat. Aplikasi dan layanan tidak terpengaruh saat Anda segera merotasikan rahasia.

    Catatan

    Kemampuan ini hanya didukung untuk rahasia Manajemen Akses Sumber Daya (RAM), rahasia database (Mode Kelola Akun Ganda), dan rahasia Elastic Compute Service (ECS) yang diintegrasikan ke dalam aplikasi menggunakan SDK rahasia.

  • Memungkinkan Anda merotasikan rahasia dinamis dengan frekuensi tinggi. Ini mempersempit jendela rotasi dan mengurangi risiko peretasan rahasia.

  • Memungkinkan Anda menggunakan operasi API dan alat orkestrasi O&M seperti Terraform dan Resource Orchestration Service (ROS). Ini memenuhi persyaratan untuk manajemen keamanan terpusat dan berskala besar.

Skenario

Berikut ini menjelaskan skenario manajemen dasar dan penggunaan rahasia. Pada contoh berikut, nama pengguna dan kata sandi database yang dikelola sendiri dikelola di KMS.

Catatan

Jika Anda menggunakan instance ApsaraDB RDS, disarankan untuk menggunakan rahasia ApsaraDB RDS. Untuk informasi lebih lanjut, lihat Rahasia ApsaraDB RDS.

基本场景

  1. Administrator keamanan mengonfigurasi nama pengguna dan kata sandi yang diperlukan untuk aplikasi bernama MyApp agar dapat mengakses database.

  2. Administrator keamanan membuat rahasia generik bernama MyDbCreds di KMS untuk mengelola nama pengguna dan kata sandi.

  3. Ketika MyApp perlu mengakses database, MyApp mengambil rahasia MyDbCreds dari KMS menggunakan SDK rahasia.

  4. KMS membaca nama pengguna dan kata sandi dalam ciphertext, mendekripsi ciphertext, lalu mengembalikan teks biasa ke MyApp melalui HTTPS.

  5. MyApp membaca dan mengurai teks biasa yang dikembalikan oleh KMS untuk mendapatkan nama pengguna dan kata sandi. Kemudian, MyApp menggunakan nama pengguna dan kata sandi tersebut untuk mengakses database.

MyApp memanggil operasi API KMS untuk mendapatkan nama pengguna dan kata sandi. Ini mencegah kebocoran data sensitif akibat rahasia yang di-hardcode. Gambar berikut menunjukkan perbedaan antara rahasia yang di-hardcode dan rahasia yang dikelola di KMS.

凭据差异

Elemen Rahasia

Sebuah rahasia terdiri dari metadata dan satu atau lebih versi rahasia. Anda dapat masuk ke Konsol KMS dan melihat detail rahasia pada halaman Secrets.

  • Metadata

    Metadata rahasia mencakup nama rahasia, Nama Sumber Daya Alibaba Cloud (ARN), waktu pembuatan, tipe rahasia, kunci enkripsi, dan tag.

    Penting

    Kunci enkripsi hanya digunakan untuk mengenkripsi nilai rahasia. Kunci tersebut tidak digunakan untuk mengenkripsi metadata rahasia. Kunci dan rahasia harus berasal dari instance KMS yang sama, dan kunci tersebut harus berupa kunci simetris.

    image.png

  • Versi Rahasia

    Sebuah rahasia dapat memiliki beberapa versi. Setiap versi rahasia mencakup nomor versi, label tahap, dan nilai rahasia.

    image.png

    • Nomor Versi: Nomor versi hanya dibuat saat nilai rahasia disimpan. Nomor versi unik dalam sebuah rahasia dan tidak dapat dimodifikasi. Sebuah nomor versi dapat dikaitkan dengan beberapa label tahap. Setiap label tahap hanya dapat dikaitkan dengan satu nomor versi.

    • Label Tahap: Label tahap unik dalam sebuah rahasia. Label tahap terbagi menjadi dua kategori: label tahap bawaan dan label tahap kustom.

      • Label Tahap Bawaan:

        • ACSCurrent: versi saat ini dari rahasia, yaitu status nilai rahasia yang paling baru disimpan.

        • ACSPrevious: Versi sebelumnya dari sebuah rahasia.

        • ACSPending: versi tertunda dari rahasia, yang dihasilkan selama rotasi rahasia. Setelah rotasi selesai, versi tersebut dihapus.

          Catatan
          • Saat Anda memanggil operasi untuk mengambil nilai rahasia, nilai rahasia dengan label tahap ACSCurrent akan dibaca.

          • Label tahap bawaan berfungsi sebagai pointer. Misalnya, pertama kali Anda menyimpan nilai rahasia, nomor versinya dicatat sebagai v1, dan label tahap bawaannya adalah ACSCurrent. Jika nilai rahasia lain kemudian disimpan, nomor versi nilai rahasia tersebut dicatat sebagai v2, label tahap bawaan nilai rahasia v2 menjadi ACSCurrent, dan label tahap nilai rahasia v1 secara otomatis berubah menjadi ACSPrevious.

      • Label Tahap Kustom: Anda dapat mengonfigurasi beberapa label tahap kustom untuk setiap versi rahasia.

        Penting

        Hanya rahasia generik yang mendukung status versi kustom. Jumlah total status versi kustom dan bawaan gabungan tidak boleh melebihi 8.

    • Nilai Rahasia: Informasi rahasia yang disimpan. Nilainya bisa berupa string atau nilai biner.

    Catatan

    Jika jumlah versi dalam sebuah rahasia melebihi batas atas, versi paling awal yang tidak memiliki label tahap akan dihapus.

Rotasi Rahasia

Rotasi adalah praktik pembaruan rahasia secara berkala ke versi baru. Ini membantu meningkatkan keamanan rahasia. Label tahap versi rahasia baru diatur ke ACSCurrent. Aplikasi secara dinamis mengambil nilai rahasia dengan label tahap ACSCurrent.

Proses Rotasi

Metode Rotasi

  • Rotasi Otomatis: Setelah Anda menentukan periode rotasi, KMS secara otomatis melakukan rotasi saat periode yang ditentukan berakhir. Anda dapat menentukan periode rotasi untuk rahasia RAM, rahasia database, dan rahasia ECS di KMS. Anda tidak dapat menentukan periode rotasi untuk rahasia generik di KMS. Anda dapat merotasikan rahasia generik secara berkala menggunakan Function Compute.

  • Rotasi Segera: Jika rahasia Anda bocor, Anda dapat segera merotasikan rahasia sebagai tanggapan darurat. Rahasia RAM, rahasia database, dan rahasia ECS mendukung rotasi segera. Untuk segera merotasikan rahasia generik, Anda harus menyimpan nilai rahasia.

Tipe Rahasia yang Didukung

KMS mendukung empat jenis rahasia: rahasia generik, rahasia RAM, rahasia database, dan rahasia ECS. Tabel berikut menjelaskan jenis rahasia.

Catatan
  • Rahasia RAM, rahasia database, dan rahasia ECS sepenuhnya dikelola. Untuk jenis rahasia yang sepenuhnya dikelola di KMS, Anda dapat melakukan rotasi rahasia di dalam KMS. Operasi yang dilakukan di luar KMS, seperti mengubah status rahasia atau menghapus rahasia, menghambat rotasi rahasia dan memengaruhi fungsionalitas rahasia yang diambil dari KMS.

  • Jika Anda ingin mengelola rotasi rahasia, Anda dapat menggunakan rahasia generik.

Tipe Rahasia

Deskripsi

Metode Rotasi

Referensi

Rahasia Generik

Rahasia generik adalah rahasia dasar yang dapat dikelola menggunakan KMS. Anda dapat menggunakan rahasia generik untuk menyimpan data sensitif seperti akun, pasangan AccessKey, rahasia OAuth dan token, serta kunci API.

  • Simpan nilai rahasia baru untuk menghasilkan versi baru untuk rahasia generik untuk segera merotasikan rahasia generik.

  • Secara berkala rotasikan rahasia generik menggunakan Function Compute.

Kelola dan gunakan rahasia generik

Rahasia RAM

Rahasia RAM adalah rahasia yang sepenuhnya dikelola yang didukung oleh KMS. Anda dapat membuat rahasia RAM untuk menyimpan pasangan AccessKey dari pengguna RAM.

  • Konfigurasikan rotasi otomatis di KMS.

  • Segera rotasikan rahasia di KMS.

Kelola dan gunakan rahasia RAM

Rahasia Database

Rahasia database adalah rahasia yang sepenuhnya dikelola yang didukung oleh KMS. Anda dapat membuat rahasia ini untuk menyimpan nama pengguna dan kata sandi untuk instansiasi database, seperti yang disediakan oleh layanan ApsaraDB RDS dan PolarDB.

  • Konfigurasikan rotasi otomatis di KMS.

  • Segera rotasikan rahasia di KMS.

Rahasia ApsaraDB RDS

Rahasia ECS

Rahasia ECS adalah rahasia yang sepenuhnya dikelola yang didukung oleh KMS. Anda dapat membuat rahasia ECS untuk menyimpan nama pengguna dan kata sandi atau kunci SSH yang digunakan untuk masuk ke instance ECS.

  • Konfigurasikan rotasi otomatis di KMS.

  • Segera rotasikan rahasia di KMS.

Kelola dan gunakan rahasia ECS

Penagihan

Sebelum menggunakan rahasia, Anda harus membeli instance KMS dan mengonfigurasi kuota rahasia saat membeli instance tersebut. Untuk informasi lebih lanjut tentang penagihan KMS, lihat Penagihan. Untuk informasi lebih lanjut tentang cara membeli instance KMS, lihat Beli dan aktifkan instance KMS.

Kontrol Akses dan Audit

Anda dapat menggunakan Resource Access Management (RAM) untuk mengontrol akses dan izin operasi pada rahasia guna memastikan keamanan rahasia. Untuk informasi lebih lanjut tentang cara mengonfigurasi kebijakan izin, lihat Kebijakan Izin Kustom.

Anda dapat menggunakan ActionTrail untuk mencatat pembuatan, rotasi, dan pengambilan rahasia. Untuk informasi lebih lanjut, lihat Kueri Catatan Penggunaan Kunci dan Rahasia.

Referensi