全部产品
Search
文档中心

Object Storage Service:Enkripsi sisi server (Node.js SDK)

更新时间:Nov 30, 2025

Layanan Penyimpanan Objek (OSS) menyediakan enkripsi sisi server untuk data Anda. Saat mengunggah data, OSS mengenkripsinya sebelum menyimpannya. Saat mengunduh data, OSS secara otomatis mendekripsinya dan mengembalikan data mentah. Header respons HTTP menunjukkan bahwa data tersebut telah dienkripsi di sisi server.

Konfigurasikan enkripsi bucket

Gunakan kode berikut untuk mengatur metode enkripsi default bucket. Setelah dikonfigurasi, semua objek yang diunggah ke bucket tanpa menentukan metode enkripsi akan dienkripsi menggunakan metode default tersebut:

const OSS = require("ali-oss");

const client = new OSS({
  // Setel region ke wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), setel region ke oss-cn-hangzhou.
  region: 'yourregion',
  // Dapatkan kredensial akses dari variabel lingkungan. Sebelum menjalankan kode ini, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah disetel.
  accessKeyId: process.env.OSS_ACCESS_KEY_ID,
  accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
  authorizationV4: true,
  // Setel bucket ke nama bucket Anda.
  bucket: 'yourbucketname'
});

async function putBucketEncryption() {
  try {
    // Konfigurasikan metode enkripsi untuk bucket.

    const result = await client.putBucketEncryption("bucket-name", {
      SSEAlgorithm: "AES256", // Contoh ini menunjukkan cara menyetel enkripsi AES256. Jika Anda menggunakan enkripsi KMS, Anda harus menambahkan properti KMSMasterKeyID.
      // KMSMasterKeyID: "yourKMSMasterKeyId". Setel ID kunci KMS. Anda dapat menyetel parameter ini jika metode enkripsinya adalah KMS. Jika nilai SSEAlgorithm adalah KMS dan Anda menggunakan kunci tertentu untuk enkripsi, Anda harus memasukkan ID kunci tersebut. Jika tidak, parameter ini harus dikosongkan.
    });
    console.log(result);
  } catch (e) {
    console.log(e);
  }
}

putBucketEncryption();

Dapatkan konfigurasi enkripsi bucket

Kode berikut mengambil konfigurasi enkripsi bucket:

const OSS = require("ali-oss");

const client = new OSS({
  // Setel region ke wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), setel region ke oss-cn-hangzhou.
  region: 'yourregion',
  // Dapatkan kredensial akses dari variabel lingkungan. Sebelum menjalankan kode ini, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah disetel.
  accessKeyId: process.env.OSS_ACCESS_KEY_ID,
  accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
  authorizationV4: true,
  // Setel bucket ke nama bucket Anda.
  bucket: 'yourbucketname'
});

async function getBucketEncryption() {
  try {
    const result = await client.getBucketEncryption("bucket-name");
    console.log(result);
  } catch (e) {
    console.log(e);
  }
}

getBucketEncryption();

Hapus konfigurasi enkripsi bucket

Kode berikut menghapus konfigurasi enkripsi bucket:

const OSS = require("ali-oss");

const client = new OSS({
  // Setel region ke wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), setel region ke oss-cn-hangzhou.
  region: 'yourregion',
  // Dapatkan kredensial akses dari variabel lingkungan. Sebelum menjalankan kode ini, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah disetel.
  accessKeyId: process.env.OSS_ACCESS_KEY_ID,
  accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
  authorizationV4: true,
  // Setel bucket ke nama bucket Anda.
  bucket: 'yourbucketname'
});

async function deleteBucketEncryption() {
  try {
    // Hapus konfigurasi enkripsi bucket.
    const result = await client.deleteBucketEncryption("bucket-name");
    console.log(result);
  } catch (e) {
    console.log(e);
  }
}

deleteBucketEncryption();

Referensi

  • Untuk contoh kode lengkap mengenai enkripsi sisi server, lihat contoh di GitHub.

  • Untuk informasi selengkapnya tentang operasi API yang digunakan untuk mengatur enkripsi sisi server, lihat PutBucketEncryption.

  • Untuk informasi selengkapnya tentang operasi API yang digunakan untuk mengambil konfigurasi enkripsi sisi server, lihat GetBucketEncryption.

  • Untuk informasi selengkapnya tentang operasi API yang digunakan untuk menghapus konfigurasi enkripsi sisi server, lihat DeleteBucketEncryption.