OSS menetapkan setiap bucket dengan satu set nama domain akses, memungkinkan Anda mengakses resource OSS secara fleksibel sesuai kebutuhan bisnis dan lingkungan jaringan yang berbeda. Topik ini menjelaskan format, skenario penggunaan, dan metode konfigurasi masing-masing jenis domain untuk membantu Anda memilih metode akses yang tepat.
Konsep inti
Alamat akses OSS standar terdiri dari beberapa komponen hierarkis. Memahami keempat konsep inti berikut sangat penting untuk mengakses OSS secara tepat:
Konsep | Deskripsi | Format | Tujuan |
Region ID | Identifier wilayah umum |
| Digunakan untuk skenario seperti tanda tangan V4 di SDK dan ossutil |
Dedicated Region ID | Identifier wilayah khusus OSS |
| Digunakan untuk skenario seperti menyusun Endpoints, parameter permintaan API, dan parameter respons |
Endpoint | Alamat akses layanan |
| Dikonfigurasikan di SDK dan ossutil untuk membuat koneksi jaringan dengan layanan OSS |
Bucket domain name | Alamat akses bucket tertentu |
| Digunakan untuk skenario seperti akses langsung melalui browser, menghasilkan signed URL, hosting situs web statis, dan resolusi CNAME domain kustom |
Keempat konsep ini membentuk hierarki: Region ID mengidentifikasi lokasi geografis, yang kemudian diberikan Dedicated Region ID oleh OSS. Dedicated Region ID digabungkan dengan akhiran nama domain untuk membentuk Endpoint (alamat akses layanan). Untuk mengakses bucket tertentu, Anda menggunakan Bucket domain name (alamat akses resource) yang dibentuk dengan menggabungkan nama bucket dengan Endpoint.
Untuk Region ID setiap wilayah, lihat Wilayah dan titik akhir.
Prasyarat
Sebelum mengakses OSS melalui API atau SDK, Anda harus mendapatkan AccessKey untuk otentikasi identitas. AccessKey terdiri dari AccessKey ID dan AccessKey secret.
Untuk mendapatkan AccessKey:
Masuk ke halaman manajemen AccessKey di Konsol Resource Access Management (RAM).
Klik Create AccessKey untuk membuat AccessKey baru, atau aktifkan AccessKey yang dinonaktifkan.
Pilih kotak centang I acknowledge the security risks of using an Alibaba Cloud account AccessKey, lalu klik Continue using the Alibaba Cloud account AccessKey.
Untuk informasi lebih lanjut, lihat Buat pasangan AccessKey.
Jenis nama domain
OSS menyediakan berbagai jenis nama domain akses berdasarkan lingkungan jaringan dan kebutuhan performa.
Karena adanya perubahan kebijakan untuk meningkatkan kepatuhan dan keamanan, mulai 20 Maret 2025, pengguna OSS baru harus menggunakan nama domain kustom (CNAME) untuk melakukan operasi API data pada bucket OSS yang berlokasi di wilayah Tiongkok Daratan. Titik akhir publik default dibatasi untuk operasi tersebut. Lihat pengumuman resmi untuk daftar lengkap operasi yang terdampak. Jika Anda mengakses data melalui HTTPS, Anda harus mengikat Sertifikat SSL yang valid ke domain kustom Anda. Ini wajib untuk akses Konsol OSS, karena konsol menerapkan HTTPS.
Jenis nama domain | Skenario penggunaan | Format nama domain | Karakteristik penagihan | Diperlukan aktivasi |
Akses jaringan publik dari aplikasi web, klien seluler, dan sebagainya |
| Ditagih berdasarkan traffic jaringan publik | Tersedia secara default | |
Akses jaringan internal dalam wilayah Alibaba Cloud yang sama (misalnya, dari ECS) |
| Tidak dikenakan biaya traffic | Tersedia secara default | |
Upload/download lintas wilayah dan lintas batas berkecepatan tinggi |
| Ditagih berdasarkan akselerasi transfer | Anda harus mengaktifkan fitur akselerasi transfer | |
Pengikatan nama domain kustom (seperti hosting resource statis) |
| Ditagih berdasarkan traffic jaringan publik | Anda harus mengakses OSS melalui nama domain kustom | |
Mengakses OSS di lingkungan jaringan IPv6 |
| Akses jaringan publik ditagih berdasarkan traffic jaringan publik; akses jaringan internal tidak dikenakan biaya traffic | Didukung di beberapa wilayah |
Titik akhir publik
Dirancang untuk akses internet, cocok untuk skenario seperti aplikasi web, klien seluler, dan akses lintas wilayah. SDK menggunakan titik akhir publik secara default. Anda hanya perlu menentukan Region ID untuk menyelesaikan konfigurasi, tanpa perlu menentukan Endpoint secara eksplisit.
Titik akhir internal
Dirancang untuk jaringan internal Alibaba Cloud, cocok untuk skenario seperti instans ECS yang mengakses OSS dalam wilayah yang sama. Akses internal menghindari biaya traffic jaringan publik sekaligus memberikan koneksi jaringan yang lebih stabil dan latensi lebih rendah. Rekomendasi penggunaan:
Optimalisasi konfigurasi DNS
Saat menggunakan titik akhir internal, kami sangat menyarankan Anda mengonfigurasi alamat DNS privat Alibaba Cloud (
100.100.2.136dan100.100.2.138) untuk memastikan alamat VIP yang benar diperoleh dan menghindari pengecualian akses OSS yang disebabkan oleh masalah resolusi DNS.Kelengkapan konfigurasi routing segmen jaringan VIP
OSS menetapkan rentang alamat tetap untuk segmen jaringan VIP internal setiap wilayah, dan sistem secara dinamis mengganti alamat IP dalam segmen jaringan VIP yang ditentukan. Saat perangkat lokal dan pusat data mengakses OSS melalui jaringan internal, konfigurasi routing harus mencakup seluruh segmen jaringan VIP; jika tidak, routing jaringan yang tidak lengkap dapat menyebabkan gangguan koneksi. Untuk informasi segmen jaringan VIP internal setiap wilayah, lihat Wilayah dan titik akhir.
PentingPastikan konfigurasi routing Anda mencakup seluruh segmen jaringan VIP untuk menghindari masalah konektivitas jaringan akibat konfigurasi yang tidak lengkap. Jika ketersediaan layanan OSS terganggu karena konfigurasi segmen jaringan VIP yang tidak lengkap, kerugian yang timbul menjadi tanggung jawab pihak yang melakukan konfigurasi.
Saat Anda mengakses OSS lintas wilayah melalui koneksi peering VPC atau Cloud Enterprise Network (CEN), tambahkan segmen jaringan VIP titik akhir internal OSS di wilayah peer ke tabel rute VPC. Segmen jaringan VIP bersifat tetap, dan konfigurasi routing tetap berlaku dalam jangka panjang tanpa gangguan konektivitas akibat perubahan segmen.
Konfigurasi aturan grup keamanan
Saat menggunakan instans ECS untuk mengakses OSS melalui jaringan internal, aturan grup keamanan tidak boleh memblokir akses ke segmen jaringan VIP mana pun, guna memastikan konektivitas jaringan.
Bagaimana cara menghasilkan URL yang dapat diakses publik untuk file yang diunggah melalui titik akhir internal?
File yang disimpan di OSS dapat diakses melalui titik akhir apa pun, terlepas dari apakah file tersebut diunggah melalui titik akhir internal atau titik akhir publik. Titik akhir yang digunakan untuk unggah tidak memengaruhi cara file diakses. Jika Anda mengunggah file melalui titik akhir internal, Anda hanya perlu mengganti nama domain dengan titik akhir publik wilayah yang sesuai saat menghasilkan URL akses.
Sebagai contoh, jika Anda mengunggah file example.jpg melalui titik akhir internal oss-cn-hangzhou-internal.aliyuncs.com, URL akses internalnya adalah:
https://bucket.oss-cn-hangzhou-internal.aliyuncs.com/example.jpg
Untuk menghasilkan URL yang dapat diakses publik, ganti titik akhir internal dengan titik akhir publik:
https://bucket.oss-cn-hangzhou.aliyuncs.com/example.jpg
Nama domain akselerasi transfer
Nama domain khusus yang tersedia setelah Anda mengaktifkan fitur akselerasi transfer. Fitur ini mengoptimalkan jalur transmisi data melalui node akselerasi global dan cocok untuk skenario upload/download lintas wilayah dan lintas batas berkecepatan tinggi, secara signifikan meningkatkan kualitas jaringan untuk akses jarak jauh.
Nama domain CNAME
Nama domain resolusi khusus yang dihasilkan OSS untuk bucket, digunakan untuk skenario pengikatan nama domain kustom. Saat Anda perlu mengakses OSS melalui nama domain kustom, Anda harus mengarahkan rekaman CNAME nama domain kustom ke nama domain ini, bukan ke titik akhir publik.
OSS menetapkan nama domain CNAME dalam wilayah untuk setiap bucket, dan bucket yang berbeda mungkin diberikan nama domain yang berbeda. Dibandingkan dengan semua bucket yang berbagi titik akhir publik yang sama, nama domain CNAME mendistribusikan tautan akses, sehingga memberikan ketersediaan yang lebih tinggi. Catatan penggunaan:
Hanya digunakan untuk resolusi DNS: Nama domain CNAME hanya digunakan untuk konfigurasi resolusi DNS nama domain kustom dan tidak mendukung akses langsung.
Akses melalui nama domain kustom: Setelah menyelesaikan pengikatan nama domain kustom dan konfigurasi resolusi CNAME, akses resource OSS melalui nama domain kustom.
Nama domain dual-stack
Endpoint yang mendukung akses dual-stack IPv4 dan IPv6, memungkinkan klien di lingkungan jaringan IPv6 terhubung langsung ke resource OSS. Saat menggunakan nama domain dual-stack, klien tidak memerlukan konfigurasi khusus; di lingkungan jaringan IPv6 murni atau dual-stack, DNS secara otomatis melakukan resolusi dan memprioritaskan penggunaan alamat IPv6 untuk membuat koneksi. Untuk informasi nama domain dual-stack setiap wilayah, lihat Wilayah dan titik akhir.
Contoh penggunaan
Browser
Saat Anda mengakses file seperti HTML dan gambar melalui nama domain akses yang disediakan OSS, browser memaksa unduhan alih-alih pratinjau online. Untuk mengaktifkan pratinjau file, akses OSS melalui nama domain kustom.
Contoh berikut menunjukkan cara mendapatkan URL yang ditandatangani file di bucket privat melalui konsol. Untuk cara lain mendapatkan URL yang ditandatangani, lihat Gunakan URL yang telah ditandatangani sebelumnya untuk mengunduh atau meninjau file.
Buka Daftar bucket dan klik bucket target.
Klik nama file target atau View Details di kolom Actions, atur Domain Name ke Public Endpoint, lalu klik Copy Object URL.
Akses URL tersebut di browser.
ossutil
Contoh berikut menunjukkan cara menggunakan tool baris perintah ossutil untuk mengunduh file. ossutil menggunakan titik akhir publik secara default, dan Anda dapat menentukan jenis Endpoint lain melalui parameter -e:
ossutil cp oss://<bucket-name>/<object-name> <local-path> -e <endpoint>Konfigurasi parameter untuk berbagai jenis nama domain:
Jenis nama domain | Konfigurasi parameter |
Titik akhir publik (default) | Anda dapat mengabaikan parameter |
Titik akhir internal |
|
Nama domain akselerasi transfer |
|
Nama domain kustom |
|
SDK
Berikut ini contoh inisialisasi SDK V2 untuk bahasa umum. SDK menggunakan titik akhir publik secara default, dan Anda hanya perlu menentukan Region untuk menyelesaikan konfigurasi.
Java
OSSClient client = OSSClient.newBuilder()
.credentialsProvider(provider)
.region("<region-id>")
.build();Untuk kode inisialisasi lengkap, lihat OSS Java SDK V2.
Python
cfg = oss.config.load_default()
cfg.credentials_provider = credentials_provider
cfg.region = '<region-id>'
client = oss.Client(cfg)Untuk kode inisialisasi lengkap, lihat OSS Python SDK V2.
Go
cfg := oss.LoadDefaultConfig().
WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
WithRegion("<region-id>")
client := oss.NewClient(cfg)Untuk kode inisialisasi lengkap, lihat OSS Go SDK V2.
PHP
$cfg = Configuration::loadDefault();
$cfg->setCredentialsProvider($provider);
$cfg->setRegion('<region-id>');
$client = new Oss\Client($cfg);Untuk kode inisialisasi lengkap, lihat OSS PHP SDK V2.
C#
var cfg = OSS.Configuration.LoadDefault();
cfg.CredentialsProvider = new OSS.Credentials.EnvironmentVariableCredentialsProvider();
cfg.Region = "<region-id>";
using var client = new OSS.Client(cfg);Untuk kode inisialisasi lengkap, lihat OSS C# SDK V2.
Node.js
const client = new OSS({
region: 'oss-<region-id>',
accessKeyId: process.env.OSS_ACCESS_KEY_ID,
accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
authorizationV4: true,
});Untuk kode inisialisasi lengkap, lihat OSS Node.js SDK.
Ganti jenis nama domain
SDK V2 mendukung penggantian cepat jenis nama domain melalui item konfigurasi, tanpa perlu menggabungkan string Endpoint secara manual:
Bahasa | Titik akhir publik | Titik akhir internal | Nama domain akselerasi transfer | Nama domain dual-stack |
Java | Setel hanya |
|
|
|
Python | Setel hanya |
|
|
|
Go | Setel hanya |
|
|
|
PHP | Setel hanya |
|
|
|
C# | Setel hanya |
|
|
|
SDK Node.js tidak mendukung item konfigurasi di atas. Anda perlu langsung menentukan string Endpoint target melalui parameter
endpoint.Di semua SDK, Anda dapat langsung menentukan string Endpoint apa pun melalui parameter
endpoint, dengan efek yang sama.Untuk menggunakan SDK V1, lihat dokumentasi V1 untuk bahasa yang sesuai: OSS Java SDK V1 | OSS Python SDK V1 | OSS Go SDK V1 | OSS PHP SDK V1 | OSS SDK for C#.
Untuk contoh integrasi SDK dalam lebih banyak bahasa, lihat Referensi SDKReferensi SDK.
Protokol dan port
Endpoint dan nama domain bucket semua wilayah mendukung protokol HTTP dan HTTPS untuk akses. Untuk memastikan keamanan transmisi data, kami sangat menyarankan Anda menggunakan protokol HTTPS di lingkungan produksi.
OSS mendukung port berikut:
Port | Protokol | Deskripsi |
80 | HTTP | Port default untuk protokol HTTP |
443 | HTTPS | Port default untuk protokol HTTPS |
1935 | RTMP | Hanya digunakan untuk skenario streaming RTMP |