Menyematkan pasangan AccessKey secara langsung dalam kode sumber aplikasi merupakan risiko keamanan umum—siapa pun yang dapat memeriksa kode atau artefak yang diterapkan dapat mengompromikan kredensial Anda. Rahasia RAM memungkinkan Anda menyimpan dan melakukan rotasi pasangan AccessKey Pengguna RAM di Key Management Service (KMS), sehingga aplikasi Anda mengambil kredensial yang valid saat waktu proses alih-alih menyematkannya saat waktu build.
Topik ini memandu Anda melalui proses otorisasi KMS, pembuatan rahasia RAM, integrasinya ke dalam aplikasi, serta pengelolaan siklus hidup rahasia tersebut.
Cara kerja

Setelah Anda menyimpan pasangan AccessKey Pengguna RAM sebagai rahasia RAM, konfigurasikan aplikasi Anda hanya dengan nama rahasia tersebut. Saat waktu proses, aplikasi memanggil GetSecretValue untuk mengambil pasangan AccessKey terkini. Saat Anda melakukan rotasi rahasia, KMS membuat pasangan AccessKey baru di RAM, menulis kredensial baru tersebut sebagai nilai rahasia saat ini, lalu menghapus pasangan AccessKey lama—aplikasi Anda akan menggunakan kredensial baru pada pengambilan berikutnya tanpa perlu mengubah kode.
Batasan: Hanya pasangan AccessKey Pengguna RAM yang dapat dikelola sebagai rahasia RAM. Pasangan AccessKey Akun Alibaba Cloud tidak dapat dikelola.
Rotasi rahasia
KMS mendukung dua metode rotasi:
| Metode rotasi | Kapan digunakan | Periode rotasi |
|---|---|---|
| Automatic rotation | Rahasia RAM diintegrasikan ke dalam aplikasi yang secara berkala membacanya. | Sekitar 2 hari (disarankan: tidak lebih dari tiga bulan) |
| Immediate rotation | Respons darurat ketika rahasia bocor, atau untuk memicu rotasi secara manual saat aplikasi mengambil rahasia. | 10 menit hingga 2 hari (disarankan: 30 menit untuk rahasia yang bocor, 2 hari untuk kasus lainnya) |
Jangan menghapus Pengguna RAM yang terkait dengan rahasia selama rotasi sedang berlangsung—tindakan ini menyebabkan rotasi gagal.
Saat rahasia sedang dalam proses rotasi, Anda tidak dapat mengonfigurasi kebijakan rotasi otomatis atau memicu rotasi segera.
Prasyarat
Sebelum memulai, pastikan Anda telah:
Kunci simetris yang dibuat di instans KMS untuk mengenkripsi rahasia. Untuk informasi selengkapnya, lihat Buat kunci.
(Diperlukan jika menggunakan Pengguna RAM atau Peran RAM) Kebijakan sistem AliyunKMSSecretAdminAccess dan AliyunRAMReadOnlyAccess telah disambungkan ke Pengguna RAM atau Peran RAM yang digunakan untuk mengelola rahasia. Untuk informasi selengkapnya, lihat Grant permissions to a RAM user atau Grant permissions to a RAM role.
Jika Akun Alibaba Cloud sudah memiliki peran terkait layanan AliyunKMSManageRAMCredentialsRole atau AliyunKMSManagedRAMCrendentialsRole, lewati Langkah 1. KMS sudah memiliki izin untuk mengelola pasangan AccessKey Pengguna RAM.
Langkah 1: Berikan izin kepada KMS untuk mengelola pasangan AccessKey Pengguna RAM
Masuk ke Konsol KMS. Di bilah navigasi atas, pilih Wilayah. Di panel navigasi kiri, pilih Resource > Secrets.
Klik tab Customer-managed Secrets, temukan tipe RAM Secrets, pilih ID instans yang diperlukan dari daftar drop-down Instance ID, lalu klik Create Secret.
Pada panel Create RAM Secrets, klik Authorize KMS to access AccessKey pairs.
Pada halaman Cloud Resource Access Authorization: Setelah otorisasi selesai, KMS secara otomatis membuat peran terkait layanan AliyunKMSManageRAMCredentialsRole dan menyambungkan kebijakan izin AliyunKMSManageRAMCredentialsRolePolicy ke peran tersebut. KMS menggunakan peran ini untuk mengelola rahasia RAM dan melakukan rotasi rahasia. Untuk melihat detail peran terkait layanan dan kebijakan tersebut, lihat View the information about a RAM role dan View the information about a policy.
Jika Anda adalah administrator RAM tanpa peran AliyunKMSManageRAMCredentialsRole atau AliyunKMSManagedRAMCrendentialsRole, klik Agree to Authorization.
Jika tidak, kirim tautan Cloud Resource Access Authorization kepada administrator RAM atau pemilik Akun Alibaba Cloud untuk menyelesaikan otorisasi.
Kembali ke halaman pembuatan rahasia RAM dan klik tombol refresh untuk melanjutkan.
Langkah 2: Buat rahasia RAM
Masuk ke Konsol KMS. Di bilah navigasi atas, pilih Wilayah. Di panel navigasi kiri, pilih Resource > Secrets.
Klik tab Customer-managed Secrets, temukan tipe RAM Secrets, pilih ID instans yang diperlukan dari daftar drop-down Instance ID, lalu klik Create Secret.
Konfigurasikan parameter dan klik OK.
| Parameter | Deskripsi |
|---|---|
| Select RAM User | Pengguna RAM yang pasangan AccessKey-nya ingin Anda kelola. Pengguna RAM tersebut harus memiliki setidaknya satu pasangan AccessKey. Untuk informasi selengkapnya, lihat Create an AccessKey pair. Nama rahasia dihasilkan secara otomatis dari nama Pengguna RAM dan bersifat unik dalam wilayah tersebut. |
| Secret Value | AccessKey Secret dari Pengguna RAM. Ukuran maksimum: 30.720 byte (30 KB). |
| CMK | Customer master key (CMK) yang digunakan untuk mengenkripsi nilai rahasia. Kunci dan rahasia harus berada dalam instans KMS yang sama, dan kunci tersebut harus berupa kunci simetris. Jika Anda adalah Pengguna RAM atau Peran RAM, Anda harus memiliki izin untuk memanggil GenerateDataKey menggunakan kunci ini. Untuk jenis kunci yang didukung, lihat Key specifications for symmetric and asymmetric encryption. |
| Tag | Pasangan kunci-nilai untuk mengklasifikasikan dan mengelola rahasia. Setiap kunci tag dan nilainya dapat mencapai 128 karakter, menggunakan huruf, angka, /, \, _, -, ., +, =, :, @, dan spasi. Kunci tag tidak boleh diawali dengan aliyun atau acs:. Maksimal 20 pasangan kunci-nilai per rahasia. |
| Automatic Rotation | Apakah akan mengaktifkan rotasi rahasia otomatis. |
| Days (7 Days to 365 Days) | Interval rotasi otomatis. Wajib diisi hanya jika rotasi otomatis diaktifkan. |
| Description | Deskripsi opsional untuk rahasia tersebut. |
| Advanced Settings > Policy Settings | Kebijakan resource untuk rahasia tersebut. Untuk informasi selengkapnya, lihat Overview of secret policies. Anda dapat menggunakan kebijakan default dan menyempurnakannya setelah pembuatan. |
Langkah 3: Integrasikan rahasia RAM ke dalam aplikasi
Gunakan salah satu metode berikut untuk memanggil GetSecretValue dan mengambil rahasia RAM saat waktu proses. Untuk keamanan yang lebih baik, lakukan autentikasi menggunakan Peran RAM Instans ECS atau Peran RAM standar, bukan kredensial yang disematkan secara langsung.
Terapkan mekanisme retry di aplikasi Anda untuk menangani error sementara dan meningkatkan keandalan.
Endpoint:
Shared gateway: lihat Endpoint.
Dedicated gateway: {INSTANCE_ID}.cryptoservice.kms.aliyuncs.com| Metode | Paling cocok untuk | Gateway yang didukung |
|---|---|---|
| RAM secret plugin | Aplikasi Java 8+, Go, atau Python yang menggunakan versi SDK yang didukung | Shared gateway, dedicated gateway |
| Secret Client | Aplikasi Java 8+, Go, atau Python | Shared gateway, dedicated gateway |
| Alibaba Cloud SDK | Aplikasi dalam Java 8+ (Java 6+ dengan SDK V1.0), PHP, Go, Python, .NET (C# saja), C++, TypeScript, atau Swift | Dedicated gateway (disarankan), shared gateway |
| KMS Agent | Penerapan multi-aplikasi tempat banyak aplikasi mengakses KMS; mendukung semua bahasa melalui API HTTP standar | Dedicated gateway (disarankan), shared gateway |
| KMS Instance SDK (tidak disarankan) | Aplikasi Java 8+, PHP, Go, Python, atau .NET (C# saja) | Hanya dedicated gateway |
Kelola siklus hidup rahasia
Rotasi rahasia RAM
Masuk ke Konsol KMS. Di bilah navigasi atas, pilih Wilayah. Di panel navigasi kiri, pilih Resource > Secrets.
Klik tab Customer-managed Secrets, temukan tipe RAM Secrets, pilih ID instans yang diperlukan dari daftar drop-down Instance ID, temukan rahasia target, lalu klik Details di kolom Actions.
Konfigurasikan kebijakan rotasi:
Automatic rotation: Di pojok kanan atas, klik Configure Rotation, aktifkan atau nonaktifkan Automatic Rotation, lalu klik OK.
Immediate rotation: Di pojok kanan atas, klik Rotate Now. Pada kotak dialog Configure Rotation, atur Rotation Window ke nilai antara 10 menit hingga 2 hari, lalu klik OK.
Hapus rahasia RAM
Menghapus rahasia RAM hanya menghapusnya dari Secrets Manager. Pasangan AccessKey Pengguna RAM yang terkait tidak dihapus dari RAM.
Verifikasi bahwa rahasia tersebut tidak lagi digunakan sebelum menghapusnya. Menghapus rahasia yang aktif dapat menyebabkan kegagalan layanan.
Masuk ke Konsol KMS. Di bilah navigasi atas, pilih Wilayah. Di panel navigasi kiri, pilih Resource > Secrets.
Klik tab Customer-managed Secrets, temukan tipe RAM Secrets, pilih ID instans yang diperlukan dari daftar drop-down Instance ID, temukan rahasia target, lalu klik Schedule Deletion di kolom Actions.
Pada kotak dialog Schedule Deletion, pilih metode penghapusan dan klik OK:
Schedule Deletion: Atur periode retensi (7–30 hari). KMS akan menghapus rahasia saat periode berakhir. Selama periode retensi, klik OK di kolom Actions untuk membatalkan penghapusan.
Delete Immediately: KMS akan segera menghapus rahasia tersebut.
Kelola tag
Tag adalah pasangan kunci-nilai yang membantu Anda mengklasifikasikan dan mengelola rahasia. Setiap kunci tag dan nilainya dapat mencapai 128 karakter. Kunci tag tidak boleh diawali dengan aliyun atau acs:. Setiap rahasia mendukung hingga 20 pasangan kunci-nilai.
Tambahkan tag ke satu rahasia
Anda dapat menambahkan tag dari halaman daftar Secrets atau halaman Secret Details:
Dari halaman daftar Secrets:
Masuk ke Konsol KMS. Di bilah navigasi atas, pilih Wilayah. Di panel navigasi kiri, pilih Resource > Secrets.
Klik tab sesuai tipe rahasia Anda, pilih ID instans yang diperlukan dari daftar drop-down Instance ID, temukan rahasia target, lalu klik ikon
di kolom Tag.Klik Add. Pada kotak dialog Edit Tag, masukkan satu atau beberapa pasangan Tag Key dan Tag Value, lalu klik OK. Klik Close untuk menutup pesan konfirmasi.
Dari halaman Secret Details:
Masuk ke Konsol KMS. Pada bilah navigasi atas, pilih Wilayah. Di panel navigasi kiri, pilih Resource > Secrets.
Klik tab sesuai tipe rahasia Anda, pilih ID instans yang diperlukan dari daftar drop-down Instance ID, temukan rahasia target, lalu klik Details di kolom Actions.
Pada halaman Secret Details, klik ikon
di samping Tag.Pada kotak dialog Edit Tag, masukkan satu atau beberapa pasangan Tag Key dan Tag Value, lalu klik OK. Klik Close untuk menutup pesan konfirmasi.
Tambahkan atau hapus tag untuk beberapa rahasia sekaligus
Masuk ke Konsol KMS. Di bilah navigasi atas, pilih Wilayah. Di panel navigasi kiri, pilih Resource > Secrets.
Klik tab sesuai tipe rahasia Anda, pilih ID instans yang diperlukan dari daftar drop-down Instance ID, lalu pilih rahasia target dari daftar.
Di bagian bawah daftar:
Add tags: Klik Add Tag. Pada kotak dialog Add Tag, masukkan satu atau beberapa pasangan Tag Key dan Tag Value, lalu klik OK. Klik Close untuk menutup pesan konfirmasi.
Remove tags: Klik Remove Tag. Pada kotak dialog Batch Remove, pilih tag yang akan dihapus, lalu klik Cancel. Klik Close untuk menutup pesan konfirmasi.
Periksa akun
Fitur pemeriksaan akun memverifikasi bahwa Pengguna RAM yang terkait dengan rahasia RAM masih ada dan bahwa ID AccessKey yang disimpan dalam rahasia sesuai dengan ID AccessKey terkini dari Pengguna RAM tersebut.
Masuk ke Konsol KMS. Di bilah navigasi atas, pilih Wilayah. Di panel navigasi kiri, pilih Resource > Secrets.
Klik tab Customer-managed Secrets, temukan tipe RAM Secrets, pilih ID instans yang diperlukan dari daftar drop-down Instance ID, temukan rahasia target, lalu klik Details di kolom Actions.
Pada bagian Versions, klik Check Account dan tinjau hasilnya.