All Products
Search
Document Center

Object Storage Service:Buat bucket (Go SDK V1)

Last Updated:Nov 29, 2025

Bucket adalah wadah untuk menyimpan objek. Semua objek harus disimpan dalam bucket. Topik ini menjelaskan cara membuat bucket.

Catatan penggunaan

  • Topik ini menggunakan titik akhir publik wilayah China (Hangzhou). Jika Anda mengakses OSS dari layanan Alibaba Cloud lain yang berada di wilayah yang sama dengan OSS, gunakan titik akhir internal. Untuk informasi selengkapnya mengenai wilayah dan titik akhir OSS, lihat Wilayah dan titik akhir.

  • Kredensial akses pada topik ini diperoleh dari variabel lingkungan. Untuk informasi selengkapnya tentang cara mengonfigurasi kredensial akses, lihat Konfigurasikan kredensial akses.

  • Instans OSSClient pada topik ini dibuat menggunakan titik akhir OSS. Jika Anda ingin membuat instans OSSClient menggunakan nama domain kustom atau Security Token Service (STS), lihat Konfigurasikan client (Go SDK V1).

  • Mulai pukul 10.00 (UTC+8) pada 13 Oktober 2025, OSS akan menerapkan penyesuaian bertahap di semua wilayah untuk mengaktifkan fitur Block Public Access secara default untuk bucket baru yang dibuat melalui API, OSS SDK, atau ossutil. Untuk detail waktu pasti penerapan penyesuaian tersebut di setiap wilayah, lihat [Pengumuman Resmi] Penyesuaian Konfigurasi Pemblokiran Akses Publik untuk Bucket Baru. Setelah Block Public Access diaktifkan, Anda tidak dapat mengonfigurasi izin akses publik, termasuk ACL publik (baca-publik dan baca/tulis publik) serta kebijakan bucket yang mengizinkan akses publik. Anda dapat menonaktifkan fitur ini setelah bucket dibuat jika bisnis Anda memerlukan akses publik.

Izin

Secara default, Akun Alibaba Cloud memiliki izin penuh. Pengguna RAM atau Peran RAM di bawah Akun Alibaba Cloud tidak memiliki izin apa pun secara default. Akun Alibaba Cloud atau administrator akun harus memberikan izin operasi melalui Kebijakan RAM atau Kebijakan bucket.

API

Action

Definisi

PutBucket

oss:PutBucket

Membuat bucket.

oss:PutBucketAcl

Setelah membuat bucket, izin ini diperlukan untuk mengubah ACL bucket.

Kode contoh

Kode berikut menunjukkan cara membuat bucket bernama examplebucket.

package main

import (
	"fmt"
	"os"

	"github.com/aliyun/aliyun-oss-go-sdk/oss"
)

func main() {
	/// Dapatkan kredensial akses dari variabel lingkungan. Sebelum menjalankan kode contoh ini, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah dikonfigurasi.
	provider, err := oss.NewEnvironmentVariableCredentialsProvider()
	if err != nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}

	// Buat instans OSSClient.
	// Setel yourEndpoint ke titik akhir bucket. Misalnya, untuk bucket di wilayah China (Hangzhou), setel titik akhir ke https://oss-cn-hangzhou.aliyuncs.com. Untuk wilayah lain, tentukan titik akhir yang sesuai.
	// Setel yourRegion ke wilayah bucket. Misalnya, untuk bucket di wilayah China (Hangzhou), setel wilayah ke cn-hangzhou. Untuk wilayah lain, tentukan wilayah yang sesuai.
	clientOptions := []oss.ClientOption{oss.SetCredentialsProvider(&provider)}
	clientOptions = append(clientOptions, oss.Region("yourRegion"))
	// Setel versi signature.
	clientOptions = append(clientOptions, oss.AuthVersion(oss.AuthV4))
	client, err := oss.New("yourEndpoint", "", "", clientOptions...)
	if err != nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}

	// Buat bucket bernama examplebucket. Setel kelas penyimpanan ke Infrequent Access (oss.StorageIA), daftar kontrol akses (ACL) ke public-read (oss.ACLPublicRead), dan tipe pemulihan bencana data ke penyimpanan redundan zona (oss.RedundancyZRS).
	err = client.CreateBucket("examplebucket", oss.StorageClass(oss.StorageIA), oss.ACL(oss.ACLPublicRead), oss.RedundancyType(oss.RedundancyZRS))
	if err != nil {
		fmt.Println("Error:", err)
		os.Exit(-1)
	}
}

Referensi

  • Untuk kode contoh lengkap pembuatan bucket, lihat contoh di GitHub.

  • Untuk informasi selengkapnya mengenai operasi API pembuatan bucket, lihat PutBucket.