Alibaba Cloud CLI adalah alat command-line umum yang dikembangkan berdasarkan API. Anda dapat menggunakannya untuk mengotomatiskan manajemen dan pemeliharaan Security Token Service (STS). Topik ini menjelaskan cara menggunakan Alibaba Cloud CLI untuk memanggil operasi API STS. Dalam contoh ini, operasi AssumeRole STS dipanggil untuk mendapatkan kredensial identitas sementara.
Sebelum memulai
Sebelum membaca topik ini, Anda perlu memahami konsep-konsep berikut:
Langkah 1: Instal Alibaba Cloud CLI
Anda harus menginstal Alibaba Cloud CLI sebelum menggunakannya. Alibaba Cloud CLI mendukung Windows, Linux, dan macOS. Pilih paket instalasi yang sesuai dengan sistem operasi perangkat Anda.
Anda juga dapat menggunakan Cloud Shell Alibaba Cloud untuk men-debug perintah yang ingin dijalankan di Alibaba Cloud CLI. Untuk informasi selengkapnya tentang Cloud Shell, lihat Apa itu Cloud Shell?
Langkah 2: Konfigurasi Alibaba Cloud CLI
Anda hanya dapat memanggil operasi AssumeRole sebagai Resource Access Management (RAM) user atau RAM role. Anda tidak dapat menggunakan Akun Alibaba Cloud untuk memanggil operasi tersebut. Dalam contoh ini, RAM user digunakan untuk memanggil operasi tersebut.
Sebelum menggunakan Alibaba Cloud CLI, Anda harus menentukan kredensial identitas dan ID wilayah. Alibaba Cloud CLI mendukung berbagai jenis kredensial identitas. Untuk informasi selengkapnya, lihat bagian "Credential types" pada topik Configure profiles. Dalam contoh ini, pasangan AccessKey digunakan sebagai kredensial identitas.
Buat RAM user dan buat pasangan AccessKey untuk RAM user tersebut. Untuk informasi selengkapnya, lihat Buat RAM user dan Buat pasangan AccessKey.
Berikan izin yang diperlukan kepada RAM user tersebut. Dalam contoh ini, kebijakan
AliyunSTSAssumeRoleAccessdisambungkan ke RAM user. Kebijakan ini memberikan izin untuk memanggil operasiAssumeRoleSTS. Untuk informasi selengkapnya, lihat Berikan izin kepada RAM user.Dapatkan ID wilayah yang ingin Anda gunakan. Alibaba Cloud CLI menggunakan ID wilayah yang Anda tentukan untuk menginisiasi panggilan API. Untuk informasi selengkapnya, lihat Endpoints.
CatatanSaat menggunakan Alibaba Cloud CLI, Anda dapat menggunakan opsi
--regionuntuk menjalankan perintah di wilayah tertentu. Jika Anda menggunakan opsi ini, Alibaba Cloud CLI akan mengabaikan informasi wilayah dalam pengaturan kredensial default dan variabel lingkungan. Untuk informasi selengkapnya, lihat Command-line options.Gunakan pasangan AccessKey RAM user untuk mengonfigurasi kredensial identitas dalam file konfigurasi
AkProfile. Untuk informasi selengkapnya, lihat bagian "Configuration examples" pada topik Configure profiles.
Langkah 3: Buat RAM role
Parameter RoleArn menunjukkan Nama Sumber Daya Alibaba Cloud (ARN) dari RAM role dan diperlukan untuk memanggil operasi AssumeRole. Untuk mendapatkan nilai parameter tersebut, Anda harus membuat RAM role untuk Alibaba Cloud tepercaya.
Dalam contoh ini, Anda harus menggunakan RAM user yang dibuat di Langkah 2: Konfigurasi Alibaba Cloud CLI untuk mengasumsikan RAM role tersebut. Oleh karena itu, Anda harus mengatur akun Alibaba Cloud tepercaya ke ID Akun Alibaba Cloud tempat RAM user yang dibuat di Langkah 2: Konfigurasi Alibaba Cloud CLI bernaung. Untuk informasi selengkapnya, lihat Buat RAM role untuk akun Alibaba Cloud tepercaya.
Anda juga dapat memodifikasi kebijakan kepercayaan yang disambungkan ke RAM role untuk mengubah RAM user yang dapat mengasumsikan RAM role tersebut. Untuk informasi selengkapnya, lihat Modifikasi kebijakan kepercayaan RAM role.
Langkah 4: Hasilkan perintah CLI
Di OpenAPI Explorer, panggil operasi AssumeRole.
Pada tab Parameters, konfigurasikan parameter permintaan. Lalu, klik tab CLI Example untuk melihat perintah contoh yang dihasilkan.
Jalankan perintah CLI di Cloud Shell atau salin perintah CLI tersebut.
Klik ikon
untuk memulai Cloud Shell dan debug perintah CLI di Cloud Shell. Klik ikon
untuk menyalin perintah CLI ke clipboard. Anda juga dapat menempelkan perintah CLI tersebut ke shell lokal untuk menjalankannya. CatatanSaat menempelkan perintah CLI ke shell lokal untuk debugging, perhatikan format parameternya. Untuk informasi selengkapnya tentang format parameter yang diperlukan oleh Alibaba Cloud CLI, lihat Parameter formats.
Secara default, OpenAPI Explorer menambahkan opsi
--regionke perintah CLI yang dihasilkan. Saat Anda menyalin perintah tersebut ke shell lokal, Alibaba Cloud CLI akan mengabaikan informasi wilayah dalam pengaturan kredensial identitas default dan variabel lingkungan, serta menjalankan perintah secara prioritas di wilayah yang ditentukan oleh opsi tersebut. Anda dapat menghapus atau mempertahankan opsi tersebut sesuai kebutuhan bisnis Anda.

Langkah 5: Panggil operasi API STS
Contoh 1: Kueri operasi API STS yang dapat dipanggil menggunakan Alibaba Cloud CLI
Kode berikut memberikan contoh cara menggunakan opsi --help untuk mengkueri operasi API STS yang dapat dipanggil menggunakan Alibaba Cloud CLI. Anda juga dapat melihat daftar operasi API yang didukung di List of operations by function.
Jalankan perintah berikut:
aliyun sts --helpLihat output perintah.

Contoh 2: Dapatkan kredensial identitas temporary dari RAM role yang ingin Anda asumsikan
Kode berikut memberikan contoh cara menggunakan Alibaba Cloud CLI untuk memanggil operasi AssumeRole STS. Operasi ini dipanggil untuk mendapatkan kredensial identitas temporary dari RAM role yang ingin Anda asumsikan.
Jalankan perintah berikut:
CatatanAnda dapat menggunakan salah satu metode berikut untuk mendapatkan informasi bantuan tentang parameter perintah:
Jalankan perintah
aliyun sts AssumeRole --helpuntuk mendapatkan saran mengenai parameter perintah.Baca topik AssumeRole untuk melihat detail parameter.
aliyun sts AssumeRole \ --DurationSeconds 3600 \ --Policy '{"Statement": [{"Action": ["*"],"Effect": "Allow","Resource": ["*"]}],"Version":"1"}' \ --RoleSessionName alice \ --RoleArn 'acs:ram::123456789012****:role/adminrole' \ --ExternalId abcd1234Lihat output perintah yang diharapkan. Parameter
SecurityTokendalam output menunjukkan kredensial identitas temporary yang Anda kueri.{ "RequestId": "6894B13B-6D71-4EF5-88FA-F32781734A7F", "AssumedRoleUser": { "AssumedRoleId": "34458433936495****:alice", "Arn": "acs:ram::123456789012****:role/adminrole/alice" }, "Credentials": { "SecurityToken": "********", "Expiration": "2015-04-09T11:52:19Z", "AccessKeySecret": "wyLTSmsyPGP1ohvvw8xYgB29dlGI8KMiH2pK****", "AccessKeyId": "STS.L4aBSCSJVMuKg5U1****" } }CatatanJika pesan kesalahan dikembalikan setelah Anda memanggil operasi API STS, Anda perlu memeriksa apakah parameter permintaan dan nilai-nilainya valid berdasarkan kode kesalahan yang dikembalikan.
Anda juga dapat melakukan diagnostik berdasarkan ID permintaan atau informasi kesalahan SDK yang dikembalikan di halaman OpenAPI Troubleshoot.