All Products
Search
Document Center

Key Management Service:Buat dan kelola secrets

Last Updated:May 16, 2026

Menyematkan informasi sensitif seperti password database dan API keys secara langsung dalam aplikasi dapat menyebabkan kebocoran kredensial. Key Management Service (KMS) Credential Manager memungkinkan Anda menyimpan dan mengenkripsi data sensitif secara terpusat. Aplikasi dapat mengambil nilai kredensial secara dinamis melalui jaringan VPC menggunakan SDK, sehingga tidak perlu menyematkan data sensitif dalam kode. Topik ini menjelaskan cara membuat kredensial dan mengintegrasikannya ke dalam aplikasi Anda.

Jenis kredensial

KMS menyediakan manajemen siklus hidup penuh untuk kredensial, termasuk pembuatan, pembaruan, rotasi, dan penghapusan. Aplikasi mengambil nilai kredensial secara dinamis melalui SDK untuk menghindari hardcoding data sensitif dalam kode.

Credential type

Scenario

Description

Generic credential

Simpan data sensitif apa pun dalam format pasangan kunci-nilai atau teks biasa

Cocok untuk API keys, connection strings, teks sertifikat, dan lainnya. Data sensitif harus memiliki panjang maksimal 30.720 byte (30 KB).

RAM credential

Manage AccessKey pairs of RAM users

Pilih RAM user yang sudah ada untuk mengelola pasangan AccessKey-nya. Nama kredensial dibuat otomatis berdasarkan username RAM. Mendukung rotasi otomatis.

Database credential (RDS)

Manage RDS database accounts and passwords

Asosiasikan dengan instans RDS untuk mengelola akun database. Mendukung mode dual-account agar rotasi berjalan lancar tanpa gangguan koneksi.

Database credential (PolarDB)

Manage PolarDB database accounts and passwords

Asosiasikan dengan instans PolarDB MySQL/PostgreSQL. Hanya mendukung mode dual-account dan pembuatan akun satu klik.

Database credential (Redis)

Manage Redis/Tair instance accounts and passwords

Asosiasikan dengan instans Redis atau Tair. Hanya mendukung mode dual-account. KMS secara otomatis membuat dua akun dengan hak akses identik di database.

ECS credential

Manage logon passwords or SSH key pairs for ECS instances

Asosiasikan dengan instans ECS dan pengguna sistem. Mendukung format password maupun pasangan kunci SSH.

Prasyarat

Kunci simetris telah dibuat dalam instans KMS Anda untuk mengenkripsi kredensial. Kunci dan kredensial harus berada dalam instans KMS yang sama. Untuk informasi lebih lanjut, lihat Create a key.

Langkah 1: Buat kredensial

Anda dapat mengaktifkan rotasi otomatis saat membuat kredensial. KMS akan memperbarui nilai kredensial secara berkala untuk mengurangi risiko kebocoran kredensial. Berikut ini penjelasan cara membuat masing-masing jenis kredensial.

Generic credential

Catatan

Generic credentials tidak mendukung pengaturan rotasi saat pembuatan. Untuk merotasi generic credential, lihat Rotate a generic secret.

  1. Login ke Key Management Service console. Di bilah navigasi atas, pilih wilayah. Di panel navigasi kiri, pilih Resource > Secrets.

  2. Di tab Customer-managed Secrets, klik tab Type, lalu klik Generic Secrets.

  3. Klik Create Generic Secret di bagian atas daftar sebelah kanan. Lengkapi konfigurasi berikut, lalu klik OK.

    Parameter

    Description

    Secret Name

    Nama kredensial kustom. Harus unik dalam wilayah saat ini.

    Secret Value

    Pilih Secret Key/Value atau Plain Text dan masukkan data sensitif yang akan disimpan. Nilainya harus memiliki panjang maksimal 30.720 byte (30 KB).

    Initial Version

    Nomor versi awal. Nilai default: v1. Nilai kustom didukung.

    CMK

    Pilih kunci simetris yang digunakan untuk mengenkripsi nilai kredensial. Kunci dan kredensial harus berada dalam instans KMS yang sama.

    Penting
    • Kunci dan kredensial harus berada dalam instans KMS yang sama, dan kuncinya harus berupa kunci simetris. Untuk informasi lebih lanjut tentang kunci simetris yang didukung oleh KMS, lihat Key types and specifications.

    • Jika menggunakan RAM user atau RAM role, entitas tersebut harus memiliki izin untuk menjalankan operasi GenerateDataKey menggunakan encryption master key.

    Tags

    Tambahkan tag ke kredensial untuk klasifikasi. Setiap tag terdiri dari pasangan kunci-nilai.

    Catatan
    • Format kunci tag dan nilai tag: Panjang kunci tag atau nilai tag maksimal 128 karakter dan dapat berisi huruf, angka, garis miring (/), garis miring terbalik (\), garis bawah (_), tanda hubung (-), titik (.), tanda tambah (+), tanda sama dengan (=), titik dua (:), tanda at (@), dan spasi.

    • Kunci tag tidak boleh dimulai dengan aliyun atau acs:.

    • Setiap kredensial mendukung hingga 20 pasangan kunci-nilai tag.

    Description

    Deskripsi opsional untuk kredensial guna identifikasi dan manajemen.

    Advanced Settings > Policy Settings

    Atur kebijakan akses untuk kredensial guna mengontrol RAM user atau role mana yang dapat membaca atau mengubahnya.

    Anda dapat memilih kebijakan default terlebih dahulu dan mengubahnya nanti sesuai kebutuhan.

RAM credential

  1. Login ke Key Management Service console. Di bilah navigasi atas, pilih wilayah. Di panel navigasi kiri, pilih Resource > Secrets.

  2. Di tab Customer-managed Secrets, klik tab Type, lalu klik RAM Secrets.

  3. Klik Create RAM Secret di bagian atas daftar sebelah kanan. Lengkapi konfigurasi berikut, lalu klik OK.

    Parameter

    Description

    Select RAM User

    Pilih RAM user yang kredensialnya ingin Anda kelola. Pengguna tersebut harus memiliki setidaknya satu pasangan AccessKey. Nama kredensial dibuat otomatis berdasarkan username RAM.

    Jika pengguna belum memiliki pasangan AccessKey, buat terlebih dahulu.

    Secret Value

    Masukkan rahasia AccessKey. Nilainya harus memiliki panjang maksimal 30.720 byte (30 KB).

    CMK

    Pilih kunci simetris yang digunakan untuk mengenkripsi nilai kredensial. Kunci dan kredensial harus berada dalam instans KMS yang sama.

    Penting
    • Kunci dan kredensial harus berada dalam instans KMS yang sama, dan kuncinya harus berupa kunci simetris. Untuk informasi lebih lanjut tentang kunci simetris yang didukung oleh KMS, lihat Key types and specifications.

    • Jika menggunakan RAM user atau RAM role, entitas tersebut harus memiliki izin untuk menjalankan operasi GenerateDataKey menggunakan encryption master key.

    Tags

    Tambahkan tag ke kredensial untuk klasifikasi. Setiap tag terdiri dari pasangan kunci-nilai.

    Catatan
    • Format kunci tag dan nilai tag: Panjang kunci tag atau nilai tag maksimal 128 karakter dan dapat berisi huruf, angka, garis miring (/), garis miring terbalik (\), garis bawah (_), tanda hubung (-), titik (.), tanda tambah (+), tanda sama dengan (=), titik dua (:), tanda at (@), dan spasi.

    • Kunci tag tidak boleh dimulai dengan aliyun atau acs:.

    • Setiap kredensial mendukung hingga 20 pasangan kunci-nilai tag.

    Automatic Rotation

    Pilih apakah akan mengaktifkan rotasi otomatis. Jika diaktifkan, KMS akan memperbarui nilai kredensial secara berkala untuk mengurangi risiko kebocoran kredensial.

    Days (7 Days to 365 Days)

    Atur parameter ini hanya jika rotasi otomatis diaktifkan. Menentukan interval rotasi.

    Description

    Deskripsi opsional untuk kredensial guna identifikasi dan manajemen.

    Advanced Settings > Policy Settings

    Atur kebijakan akses untuk kredensial guna mengontrol RAM user atau role mana yang dapat membaca atau mengubahnya.

    Anda dapat memilih kebijakan default terlebih dahulu dan mengubahnya nanti sesuai kebutuhan.

Database credential (RDS)

Hanya Create Single Secret yang didukung.

  1. Login ke Key Management Service console. Di bilah navigasi atas, pilih wilayah. Di panel navigasi kiri, pilih Resource > Secrets.

  2. Di tab Customer-managed Secrets, klik tab Type, lalu klik Database Secrets.

  3. Klik Create Database Secret > Create Single Secret di bagian atas daftar sebelah kanan. Lengkapi konfigurasi berikut, lalu klik OK.

    Parameter

    Description

    Database Type

    Pilih ApsaraDB RDS Secrets.

    Secret Name

    Nama kredensial kustom. Harus unik dalam wilayah saat ini.

    ApsaraDB RDS Instance

    Pilih instans RDS di bawah Akun Alibaba Cloud Anda.

    Account Management

    • Manage Dual Accounts (Direkomendasikan): Cocok untuk akses database terprogram. KMS mengelola dua akun dengan hak akses identik untuk menghindari gangguan koneksi selama rotasi.

      • Klik Create Account untuk mengonfigurasi nama akun, memilih database, dan menentukan hak akses.

        Catatan
        • Pembuatan dan otorisasi satu klik tidak langsung membuat akun baru. Akun tersebut dibuat setelah Anda meninjau dan mengonfirmasi informasi kredensial.

        • Untuk RDS PostgreSQL, Anda tidak dapat memperoleh nama database selama pembuatan. Anda harus mengatur DBName secara manual.

      • Klik Import Existing Accounts untuk memilih username dan mengonfigurasi password.

        Catatan

        Kami menyarankan Anda mengatur password sesuai dengan yang digunakan saat membuat akun pengguna instans RDS. Jika username dan password yang diimpor tidak cocok, Anda dapat memperoleh akun dan password yang benar setelah rotasi kredensial pertama.

    • Manage Single Account: Cocok untuk akun istimewa atau skenario hosting akun O&M manual. Versi kredensial saat ini mungkin sementara tidak tersedia segera setelah reset password.

      • Klik Create Account untuk mengonfigurasi nama akun dan memilih jenis akun.

        Mendukung Standard Account dan Privileged Account. Saat memilih Standard Account, Anda juga harus memilih database dan menentukan hak akses.

      • Klik tab Import Existing Accounts untuk memilih username dan mengonfigurasi password.

    CMK

    Pilih kunci simetris yang digunakan untuk mengenkripsi nilai kredensial. Kunci dan kredensial harus berada dalam instans KMS yang sama.

    Penting
    • Kunci dan kredensial harus berada dalam instans KMS yang sama, dan kuncinya harus berupa kunci simetris. Untuk informasi lebih lanjut tentang kunci simetris yang didukung oleh KMS, lihat Key types and specifications.

    • Jika menggunakan RAM user atau RAM role, entitas tersebut harus memiliki izin untuk menjalankan operasi GenerateDataKey menggunakan encryption master key.

    Tags

    Tambahkan tag ke kredensial untuk klasifikasi. Setiap tag terdiri dari pasangan kunci-nilai.

    Catatan
    • Format kunci tag dan nilai tag: Panjang kunci tag atau nilai tag maksimal 128 karakter dan dapat berisi huruf, angka, garis miring (/), garis miring terbalik (\), garis bawah (_), tanda hubung (-), titik (.), tanda tambah (+), tanda sama dengan (=), titik dua (:), tanda at (@), dan spasi.

    • Kunci tag tidak boleh dimulai dengan aliyun atau acs:.

    • Setiap kredensial mendukung hingga 20 pasangan kunci-nilai tag.

    Automatic Rotation

    Pilih apakah akan mengaktifkan rotasi otomatis. Jika diaktifkan, KMS akan memperbarui nilai kredensial secara berkala untuk mengurangi risiko kebocoran kredensial.

    Rotation Period

    Atur parameter ini hanya jika rotasi otomatis diaktifkan. Nilai valid: 6 jam hingga 365 hari.

    Menentukan interval rotasi. KMS akan memperbarui nilai kredensial secara berkala berdasarkan pengaturan ini.

    Description

    Deskripsi opsional untuk kredensial guna identifikasi dan manajemen.

    Advanced Settings > Policy Settings

    Atur kebijakan akses untuk kredensial guna mengontrol RAM user atau role mana yang dapat membaca atau mengubahnya.

    Anda dapat memilih kebijakan default terlebih dahulu dan mengubahnya nanti sesuai kebutuhan.

Database credential (PolarDB)

Hanya Create Single Secret yang didukung, dan hanya untuk PolarDB MySQL/PostgreSQL dengan Create Account dan Manage Dual Accounts. Import Existing Accounts dan Manage Single Account tidak didukung.

  1. Login ke Key Management Service console. Di bilah navigasi atas, pilih wilayah. Di panel navigasi kiri, pilih Resource > Secrets.

  2. Di tab Customer-managed Secrets, klik tab Type, lalu klik Database Secrets.

  3. Klik Create Database Secret > Create Single Secret di bagian atas daftar sebelah kanan. Lengkapi konfigurasi berikut, lalu klik OK.

    Parameter

    Description

    Database Type

    Pilih PolarDB Secret.

    Secret Name

    Nama kredensial kustom. Harus unik dalam wilayah saat ini.

    PolarDB Cluster

    Pilih instans PolarDB di bawah Akun Alibaba Cloud Anda.

    Account Management

    Manage Dual Accounts: Cocok untuk akses database terprogram. KMS membuat dua akun standar dengan hak akses identik untuk menghindari gangguan koneksi selama rotasi.

    Create Account: Konfigurasikan nama akun dan hak akses. Hanya Standard Account yang didukung. Untuk MySQL, Anda juga harus memilih database dan menentukan hak akses.

    Catatan
    • Pembuatan dan otorisasi satu klik tidak langsung membuat akun baru. Akun tersebut dibuat setelah Anda meninjau dan mengonfirmasi informasi kredensial.

    • Nama akun harus unik. Jika nama akun sudah ada, akun tersebut tidak dapat di-host sebagai kredensial.

    CMK

    Pilih kunci simetris yang digunakan untuk mengenkripsi nilai kredensial. Kunci dan kredensial harus berada dalam instans KMS yang sama.

    Penting
    • Kunci dan kredensial harus berada dalam instans KMS yang sama, dan kuncinya harus berupa kunci simetris. Untuk informasi lebih lanjut tentang kunci simetris yang didukung oleh KMS, lihat Key types and specifications.

    • Jika menggunakan RAM user atau RAM role, entitas tersebut harus memiliki izin untuk menjalankan operasi GenerateDataKey menggunakan encryption master key.

    Tags

    Tambahkan tag ke kredensial untuk klasifikasi. Setiap tag terdiri dari pasangan kunci-nilai.

    Catatan
    • Format kunci tag dan nilai tag: Panjang kunci tag atau nilai tag maksimal 128 karakter dan dapat berisi huruf, angka, garis miring (/), garis miring terbalik (\), garis bawah (_), tanda hubung (-), titik (.), tanda tambah (+), tanda sama dengan (=), titik dua (:), tanda at (@), dan spasi.

    • Kunci tag tidak boleh dimulai dengan aliyun atau acs:.

    • Setiap kredensial mendukung hingga 20 pasangan kunci-nilai tag.

    Automatic Rotation

    Pilih apakah akan mengaktifkan rotasi otomatis. Jika diaktifkan, KMS akan memperbarui nilai kredensial secara berkala untuk mengurangi risiko kebocoran kredensial.

    Rotation Period

    Atur parameter ini hanya jika rotasi otomatis diaktifkan. Nilai valid: 6 jam hingga 365 hari.

    Menentukan interval rotasi. KMS akan memperbarui nilai kredensial secara berkala berdasarkan pengaturan ini.

    Description

    Deskripsi opsional untuk kredensial guna identifikasi dan manajemen.

    Advanced Settings > Policy Settings

    Atur kebijakan akses untuk kredensial guna mengontrol RAM user atau role mana yang dapat membaca atau mengubahnya.

    Anda dapat memilih kebijakan default terlebih dahulu dan mengubahnya nanti sesuai kebutuhan.

Database credential (Redis)

Kedua opsi Create Single Secret dan Create Bulk Secrets didukung. Contoh berikut menggunakan Create single secret.

  1. Login ke Key Management Service console. Di bilah navigasi atas, pilih wilayah. Di panel navigasi kiri, pilih Resource > Secrets.

  2. Di tab Customer-managed Secrets, klik tab Type, lalu klik Database Secrets.

  3. Klik Create Database Secret > Create Single Secret di bagian atas daftar sebelah kanan. Lengkapi konfigurasi berikut, lalu klik OK.

    Parameter

    Description

    Database Type

    Pilih ApsaraDB for Redis/Tair Instance.

    Secret Name

    Nama kredensial kustom. Harus unik dalam wilayah saat ini.

    ApsaraDB for Redis/Tair Instance

    Pilih instans Redis atau Tair di bawah Akun Alibaba Cloud Anda.

    Account Management

    Hanya Manage Dual Accounts yang didukung.

    Secret Value

    Hanya akun baru yang didukung. Akun Redis/Tair yang sudah ada tidak dapat di-host.

    • Account Name: Tentukan awalan username. KMS membuat dua akun database dengan hak akses identik dengan memanggil API. Misalnya, jika Anda menentukan user, KMS membuat user dan user_clone.

    • Permissions: Atur ke Read/Write atau Read-Only. Kedua akun baru memiliki hak akses yang sama.

    CMK

    Pilih kunci simetris yang digunakan untuk mengenkripsi nilai kredensial. Kunci dan kredensial harus berada dalam instans KMS yang sama.

    Penting
    • Kunci dan kredensial harus berada dalam instans KMS yang sama, dan kuncinya harus berupa kunci simetris. Untuk informasi lebih lanjut tentang kunci simetris yang didukung oleh KMS, lihat Key types and specifications.

    • Jika menggunakan RAM user atau RAM role, entitas tersebut harus memiliki izin untuk menjalankan operasi GenerateDataKey menggunakan encryption master key.

    Tag

    Tambahkan tag ke kredensial untuk klasifikasi. Setiap tag terdiri dari pasangan kunci-nilai.

    Catatan
    • Format kunci tag dan nilai tag: Panjang kunci tag atau nilai tag maksimal 128 karakter dan dapat berisi huruf, angka, garis miring (/), garis miring terbalik (\), garis bawah (_), tanda hubung (-), titik (.), tanda tambah (+), tanda sama dengan (=), titik dua (:), tanda at (@), dan spasi.

    • Kunci tag tidak boleh dimulai dengan aliyun atau acs:.

    • Setiap kredensial mendukung hingga 20 pasangan kunci-nilai tag.

    Automatic Rotation

    Pilih apakah akan mengaktifkan rotasi otomatis. Jika diaktifkan, KMS akan memperbarui nilai kredensial secara berkala untuk mengurangi risiko kebocoran kredensial.

    Rotation Period

    Atur parameter ini hanya jika rotasi otomatis diaktifkan. Nilai valid: 6 jam hingga 365 hari.

    Menentukan interval rotasi. KMS akan memperbarui nilai kredensial secara berkala berdasarkan pengaturan ini.

    Description

    Deskripsi opsional untuk kredensial guna identifikasi dan manajemen.

    Advanced Settings > Policy Settings

    Atur kebijakan akses untuk kredensial guna mengontrol RAM user atau role mana yang dapat membaca atau mengubahnya.

    Anda dapat memilih kebijakan default terlebih dahulu dan mengubahnya nanti sesuai kebutuhan.

ECS credential

  1. Login ke Key Management Service console. Di bilah navigasi atas, pilih wilayah. Di panel navigasi kiri, pilih Resource > Secrets.

  2. Di tab Customer-managed Secrets, klik tab Type, lalu klik ECS Secrets.

  3. Klik Create ECS Secret di bagian atas daftar sebelah kanan. Lengkapi konfigurasi berikut, lalu klik OK.

    Parameter

    Description

    Secret Name

    Nama kredensial kustom. Harus unik dalam wilayah saat ini.

    Managed Instance

    Pilih instans ECS di bawah Akun Alibaba Cloud Anda.

    Managed User

    Masukkan username pengguna yang sudah ada di instans ECS, seperti root (Linux) atau Administrator (Windows).

    Initial Secret Value

    Nilai kredensial harus memiliki panjang maksimal 30.720 byte (30 KB).

    • Password: Kata sandi logon pengguna di instans ECS.

    • Key pair: Pasangan kunci SSH yang digunakan untuk login ke instans ECS.

      Dapatkan pasangan kunci SSH

      • Gunakan pasangan kunci SSH yang dibuat di ECS

        • Kunci privat: Setelah membuat pasangan kunci SSH di ECS, kunci privat secara otomatis diunduh ke komputer lokal Anda sebagai key-pair-name.pem.

        • Kunci publik: Untuk informasi lebih lanjut, lihat dokumentasi tentang cara melihat kunci publik SSH.

      • Buat pasangan kunci SSH secara lokal

        Buat dan simpan kedua kunci privat dan publik. Misalnya, gunakan perintah ssh-keygen untuk membuat pasangan kunci RSA 3072-bit:

        ssh-keygen -t RSA -b 3072 -m PEM -f ~/.ssh/sshKey_demo -N ""

        File berikut dihasilkan:

        • ~/.ssh/sshKey_demo: menyimpan kunci privat.

        • ~/.ssh/sshKey_demo.pub: menyimpan kunci publik.

    Catatan

    Nilai kredensial harus dikonfigurasi dengan benar. Jika nilai kredensial salah, password atau pasangan kunci yang diambil dari KMS tidak dapat digunakan untuk login ke instans ECS hingga kredensial tersebut diputar pertama kali.

    CMK

    Pilih kunci simetris yang digunakan untuk mengenkripsi nilai kredensial. Kunci dan kredensial harus berada dalam instans KMS yang sama.

    Penting
    • Kunci dan kredensial harus berada dalam instans KMS yang sama, dan kuncinya harus berupa kunci simetris. Untuk informasi lebih lanjut tentang kunci simetris yang didukung oleh KMS, lihat Key types and specifications.

    • Jika menggunakan RAM user atau RAM role, entitas tersebut harus memiliki izin untuk menjalankan operasi GenerateDataKey menggunakan encryption master key.

    Tags

    Tambahkan tag ke kredensial untuk klasifikasi. Setiap tag terdiri dari pasangan kunci-nilai.

    Catatan
    • Format kunci tag dan nilai tag: Panjang kunci tag atau nilai tag maksimal 128 karakter dan dapat berisi huruf, angka, garis miring (/), garis miring terbalik (\), garis bawah (_), tanda hubung (-), titik (.), tanda tambah (+), tanda sama dengan (=), titik dua (:), tanda at (@), dan spasi.

    • Kunci tag tidak boleh dimulai dengan aliyun atau acs:.

    • Setiap kredensial mendukung hingga 20 pasangan kunci-nilai tag.

    Automatic Rotation

    Pilih apakah akan mengaktifkan rotasi otomatis. Jika diaktifkan, KMS akan memperbarui nilai kredensial secara berkala untuk mengurangi risiko kebocoran kredensial.

    Rotation Period

    Atur parameter ini hanya jika rotasi otomatis diaktifkan. Nilai valid: 1 jam hingga 365 hari.

    Menentukan interval rotasi. KMS akan memperbarui nilai kredensial secara berkala berdasarkan pengaturan ini.

    Description

    Deskripsi opsional untuk kredensial guna identifikasi dan manajemen.

    Advanced Settings > Policy Settings

    Atur kebijakan akses untuk kredensial guna mengontrol RAM user atau role mana yang dapat membaca atau mengubahnya.

    Anda dapat memilih kebijakan default terlebih dahulu dan mengubahnya nanti sesuai kebutuhan.

Catatan

Setelah kredensial dibuat, kredensial tersebut muncul dalam daftar kredensial. Verifikasi bahwa nama dan jenis kredensial sudah benar serta statusnya "Enabled".

Langkah 2: Ambil kredensial dalam aplikasi Anda

Contoh ini menggunakan Alibaba Cloud SDK untuk Java guna mengambil kredensial secara dinamis.

Persiapan

  1. Siapkan lingkungan runtime SDK.

    Requirement: Java 8 atau yang lebih baru telah diinstal.

    Verification: Jalankan java -version di terminal untuk memastikan versinya.

  2. Instal SDK. Tambahkan dependensi Maven berikut ke proyek Anda menggunakan Alibaba Cloud SDK V2.0.

    Penting

    Kami menyarankan Anda menggunakan versi terbaru. Kunjungi kms-20160120 untuk informasi versi terbaru dan kode sumber.

    <dependency>
      <groupId>com.aliyun</groupId>
      <artifactId>kms20160120</artifactId>
      <version>1.4.0</version>
    </dependency>
  3. Buat kredensial autentikasi. Alibaba Cloud SDK mendukung beberapa metode autentikasi. Contoh ini menggunakan pasangan AccessKey RAM user.

    1. Buat pasangan AccessKey untuk RAM user di RAM console. Lewati langkah ini jika Anda sudah memiliki pasangan AccessKey.

    2. Berikan izin kepada RAM user untuk mengakses KMS. Untuk mengambil nilai kredensial, lampirkan kebijakan sistem AliyunKMSSecretUserAccess dan AliyunKMSCryptoUserAccess. Untuk informasi lebih lanjut, lihat Configure policies.

      Catatan

      KMS menyediakan dua metode konfigurasi izin akses:

  4. Dapatkan sertifikat CA untuk instans KMS Anda.

    1. Di halaman Instances, klik tab Software Key Management atau Hardware Key Management, lalu pilih instans KMS target.

    2. Klik ID instans atau klik Details di kolom Actions. Di halaman Details, di bagian Instance CA Certificate, klik Download dan simpan sertifikat dengan aman.

      Catatan

      File sertifikat CA yang diunduh secara default diberi nama PrivateKmsCA_kst-******.pem.

  5. Dapatkan titik akhir VPC instans KMS Anda.

    1. Di halaman Instances, klik tab Software Key Management atau Hardware Key Management, lalu pilih instans KMS target.

    2. Klik ID instans untuk membuka halaman detail dan lihat Instance VPC Endpoint.

Ambil kredensial

  1. Inisialisasi klien SDK.

    Catatan

    Sebelum menjalankan kode contoh, ganti placeholder berikut dengan nilai aktual:

    • <VPC endpoint>: Ganti dengan titik akhir VPC instans KMS Anda.

    • <CA certificate>: Ganti dengan konten aktual sertifikat CA instans KMS.

    • <SecretName>: Ganti dengan nama kredensial yang dibuat di Langkah 1.

        public static com.aliyun.kms20160120.Client createClient() throws Exception {
            // Code leaks may cause AccessKey compromise and threaten the security of all resources under your account. The following sample code is for reference only.
            // We recommend that you use STS for more secure authentication. For more information, see https://www.alibabacloud.com/help/document_detail/378657.html.
            com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
                    // Required. Make sure the ALIBABA_CLOUD_ACCESS_KEY_ID environment variable is set.
                    .setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
                    // Required. Make sure the ALIBABA_CLOUD_ACCESS_KEY_SECRET environment variable is set.
                    .setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
            // Enter the VPC endpoint of your KMS instance, for example, kst-hzz65f176a0ogplgq****.cryptoservice.kms.aliyuncs.com
            config.endpoint = "<VPC endpoint>";
            // Enter the CA certificate content of your KMS instance
            config.ca = "<CA certificate>";
            return new com.aliyun.kms20160120.Client(config);
        }
  2. Panggil operasi GetSecretValue untuk mengambil nilai kredensial.

    // This file is auto-generated, don't edit it. Thanks.
    package com.aliyun.sample;
    
    import com.aliyun.tea.*;
    
    public class Sample {
    
      public static com.aliyun.kms20160120.Client createClient() throws Exception {
            // Code leaks may cause AccessKey compromise and threaten the security of all resources under your account. The following sample code is for reference only.
            // We recommend that you use STS for more secure authentication. For more information, see https://www.alibabacloud.com/help/document_detail/378657.html.
            com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
                    // Required. Make sure the ALIBABA_CLOUD_ACCESS_KEY_ID environment variable is set.
                    .setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
                    // Required. Make sure the ALIBABA_CLOUD_ACCESS_KEY_SECRET environment variable is set.
                    .setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
            // Enter the VPC endpoint of your KMS instance, for example, kst-hzz65f176a0ogplgq****.cryptoservice.kms.aliyuncs.com
            config.endpoint = "<VPC endpoint>";
            // Enter the CA certificate content of your KMS instance
            config.ca = "<CA certificate>";
            return new com.aliyun.kms20160120.Client(config);
        }
    
        public static void main(String[] args_) throws Exception {
            java.util.List<String> args = java.util.Arrays.asList(args_);
            com.aliyun.kms20160120.Client client = Sample.createClient();
            com.aliyun.kms20160120.models.GetSecretValueRequest getSecretValueRequest = new com.aliyun.kms20160120.models.GetSecretValueRequest()
                    .setSecretName("<SecretName>");
            com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
            try {
                // Replace with your own logic to process the API response
                client.getSecretValueWithOptions(getSecretValueRequest, runtime);
            } catch (TeaException error) {
                // Print for demonstration only. Handle exceptions carefully in production.
                // Error message
                System.out.println(error.getMessage());
                // Diagnostic URL
                System.out.println(error.getData().get("Recommend"));
                com.aliyun.teautil.Common.assertAsString(error.message);
            } catch (Exception _error) {
                TeaException error = new TeaException(_error.getMessage(), _error);
                // Print for demonstration only. Handle exceptions carefully in production.
                // Error message
                System.out.println(error.getMessage());
                // Diagnostic URL
                System.out.println(error.getData().get("Recommend"));
                com.aliyun.teautil.Common.assertAsString(error.message);
            }
        }
    }
Catatan

Setelah pemanggilan berhasil, SDK mengembalikan objek respons yang berisi field seperti SecretName dan SecretData. Cetak response.body.secretData untuk melihat nilai kredensial, lalu gunakan dalam aplikasi Anda untuk mengakses layanan yang sesuai guna memverifikasi konektivitas.