All Products
Search
Document Center

Alibaba Cloud CLI:Kredensial peran RAM

Last Updated:Jun 05, 2026

Dengan mengonfigurasi Alibaba Cloud CLI untuk mengasumsikan peran RAM, Anda dapat menggunakan AccessKey berhak istimewa rendah guna secara otomatis memperoleh kredensial sementara STS untuk mengakses sumber daya cloud, tanpa mengekspos langsung AccessKey berhak istimewa tinggi. Topik ini menjelaskan dua metode konfigurasi—RamRoleArn (mengasumsikan peran RAM secara langsung) dan ChainableRamRoleArn (mengasumsikan peran RAM dengan merantai dari kredensial CLI yang sudah ada)—serta skenario penggunaannya.

Persyaratan versi

Versi Alibaba Cloud CLI ≥ 3.3.0. Jalankan aliyun version untuk memeriksa versi saat ini. Jika versinya lebih lama, lihat Instal, update, dan uninstall Alibaba Cloud CLI untuk melakukan peningkatan.

RamRoleArn

RamRoleArn menggunakan AccessKey berhak istimewa rendah untuk mengasumsikan peran RAM dengan hak istimewa lebih tinggi dan memperoleh kredensial sementara STS. AccessKey hanya memerlukan kebijakan AliyunSTSAssumeRoleAccess. Izin efektif ditentukan oleh kebijakan yang dilampirkan pada peran target. Metode ini cocok untuk lingkungan pengembangan lokal dan skenario yang memerlukan pemisahan hak istimewa.

Prasyarat

  • AccessKey telah dibuat untuk Pengguna RAM dan kebijakan AliyunSTSAssumeRoleAccess telah diberikan.

  • Peran RAM target telah dibuat, dan kebijakan kepercayaan peran tersebut mengizinkan Pengguna RAM untuk mengasumsikan peran tersebut.

  • ARN dari peran RAM target telah diperoleh. Anda dapat melihatnya di halaman detail peran di Konsol RAM. Formatnya adalah acs:ram::<ACCOUNT_ID>:role/<RoleName>.

Untuk persiapan prasyarat lengkap, lihat langkah-langkah di bawah Gunakan AccessKey secara tidak langsung dalam Gunakan pasangan AccessKey untuk panggilan API.

Konfigurasi kredensial

Konfigurasi interaktif

  1. Jalankan perintah berikut untuk memulai konfigurasi. Ganti <ProfileName> dengan nama profil kustom (misalnya, RamRoleProfile):

    aliyun configure --mode RamRoleArn --profile <ProfileName>
  2. Masukkan informasi konfigurasi sesuai permintaan:

    Configuring profile 'RamRoleArnProfile' in 'RamRoleArn' authenticate mode...
    Access Key Id []: <yourAccessKeyID>
    Access Key Secret []: <yourAccessKeySecret>
    Sts Region []: cn-hangzhou
    Ram Role Arn []: acs:ram::012345678910****:role/Alice
    Role Session Name []: alice
    External ID []: abcd1234
    Expired Seconds [900]: 900
    Default Region Id []: cn-hangzhou
    Default Output Format [json]: json (Only support json)
    Default Language [zh|en] en: en
    Saving profile[RamRoleArnProfile] ...Done.
  3. Saat terminal menampilkan Configure Done diikuti pesan selamat datang, konfigurasi selesai.

Catatan

Setelah konfigurasi berhasil, profil tersebut secara otomatis menjadi profil aktif. Untuk beralih ke profil lain, jalankan perintah aliyun configure switch --profile <ProfileName>.

Konfigurasi non-interaktif

Bash
aliyun configure set \
  --profile RamRoleArnProfile \
  --mode RamRoleArn \
  --access-key-id <yourAccessKeyID> \
  --access-key-secret <yourAccessKeySecret> \
  --sts-region "cn-hangzhou" \
  --ram-role-arn "acs:ram::012345678910****:role/Alice" \
  --role-session-name "alice" \
  --external-id "abcd1234" \
  --expired-seconds 900 \
  --region "cn-shanghai"
PowerShell
aliyun configure set `
  --profile RamRoleArnProfile `
  --mode RamRoleArn `
  --access-key-id <yourAccessKeyID> `
  --access-key-secret <yourAccessKeySecret> `
  --sts-region "cn-hangzhou" `
  --ram-role-arn "acs:ram::012345678910****:role/Alice" `
  --role-session-name "alice" `
  --external-id "abcd1234" `
  --expired-seconds 900 `
  --region "cn-shanghai"

Parameter lengkap

Parameter

Wajib

Deskripsi

Contoh

--mode

Ya

Nilai tetap RamRoleArn. Menentukan jenis kredensial.

RamRoleArn

--profile

Tidak

Nama profil. Jika tidak ditentukan, profil aktif saat ini digunakan secara default. Nama default untuk profil pertama adalah default. Kami menyarankan Anda menggunakan nama yang bermakna untuk membedakan beberapa profil.

RamRoleProfile

--region

Ya

ID wilayah default.

cn-hangzhou

--access-key-id

Ya

ID AccessKey Pengguna RAM. Pengguna harus memiliki kebijakan AliyunSTSAssumeRoleAccess.

LTAI5t****

--access-key-secret

Ya

Rahasia AccessKey yang sesuai.

****

--ram-role-arn

Ya

ARN dari peran RAM target. Anda dapat memperolehnya dari halaman detail peran di Konsol RAM.

acs:ram::191317683912****:role/DevOpsRole

--role-session-name

Ya

Nama sesi, digunakan untuk mengidentifikasi asumsi peran ini dalam log audit. Kami menyarankan Anda menggunakan pengenal bermakna seperti nama aplikasi atau nama mesin.

my-session

--expired-seconds

Tidak

Periode validitas kredensial sementara dalam detik. Nilai valid: 900 hingga 3600. Nilai default adalah 900 detik dalam konfigurasi interaktif. Jika tidak ditentukan dalam perintah configure set, nilai default adalah 3600 detik.

900

--external-id

Tidak

External ID, digunakan untuk meningkatkan keamanan selama asumsi peran lintas akun. Parameter ini hanya diperlukan jika kebijakan kepercayaan peran target mengharuskannya. Untuk informasi selengkapnya, lihat Cegah masalah confused deputy dengan external ID.

--sts-region

Tidak

ID wilayah titik akhir STS. Jika tidak ditentukan, titik akhir global sts.aliyuncs.com digunakan.

cn-shanghai

Verifikasi kredensial

Setelah konfigurasi selesai, jalankan perintah berikut untuk memverifikasi bahwa kredensial berfungsi:

aliyun sts get-caller-identity

Output:

{
  "AccountId": "191317683912****",
  "Arn": "acs:ram::191317683912****:assumed-role/<role-name>/<role-session-name>",
  "IdentityType": "AssumedRoleUser",
  "PrincipalId": "30004467717606****:<role-session-name>",
  "RequestId": "0FFADC33-EA49-5E2A-977F-0BA820D6****",
  "RoleId": "30004467717606****"
}

Penyegaran kredensial

CLI secara otomatis mengelola penyegaran kredensial tanpa intervensi manual. Sebelum kredensial sementara STS kedaluwarsa, CLI secara otomatis memanggil kembali STS AssumeRole untuk memperoleh kredensial baru. Hal ini tidak memengaruhi perintah CLI yang sedang dijalankan.

ChainableRamRoleArn

ChainableRamRoleArn mengasumsikan peran RAM lain dengan merantai dari profil kredensial CLI yang sudah ada (profil sumber). CLI pertama-tama memperoleh kredensial perantara dari profil sumber, lalu menggunakan kredensial tersebut untuk memanggil STS AssumeRole dan memperoleh kredensial sementara STS akhir. Metode ini cocok untuk skenario perantai peran multi-hop lintas akun atau skenario di mana Anda perlu mengasumsikan peran tambahan berdasarkan EcsRamRole.

Jenis kredensial ChainableRamRoleArn bekerja dengan menentukan profil kredensial sumber, memperoleh kredensial perantara (AccessKey atau kredensial sementara STS) dari profil tersebut, lalu menggunakan kredensial perantara tersebut untuk mengasumsikan peran target dan memperoleh kredensial sementara STS akhir.

Prasyarat

  • Profil CLI yang valid (profil sumber) sudah ada, seperti profil EcsRamRole, AK, atau RamRoleArn yang telah dikonfigurasi.

  • Pihak yang berwenang (Pengguna RAM atau peran) yang terkait dengan profil sumber memiliki izin untuk mengasumsikan peran RAM target (kebijakan kepercayaan peran target mengizinkan pihak tersebut untuk mengasumsikannya).

  • ARN dari peran RAM target telah diperoleh, dalam format acs:ram::<ACCOUNT_ID>:role/<RoleName>.

Konfigurasi kredensial

Konfigurasi interaktif

  1. Jalankan perintah berikut untuk memulai konfigurasi. Ganti <ProfileName> dengan nama profil kustom (misalnya, ChainProfile):

    aliyun configure --mode ChainableRamRoleArn --profile <ProfileName>
  2. Masukkan informasi konfigurasi sesuai permintaan:

    Configuring profile 'ChainableProfile' in 'ChainableRamRoleArn' authenticate mode...
    Source Profile []: RamRoleArnProfile
    Sts Region []: cn-hangzhou
    Ram Role Arn []: acs:ram::012345678910****:role/Alice
    Role Session Name []: alice
    External ID []: abcd1234
    Expired Seconds [900]: 900
    Default Region Id []: cn-hangzhou
    Default Output Format [json]: json (Only support json)
    Default Language [zh|en] en: en
    Saving profile[ChainableProfile] ...Done.
    Catatan

    Pada contoh di atas, RamRoleArnProfile adalah nama profil sumber yang sudah ada, dan ARN peran RAM adalah nilai contoh. Gantilah dengan nilai aktual. Anda dapat menekan Enter untuk melewati prompt Sts Region dan External Id.

  3. Saat terminal menampilkan Configure Done diikuti pesan selamat datang, konfigurasi selesai.

Catatan

Setelah konfigurasi berhasil, profil tersebut secara otomatis menjadi profil aktif. Untuk beralih ke profil lain, jalankan perintah aliyun configure switch --profile <ProfileName>.

Konfigurasi non-interaktif

Contoh perintah:

Bash
aliyun configure set \
  --profile ChainableProfile \
  --mode ChainableRamRoleArn \
  --source-profile RamRoleArnProfile \
  --sts-region "cn-hangzhou" \
  --ram-role-arn "acs:ram::012345678910****:role/Alice" \
  --role-session-name "alice" \
  --external-id "abcd1234" \
  --expired-seconds 900 \
  --region "cn-shanghai"
PowerShell
aliyun configure set `
  --profile ChainProfile `
  --mode ChainableRamRoleArn `
  --region cn-hangzhou `
  --source-profile EcsRoleProfile `
  --ram-role-arn acs:ram::<UID>:role/<RoleName> `
  --role-session-name chain-session `
  --expired-seconds 900
Penting

Profil yang ditentukan oleh --source-profile harus sudah ada dalam file konfigurasi CLI. Jika tidak, kesalahan can not load the source profile: <name> akan dikembalikan. Jalankan aliyun configure list untuk melihat semua profil yang ada.

Parameter lengkap

Parameter

Wajib

Deskripsi

Contoh

--mode

Ya

Nilai tetap ChainableRamRoleArn. Menentukan jenis kredensial. Harus ditentukan secara eksplisit dan tidak mendukung inferensi otomatis.

ChainableRamRoleArn

--profile

Tidak

Nama profil. Jika tidak ditentukan, profil aktif saat ini digunakan secara default. Nama default untuk profil pertama adalah default.

ChainProfile

--region

Ya

ID wilayah default.

cn-hangzhou

--source-profile

Ya

Nama profil sumber. CLI pertama-tama memperoleh kredensial perantara dari profil ini, lalu menggunakan kredensial perantara tersebut untuk mengasumsikan peran target. Profil tersebut harus sudah ada.

EcsRoleProfile

--ram-role-arn

Ya

ARN dari peran RAM target.

acs:ram::191317683912****:role/CrossAccountRole

--role-session-name

Ya

Nama sesi, digunakan untuk identifikasi dalam log audit.

chain-session

--expired-seconds

Tidak

Periode validitas kredensial sementara dalam detik. Nilai valid: 900 hingga 3600. Jika tidak ditentukan, nilai default adalah 3600 detik.

900

--external-id

Tidak

External ID. Parameter ini hanya diperlukan jika kebijakan kepercayaan peran target mengharuskannya.

--sts-region

Tidak

ID wilayah titik akhir STS. Jika tidak ditentukan, titik akhir global sts.aliyuncs.com digunakan.

cn-hangzhou

Verifikasi kredensial

Setelah konfigurasi selesai, jalankan perintah aliyun sts get-caller-identity untuk memverifikasi bahwa kredensial berfungsi.

Penyegaran kredensial

CLI secara otomatis mengelola penyegaran kredensial tanpa intervensi manual. Sebelum kredensial sementara STS kedaluwarsa, CLI pertama-tama menyegarkan kredensial profil sumber (mengikuti logika penyegaran profil sumber, misalnya, EcsRamRole disegarkan melalui IMDS), lalu memanggil kembali STS AssumeRole untuk memperoleh kredensial baru.

Hapus kredensial

Hapus kredensial peran RAM dari konfigurasi lokal CLI:

aliyun configure delete --profile <ProfileName>
Catatan

Jika profil yang dihapus adalah profil aktif saat ini, CLI secara otomatis beralih ke profil pertama dalam daftar profil.