全部产品
Search
文档中心

Alibaba Cloud SDK:Inisialisasi klien SDK dengan menggunakan token STS

更新时间:Jun 28, 2025

Topik ini menjelaskan cara menggunakan token Layanan Keamanan (STS) untuk menginisialisasi klien SDK di Alibaba Cloud SDK V1.0 untuk Node.js.

Instal SDK STS

npm install @alicloud/sts-sdk
Penting

Versi Node.js harus 8.5.0 atau lebih baru.

Contoh

const StsClient = require('@alicloud/sts-sdk');
const RPCClient = require('@alicloud/pop-core').RPCClient;


async function main() {
    try {
        // Inisialisasi klien STS.
        const sts = new StsClient({
            endpoint: 'sts.aliyuncs.com',
            // Dapatkan ID AccessKey dari pengguna Resource Access Management (RAM) dari variabel lingkungan.
            accessKeyId: process.env.ALIBABA_CLOUD_ACCESS_KEY_ID,
            // Dapatkan rahasia AccessKey dari pengguna RAM dari variabel lingkungan.
            accessKeySecret: process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET,
        });

        const roleArn = 'ram_role_arn'; // Nama Sumber Daya Alibaba Cloud (ARN) dari peran RAM.
        const roleSessionName = 'role_session_name'; // Nama sesi peran.
        const durationSeconds = 3.600; // Durasi validitas sesi peran, dalam detik.
        const policy = ''; // Kebijakan izin.

        // Panggil operasi assumeRole untuk mendapatkan token STS.
        const assumeRoleResponse = await sts.assumeRole(roleArn, roleSessionName, policy, durationSeconds);
        const credentials = assumeRoleResponse.Credentials;

        // Gunakan token STS untuk menginisialisasi klien SDK bergaya panggilan prosedur jarak jauh (RPC).
        const client = new RPCClient({
            accessKeyId: credentials.AccessKeyId,
            accessKeySecret: credentials.AccessKeySecret,
            securityToken: credentials.SecurityToken,
            endpoint: 'https://ecs.cn-beijing.aliyuncs.com',
            apiVersion: '2014-05-26',
        });

        const params = {};
        const action = 'DescribeRegions';
        const result = await client.request(action, params);
        console.log(JSON.stringify(result));
    } catch (err) {
        console.error('Terjadi kesalahan:', err);
    }
}

main();