全部产品
Search
文档中心

Simple Message Queue (formerly MNS):Konfigurasikan endpoints dan kredensial akses

更新时间:Jul 06, 2025

Untuk menggunakan Simple Message Queue (sebelumnya MNS) SDK untuk Java dalam mengirim permintaan, Anda harus mengonfigurasi endpoints dan kredensial akses. Layanan Alibaba Cloud memanfaatkan kredensial akses untuk memverifikasi identitas dan izin pengguna. Anda dapat memilih berbagai jenis kredensial akses sesuai dengan kebutuhan otentikasi dan otorisasi di skenario yang berbeda. Topik ini menjelaskan cara mengonfigurasi endpoints, kredensial akses sementara, dan kredensial akses jangka panjang.

Konfigurasikan endpoints

Konfigurasikan endpoint publik atau internal dari SMQ di file aliyun-mns.properties. File ini biasanya disimpan di direktori ${user.home}/.aliyun-mns.properties.

Pada sistem operasi Linux atau macOS, file aliyun-mns.properties disimpan di direktori ~/.aliyun-mns.properties.

Pada sistem operasi Windows, file aliyun-mns.properties disimpan di direktori %USERPROFILE%\.aliyun-mns.properties.

Gunakan kode contoh berikut untuk mengonfigurasi file aliyun-mns.properties:

mns.accountendpoint=http://120228xxxxxxx.mns.cn-xxxxxx.aliyuncs.com

Anda dapat melihat informasi tentang endpoint dari SMQ di bagian Endpoint pada halaman Queue Details atau Topic Details di konsol SMQ.image

Konfigurasikan kredensial akses

Jenis kredensial akses berikut didukung:

  • Kredensial akses jangka panjang: Untuk memastikan keamanan data, kami menyarankan agar Anda tidak menggunakan kredensial akses jangka panjang. Untuk skenario yang memerlukan kenyamanan, kredensial akses jangka panjang menghilangkan kebutuhan pembaruan berkala dalam periode waktu yang lama. Kami menyarankan Anda memperbarui kredensial akses jangka panjang setiap tiga bulan untuk memastikan keamanan akun Alibaba Cloud Anda. Jika kredensial akses jangka panjang bocor atau tidak lagi digunakan, Anda dapat menghapus atau menonaktifkannya untuk mengurangi risiko keamanan.

  • Kredensial akses sementara: Untuk skenario yang memerlukan keamanan tinggi, seperti memberi otorisasi sementara aplikasi untuk mengakses SMQ, kami menyarankan Anda menggunakan kredensial akses sementara. Kredensial akses sementara hanya valid selama periode tertentu untuk mencegah kebocoran kredensial. Kredensial akses sementara mendukung kontrol akses granular untuk mencegah risiko keamanan yang disebabkan oleh izin berlebihan.

Konfigurasikan kredensial akses jangka panjang

Jika Anda ingin menggunakan SDK untuk Java untuk mengakses SMQ dalam aplikasi atau layanan untuk jangka waktu panjang, Anda dapat menggunakan salah satu metode berikut untuk mengonfigurasi kredensial akses jangka panjang:

Konfigurasikan pasangan AccessKey untuk Pengguna Resource Access Management (RAM): Jika Anda ingin mengakses SMQ untuk jangka waktu panjang, Anda dapat menggunakan pasangan AccessKey dari pengguna RAM.

  1. Peroleh pasangan AccessKey dari pengguna RAM.

    Untuk informasi lebih lanjut, lihat bagian Buat pasangan AccessKey untuk pengguna RAM dari topik "Buat pasangan AccessKey".

    Penting

    Kami menyarankan Anda memutar pasangan AccessKey dari pengguna RAM yang telah digunakan selama lebih dari tiga bulan. Kami juga menyarankan Anda menonaktifkan dan menghapus pasangan AccessKey dari pengguna RAM yang tidak digunakan untuk waktu yang lama. Ini membantu mengurangi risiko kebocoran pasangan AccessKey.

  2. Konfigurasikan pasangan AccessKey dari pengguna RAM sebagai kredensial akses.

    Konfigurasikan variabel lingkungan

    1. Jalankan perintah berikut untuk mengonfigurasi variabel lingkungan:

      macOS

      1. Buka terminal.

      2. Jalankan perintah berikut:

        nano ~/.bash_profile
      3. Tambahkan pasangan AccessKey dari pengguna RAM ke akhir file.

        export ALIBABA_CLOUD_ACCESS_KEY_ID=LTA****
        export ALIBABA_CLOUD_ACCESS_KEY_SECRET=moiEs**** 
      4. Tekan Ctrl+X, tekan Y untuk menyimpan file, dan kemudian tekan Enter untuk menutup file.

      5. Jalankan perintah berikut untuk membuat perubahan berlaku:

        source ~/.bash_profile
      6. Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:

        echo $ALIBABA_CLOUD_ACCESS_KEY_ID
        echo $ALIBABA_CLOUD_ACCESS_KEY_SECRET

        Contoh tanggapan sukses:

        LTA****
        moiEs****  

      Linux

      1. Buka terminal.

      2. Jalankan perintah berikut:

        sudo vim /etc/profile
      3. Tambahkan pasangan AccessKey dari pengguna RAM ke akhir file.

        export ALIBABA_CLOUD_ACCESS_KEY_ID=LTA****
        export ALIBABA_CLOUD_ACCESS_KEY_SECRET=moiEs**** 
      4. Tekan Esc untuk keluar dari mode edit. Kemudian, masukkan :wq dan tekan Enter untuk menyimpan dan menutup file.

      5. Jalankan perintah berikut untuk membuat perubahan berlaku:

        source /etc/profile
      6. Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:

        echo $ALIBABA_CLOUD_ACCESS_KEY_ID
        echo $ALIBABA_CLOUD_ACCESS_KEY_SECRET

        Contoh tanggapan sukses:

        LTA****
        moiEs**** 

      Windows

      Gunakan GUI

      Dalam contoh ini, Windows 10 digunakan. Anda dapat melakukan langkah-langkah berikut untuk mengonfigurasi pasangan AccessKey dari pengguna RAM dengan menggunakan variabel lingkungan pada GUI:

      1. Di desktop Windows, klik kanan This PC dan pilih Properties. Di halaman yang muncul, klik Advanced system settings. Di kotak dialog System Properties, klik Environment Variables pada tab Advanced. Di kotak dialog Environment Variables, klik New di bagian User variables or System variables.

      2. Tentukan variabel lingkungan. Tabel berikut menjelaskan variabel lingkungan.

        Variabel

        Contoh

        ALIBABA_CLOUD_ACCESS_KEY_ID

        LTA****

        ALIBABA_CLOUD_ACCESS_KEY_SECRET

        moiEs****

      3. Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:

        echo $ALIBABA_CLOUD_ACCESS_KEY_ID
        echo $ALIBABA_CLOUD_ACCESS_KEY_SECRET

        Contoh tanggapan sukses:

        LTA****
        moiEs**** 

      Gunakan CMD

      1. Buka antarmuka baris perintah (CLI).

      2. Jalankan perintah berikut untuk mengonfigurasi variabel lingkungan menggunakan pasangan AccessKey:

        set ALIBABA_CLOUD_ACCESS_KEY_ID=LTA****
        set ALIBABA_CLOUD_ACCESS_KEY_SECRET=moiEs****  
      3. Jalankan perintah berikut untuk membuat perubahan berlaku:

        setx ALIBABA_CLOUD_ACCESS_KEY_ID "%MNS_ACCESS_KEY_ID%"
        setx ALIBABA_CLOUD_ACCESS_KEY_SECRET "%MNS_ACCESS_KEY_SECRET%"
      4. Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:

        echo %ALIBABA_CLOUD_ACCESS_KEY_ID%
        echo %ALIBABA_CLOUD_ACCESS_KEY_SECRET%

        Contoh tanggapan sukses:

        LTA****
        moiEs****  

      Gunakan Windows PowerShell

      1. Tekan Win+X.

      2. Tentukan pasangan AccessKey dari pengguna RAM.

        Berlaku untuk sesi saat ini
        1. Pada pesan yang muncul, pilih Windows PowerShell.

        2. Tentukan variabel lingkungan berikut untuk sesi saat ini:

          $env:ALIBABA_CLOUD_ACCESS_KEY_ID = "LTA****"
          $env:ALIBABA_CLOUD_ACCESS_KEY_SECRET = "moiEs****"
        Berlaku untuk semua sesi baru
        1. Pada pesan yang muncul, pilih Windows PowerShell.

        2. Tentukan variabel lingkungan berikut untuk semua sesi baru:

          [System.Environment]::SetEnvironmentVariable('ALIBABA_CLOUD_ACCESS_KEY_ID', 'LTA****', [System.EnvironmentVariableTarget]::User)
          [System.Environment]::SetEnvironmentVariable('ALIBABA_CLOUD_ACCESS_KEY_SECRET', 'moiEs****', [System.EnvironmentVariableTarget]::User)
        Berlaku untuk semua pengguna
        1. Pada pesan yang muncul, pilih Windows PowerShell (Administrator).

        2. Tentukan variabel lingkungan berikut untuk semua pengguna:

          [System.Environment]::SetEnvironmentVariable('ALIBABA_CLOUD_ACCESS_KEY_ID', 'LTA****', [System.EnvironmentVariableTarget]::Machine)
          [System.Environment]::SetEnvironmentVariable('ALIBABA_CLOUD_ACCESS_KEY_SECRET', 'moiEs****', [System.EnvironmentVariableTarget]::Machine)
      3. Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:

        Get-ChildItem env:ALIBABA_CLOUD_ACCESS_KEY_ID
        Get-ChildItem env:ALIBABA_CLOUD_ACCESS_KEY_SECRET

        Contoh tanggapan sukses:

        LTA****
        moiEs**** 
    2. Peroleh pasangan AccessKey dari pengguna RAM dari variabel lingkungan.

      // Peroleh kredensial akses dari variabel lingkungan. 
      CloudAccount account = new CloudAccount(ServiceSettings.getMNSAccountEndpoint());

    Tanamkan kredensial akses dalam kode

    Peringatan

    Masalah keamanan dapat terjadi jika Anda menanamkan kredensial akses dalam kode. Kredensial akses yang bocor dapat digunakan oleh penyerang untuk mengakses sumber daya Anda, yang menyebabkan pelanggaran data. Untuk memastikan keamanan, kami menyarankan Anda menggunakan metode yang lebih aman, seperti memperoleh kredensial akses dari variabel lingkungan.

    CloudAccount account = new CloudAccount(ServiceSettings.getMNSAccountEndpoint());

Konfigurasikan kredensial akses sementara

Jika Anda ingin menggunakan SDK untuk Java untuk mengakses SMQ secara sementara, Anda dapat menggunakan salah satu metode berikut untuk mengonfigurasi kredensial akses sementara:

  • Konfigurasikan kredensial akses sementara yang disediakan oleh STS: Jika Anda ingin mengakses SMQ dalam periode waktu tertentu, Anda dapat menggunakan STS untuk mengonfigurasi kredensial akses sementara yang disediakan oleh STS. Saat menggunakan kredensial akses sementara, Anda tidak perlu mengungkapkan pasangan AccessKey dari pengguna RAM Anda. Ini memastikan akses aman ke SMQ.

  • Konfigurasikan peran RAM: Jika Anda ingin memberi otorisasi kepada pengguna RAM dari akun Alibaba Cloud Anda atau pengguna RAM dari akun Alibaba Cloud lain untuk mengakses SMQ, Anda dapat mengonfigurasi peran RAM untuk pengguna RAM.

  • Konfigurasikan peran RAM untuk instance Elastic Compute Service (ECS): Jika Anda ingin mengakses SMQ dari instance ECS, Anda dapat menggunakan peran RAM yang ditetapkan ke instance ECS untuk mengakses SMQ. Anda dapat menetapkan peran RAM ke instance ECS dan mengakses SMQ dari instance ECS dengan menggunakan metode tertentu berdasarkan kredensial akses sementara yang disediakan oleh STS. Kredensial akses sementara yang disediakan oleh STS dibuat dan diperbarui secara otomatis. Aplikasi dapat memperoleh kredensial akses sementara tersebut dengan menggunakan URL metadata instans.

Konfigurasikan kredensial akses sementara yang disediakan oleh STS

  1. Buat pengguna RAM.

    Untuk informasi tentang cara membuat pengguna RAM, lihat Buat pengguna RAM.

  2. Lampirkan kebijakan AliyunSTSAssumeRoleAccess ke pengguna RAM.

    Untuk informasi lebih lanjut, lihat Berikan izin kepada pengguna RAM.

  3. Gunakan pengguna RAM untuk memanggil operasi AssumeRole dari STS untuk memperoleh kredensial akses sementara.

    Untuk informasi lebih lanjut, lihat AssumeRole.

  4. Konfigurasikan kredensial akses sementara yang diperoleh dari STS.

    Konfigurasikan variabel lingkungan

    1. Gunakan kredensial akses sementara yang diperoleh dari STS untuk mengonfigurasi variabel lingkungan.

      macOS

      1. Buka terminal.

      2. Jalankan perintah berikut:

        nano ~/.bash_profile
      3. Tambahkan kredensial akses sementara, termasuk ID AccessKey, Rahasia AccessKey, dan token keamanan, yang diperoleh dari STS ke akhir file.

        export MNS_ACCESS_KEY_ID=LTA****
        export MNS_ACCESS_KEY_SECRET=moiEs****
        export MNS_SESSION_TOKEN=CAES****
      4. Tekan Ctrl+X, tekan Y untuk menyimpan file, dan kemudian tekan Enter untuk menutup file.

      5. Jalankan perintah berikut untuk membuat perubahan berlaku:

        source ~/.bash_profile
      6. Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:

        echo $MNS_ACCESS_KEY_ID
        echo $MNS_ACCESS_KEY_SECRET
        echo $MNS_SESSION_TOKEN

        Contoh tanggapan sukses:

        LTA****
        moiEs**** 
        CAES****

      Linux

      1. Buka terminal.

      2. Jalankan perintah berikut:

        sudo vim /etc/profile
      3. Tambahkan kredensial akses sementara, termasuk ID AccessKey, Rahasia AccessKey, dan token keamanan, yang diperoleh dari STS ke akhir file.

        export MNS_ACCESS_KEY_ID=LTA****
        export MNS_ACCESS_KEY_SECRET=moiEs****
        export MNS_SESSION_TOKEN=CAES****
      4. Tekan Esc untuk keluar dari mode edit. Kemudian, masukkan :wq dan tekan Enter untuk menyimpan dan menutup file.

      5. Jalankan perintah berikut untuk membuat perubahan berlaku:

        source /etc/profile
      6. Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:

        echo $MNS_ACCESS_KEY_ID
        echo $MNS_ACCESS_KEY_SECRET
        echo $MNS_SESSION_TOKEN

        Contoh tanggapan sukses:

        LTA****
        moiEs**** 
        CAES****

      Windows

      Gunakan GUI

      Dalam contoh ini, Windows 10 digunakan. Anda dapat melakukan langkah-langkah berikut untuk mengonfigurasi kredensial akses sementara STS dengan menggunakan variabel lingkungan pada GUI:

      1. Di desktop Windows, klik kanan This PC dan pilih Properties. Di halaman yang muncul, klik Advanced system settings. Di kotak dialog System Properties, klik Environment Variables pada tab Advanced. Di kotak dialog Environment Variables, klik New di bagian User variables or System variables.

      2. Tentukan variabel lingkungan. Tabel berikut menjelaskan variabel lingkungan.

        Variabel

        Contoh

        MNS_ACCESS_KEY_ID

        LTA****

        MNS_ACCESS_KEY_SECRET

        moiEs****

        MNS_SESSION_TOKEN

        CAES****

      3. Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:

        echo %MNS_ACCESS_KEY_ID%
        echo %MNS_ACCESS_KEY_SECRET%
        echo %MNS_SESSION_TOKEN%

        Contoh tanggapan sukses:

        LTA****
        moiEs**** 
        CAES****

      Gunakan CMD

      1. Buka CLI.

      2. Jalankan perintah berikut untuk mengonfigurasi variabel lingkungan menggunakan kredensial akses sementara, termasuk ID AccessKey, rahasia AccessKey, dan token keamanan:

        set MNS_ACCESS_KEY_ID=LTA****
        set MNS_ACCESS_KEY_SECRET=moiEs**** 
        set MNS_SESSION_TOKEN=CAES****
      3. Jalankan perintah berikut untuk membuat perubahan berlaku:

        setx MNS_ACCESS_KEY_ID "%MNS_ACCESS_KEY_ID%"
        setx MNS_ACCESS_KEY_SECRET "%MNS_ACCESS_KEY_SECRET%"
        setx MNS_SESSION_TOKEN "%MNS_SESSION_TOKEN%"
      4. Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:

        echo %MNS_ACCESS_KEY_ID%
        echo %MNS_ACCESS_KEY_SECRET%
        echo %MNS_SESSION_TOKEN%

        Contoh tanggapan sukses:

        LTA****
        moiEs**** 
        CAES****

      Gunakan Windows PowerShell

      1. Tekan Win+X.

      2. Tentukan kredensial akses sementara STS.

        Berlaku untuk sesi saat ini
        1. Pada pesan yang muncul, pilih Windows PowerShell.

        2. Tentukan variabel lingkungan berikut untuk sesi saat ini:

          $env:MNS_ACCESS_KEY_ID = "LTA****"
          $env:MNS_ACCESS_KEY_SECRET = "moiEs****"
          $env:MNS_SESSION_TOKEN = "CAE****"
        Berlaku untuk semua sesi baru
        1. Pada pesan yang muncul, pilih Windows PowerShell.

        2. Tentukan variabel lingkungan berikut untuk semua sesi baru:

          [System.Environment]::SetEnvironmentVariable('MNS_ACCESS_KEY_ID', 'LTA****', [System.EnvironmentVariableTarget]::User)
          [System.Environment]::SetEnvironmentVariable('MNS_ACCESS_KEY_SECRET', 'moiEs****', [System.EnvironmentVariableTarget]::User)
          [System.Environment]::SetEnvironmentVariable('MNS_SESSION_TOKEN', 'CAES****', [System.EnvironmentVariableTarget]::User)
        Berlaku untuk semua pengguna
        1. Pada pesan yang muncul, pilih Windows PowerShell (Administrator).

        2. Tentukan variabel lingkungan berikut untuk semua pengguna:

          [System.Environment]::SetEnvironmentVariable('MNS_ACCESS_KEY_ID', 'LTA****', [System.EnvironmentVariableTarget]::Machine)
          [System.Environment]::SetEnvironmentVariable('MNS_ACCESS_KEY_SECRET', 'moiEs****', [System.EnvironmentVariableTarget]::Machine)
          [System.Environment]::SetEnvironmentVariable('MNS_SESSION_TOKEN', 'CAES****', [System.EnvironmentVariableTarget]::Machine)
      3. Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:

        Get-ChildItem env:MNS_ACCESS_KEY_ID
        Get-ChildItem env:MNS_ACCESS_KEY_SECRET
        Get-ChildItem env:MNS_SESSION_TOKEN

        Contoh tanggapan sukses:

        LTA****
        moiEs**** 
        CAES****
    2. Peroleh kredensial akses sementara yang diperoleh dari STS dari variabel lingkungan.

      // Peroleh kredensial akses sementara dari pengguna RAM, termasuk ID AccessKey, rahasia AccessKey, dan token keamanan, dari variabel lingkungan.  
      String accessKeyId = System.getenv("MNS_ACCESS_KEY_ID"); 
      String accessKeySecret = System.getenv("MNS_ACCESS_KEY_SECRET");
      String sessionToken = System.getenv("MNS_SESSION_TOKEN"); 
      AlibabaCloudCredentials credentials = new BasicSessionCredentials(accessKeyId,accessKeySecret,sessionToken); 
      AlibabaCloudCredentialsProvider provider = new StaticCredentialsProvider(credentials);

    Tanamkan kredensial akses dalam kode

    Peringatan

    Masalah keamanan dapat terjadi jika Anda menanamkan kredensial akses dalam kode. Kredensial akses yang bocor dapat digunakan oleh penyerang untuk mengakses sumber daya Anda, yang menyebabkan pelanggaran data. Untuk memastikan keamanan, kami menyarankan Anda menggunakan metode yang lebih aman, seperti memperoleh kredensial akses dari variabel lingkungan.

    // Peroleh kredensial akses sementara dari pengguna RAM, termasuk ID AccessKey, rahasia AccessKey, dan token keamanan, dari variabel lingkungan. 
    String accessKeyId = System.getenv("MNS_ACCESS_KEY_ID");
    String accessKeySecret = System.getenv("MNS_ACCESS_KEY_SECRET");
    String sessionToken = System.getenv("MNS_SESSION_TOKEN");
    
    AlibabaCloudCredentials credentials = new BasicSessionCredentials(accessKeyId,accessKeySecret,sessionToken);
    AlibabaCloudCredentialsProvider provider = new StaticCredentialsProvider(credentials);
    
    String endpoint = ServiceSettings.getMNSAccountEndpoint();
    CloudAccount account = new CloudAccount(endpoint, provider);

Konfigurasikan peran RAM

  1. Peroleh pasangan AccessKey dari pengguna RAM.

    Untuk informasi lebih lanjut, lihat bagian Buat pasangan AccessKey untuk pengguna RAM dari topik "Buat pasangan AccessKey".

    Penting

    Untuk mengurangi risiko kebocoran pasangan AccessKey dari pengguna RAM, kami menyarankan Anda memutar pasangan AccessKey setiap tiga bulan. Kami juga menyarankan Anda menonaktifkan dan menghapus pasangan AccessKey dari pengguna RAM yang tidak digunakan untuk waktu yang lama.

  2. Peroleh RamRoleArn dari peran RAM.

    Catatan

    RamRoleArn adalah Nama Sumber Daya Alibaba Cloud (ARN) dari peran RAM, yang merupakan ID dari peran yang akan diasumsikan. Format: acs:ram::$accountID:role/$roleName. $accountID menunjukkan ID akun Alibaba Cloud. $roleName menunjukkan nama peran RAM.

    Untuk informasi lebih lanjut, lihat Lihat informasi tentang peran RAM.

  3. Tentukan pasangan AccessKey dari pengguna RAM dan ARN dari peran RAM sebagai kredensial akses sementara.

    Konfigurasikan variabel lingkungan.

    1. Konfigurasikan variabel lingkungan dengan menggunakan pasangan AccessKey dari pengguna RAM dan RamRoleArn dari peran RAM yang diperoleh.

      macOS

      1. Buka terminal.

      2. Jalankan perintah berikut:

        nano ~/.bash_profile
      3. Tambahkan pasangan AccessKey dari pengguna RAM dan ARN dari peran RAM ke akhir file.

        export MNS_ACCESS_KEY_ID=LTAI****
        export MNS_ACCESS_KEY_SECRET=IrVTNZNy****  
        export MNS_STS_ROLE_ARN=acs:ram::17464958********:role/mnsststest
      4. Tekan Ctrl+X, tekan Y untuk menyimpan file, dan kemudian tekan Enter untuk menutup file.

      5. Jalankan perintah berikut untuk membuat perubahan berlaku:

        source /etc/profile
      6. Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:

        echo $MNS_ACCESS_KEY_ID
        echo $MNS_ACCESS_KEY_SECRET
        echo $MNS_STS_ROLE_ARN

        Contoh tanggapan sukses:

        LTAI****
        IrVTNZNy****  
        acs:ram::17464958********:role/mnsststest

      Linux

      1. Buka terminal.

      2. Jalankan perintah berikut:

        sudo vim /etc/profile
      3. Tambahkan pasangan AccessKey dari pengguna RAM dan ARN dari peran RAM ke akhir file.

        export MNS_ACCESS_KEY_ID=LTAI****
        export MNS_ACCESS_KEY_SECRET=IrVTNZNy****  
        export MNS_STS_ROLE_ARN=acs:ram::17464958********:role/mnsststest
      4. Tekan Esc untuk keluar dari mode edit. Kemudian, masukkan :wq dan tekan Enter untuk menyimpan dan menutup file.

      5. Jalankan perintah berikut untuk membuat perubahan berlaku:

        source /etc/profile
      6. Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:

        echo $MNS_ACCESS_KEY_ID
        echo $MNS_ACCESS_KEY_SECRET
        echo $MNS_STS_ROLE_ARN

        Contoh tanggapan sukses:

        LTAI****
        IrVTNZNy****  
        acs:ram::17464958********:role/mnsststest

      Windows

      Gunakan GUI

      Dalam contoh ini, Windows 10 digunakan. Anda dapat melakukan langkah-langkah berikut untuk mengonfigurasi pasangan AccessKey dari pengguna RAM dan ARN dari peran RAM dengan menggunakan variabel lingkungan pada GUI:

      1. Di desktop Windows, klik kanan This PC dan pilih Properties. Di halaman yang muncul, klik Advanced system settings. Di kotak dialog System Properties, klik Environment Variables pada tab Advanced. Di kotak dialog Environment Variables, klik New di bagian User variables or System variables.

      2. Konfigurasikan variabel lingkungan. Tabel berikut menjelaskan variabel lingkungan.

        Variabel

        Contoh

        MNS_ACCESS_KEY_ID

        LTAI****

        MNS_ACCESS_KEY_SECRET

        IrVTNZNy****

        MNS_STS_ROLE_ARN

        acs:ram::17464958********:role/mnsststest

      3. Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:

        echo $MNS_ACCESS_KEY_ID
        echo $MNS_ACCESS_KEY_SECRET
        echo $MNS_STS_ROLE_ARN

        Contoh tanggapan sukses:

        LTAI****
        IrVTNZNy**** 
        acs:ram::17464958********:role/mnsststest

      Gunakan CMD

      1. Buka CLI.

      2. Jalankan perintah berikut untuk mengonfigurasi variabel lingkungan dengan menggunakan pasangan AccessKey dari pengguna RAM dan ARN dari peran RAM:

        set MNS_ACCESS_KEY_ID=LTAI****
        set MNS_ACCESS_KEY_SECRET=IrVTNZNy****  
        set MNS_STS_ROLE_ARN=acs:ram::17464958********:role/mnsststest
      3. Jalankan perintah berikut untuk membuat perubahan berlaku:

        setx MNS_ACCESS_KEY_ID "%MNS_ACCESS_KEY_ID%"
        setx MNS_ACCESS_KEY_SECRET "%MNS_ACCESS_KEY_SECRET%"
        setx MNS_STS_ROLE_ARN "%MNS_STS_ROLE_ARN%"
      4. Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:

        echo %MNS_ACCESS_KEY_ID%
        echo %MNS_ACCESS_KEY_SECRET%
        echo %MNS_STS_ROLE_ARN%

        Contoh tanggapan sukses:

        LTAI****
        IrVTNZNy****  
        acs:ram::17464958********:role/mnsststest

      Gunakan Windows PowerShell

      1. Tekan Win+X.

      2. Tentukan pasangan AccessKey dari pengguna RAM dan ARN dari peran RAM.

        Berlaku untuk sesi saat ini

        1. Pada pesan yang muncul, pilih Windows PowerShell.

        2. Tentukan variabel lingkungan berikut untuk sesi saat ini:

          $env:MNS_ACCESS_KEY_ID = "LTAI****"
          $env:MNS_ACCESS_KEY_SECRET = "IrVTNZNy****"
          $env:MNS_STS_ROLE_ARN = "acs:ram::17464958********:role/ossststest"

        Berlaku untuk semua sesi baru

        1. Pada pesan yang muncul, pilih Windows PowerShell.

        2. Tentukan variabel lingkungan berikut untuk semua sesi baru:

          [System.Environment]::SetEnvironmentVariable('MNS_ACCESS_KEY_ID', 'LTAI****', [System.EnvironmentVariableTarget]::User)
          [System.Environment]::SetEnvironmentVariable('MNS_ACCESS_KEY_SECRET', 'IrVTNZNy****', [System.EnvironmentVariableTarget]::User)
          [System.Environment]::SetEnvironmentVariable('MNS_STS_ROLE_ARN', 'acs:ram::17464958********:role/mnsststest', [System.EnvironmentVariableTarget]::User)

        Berlaku untuk semua pengguna

        1. Pada pesan yang muncul, pilih Windows PowerShell (Administrator).

        2. Tentukan variabel lingkungan berikut untuk semua pengguna:

          [System.Environment]::SetEnvironmentVariable('MNS_ACCESS_KEY_ID', 'LTAI****', [System.EnvironmentVariableTarget]::Machine)
          [System.Environment]::SetEnvironmentVariable('MNS_ACCESS_KEY_SECRET', 'IrVTNZNy****', [System.EnvironmentVariableTarget]::Machine)
          [System.Environment]::SetEnvironmentVariable('MNS_STS_ROLE_ARN', 'acs:ram::17464958********:role/mnsststest', [System.EnvironmentVariableTarget]::Machine)
      3. Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:

        Get-ChildItem env:MNS_ACCESS_KEY_ID
        Get-ChildItem env:MNS_ACCESS_KEY_SECRET
        Get-ChildItem env:MNS_STS_ROLE_ARN

        Contoh tanggapan sukses:

        LTAI****
        IrVTNZNy**** 
        acs:ram::17464958********:role/mnsststest
    2. Peroleh pasangan AccessKey dari pengguna RAM dan ARN dari peran RAM dari variabel lingkungan.

      // Tentukan wilayah yang ingin Anda otorisasi STSAssumeRole untuk mengakses. Dalam contoh ini, wilayah China (Hangzhou) digunakan. Tentukan wilayah berdasarkan kasus aktual. 
      String region = "cn-hangzhou";
      // Peroleh pasangan AccessKey dari pengguna RAM dari variabel lingkungan. Pasangan AccessKey terdiri dari ID AccessKey dan rahasia AccessKey. 
      String accessKeyId = System.getenv("MNS_ACCESS_KEY_ID");
      String accessKeySecret = System.getenv("MNS_ACCESS_KEY_SECRET");
      // Peroleh ARN dari peran RAM dari variabel lingkungan, 
      String roleArn = System.getenv("MNS_STS_ROLE_ARN");
      
      // Gunakan pasangan AccessKey dan ARN peran RAM untuk membuat penyedia kredensial. 
      STSAssumeRoleSessionCredentialsProvider credentialsProvider = CredentialsProviderFactory
              .newSTSAssumeRoleSessionCredentialsProvider(
                      region, 
                      accessKeyId, 
                      accessKeySecret, 
                      roleArn
              );

    Tanamkan kredensial akses dalam kode

    Peringatan

    Masalah keamanan dapat terjadi jika Anda menanamkan kredensial akses dalam kode. Kredensial akses yang bocor dapat digunakan oleh penyerang untuk mengakses sumber daya Anda, yang menyebabkan pelanggaran data. Untuk memastikan keamanan, kami menyarankan Anda menggunakan metode yang lebih aman, seperti memperoleh kredensial akses dari variabel lingkungan.

    // Endpoint dari MNS harus sesuai dengan wilayah yang ditentukan oleh parameter regionId. 
    String regionId = "cn-hangzhou";
    
    // Peroleh pasangan AccessKey dari pengguna RAM dari variabel lingkungan. Pasangan AccessKey terdiri dari ID AccessKey dan rahasia AccessKey. 
    String accessKeyId = System.getenv("MNS_ACCESS_KEY_ID");
    String accessKeySecret = System.getenv("MNS_ACCESS_KEY_SECRET");
    // Peroleh ARN dari peran RAM dari variabel lingkungan, 
    String roleArn = System.getenv("MNS_STS_ROLE_ARN");
    
    DefaultProfile profile = DefaultProfile.getProfile(regionId);
    AlibabaCloudCredentialsProvider provider = new STSAssumeRoleSessionCredentialsProvider(
        new BasicCredentials(accessKeyId, accessKeySecret),
        roleArn,
        profile
    );
    
    
    String endpoint = ServiceSettings.getMNSAccountEndpoint();
    CloudAccount account = new CloudAccount(endpoint, provider);

Konfigurasikan peran RAM untuk instance ECS

  1. Tetapkan peran RAM ke instance ECS.

    Untuk informasi lebih lanjut, lihat Peran RAM Instance.

  2. Konfigurasikan kredensial akses sementara dengan menggunakan peran RAM yang ditetapkan ke instance ECS.

    // Peroleh kredensial akses dengan menggunakan peran RAM yang dilampirkan ke instance ECS. Dalam contoh ini, peran ecs-ram-role digunakan. 
    CredentialsProvider provider = new InstanceProfileCredentialsProvider("ecs-ram-role");