全部产品
Search
文档中心

Object Storage Service:tanda tangan

更新时间:Jul 02, 2025

Secara default, daftar kontrol akses (ACL) dari sebuah objek dalam bucket Object Storage Service (OSS) bersifat pribadi. Hanya pemilik objek yang memiliki izin untuk mengakses objek tersebut. Namun, pemilik objek dapat menjalankan perintah sign untuk menghasilkan dan membagikan URL yang ditandatangani dari objek kepada pengguna pihak ketiga. Kredensial akses digunakan untuk menghasilkan URL yang ditandatangani dan memberi otorisasi kepada pengguna pihak ketiga untuk mengunduh atau melihat pratinjau objek dalam periode waktu tertentu.

Penting
  • Pengguna pihak ketiga dapat menggunakan URL yang ditandatangani untuk mengakses objek, terlepas dari apakah ACL objek bersifat publik-baca atau pribadi dan apakah kebijakan bucket atau RAM policy dikonfigurasi untuk memberi otorisasi kepada pengguna pihak ketiga untuk mengakses objek.

  • Untuk ossutil V1.6.16 dan versi lebih baru, Anda dapat langsung menggunakan ossutil sebagai nama biner di baris perintah tanpa harus memperbarui nama biner berdasarkan sistem. Untuk ossutil sebelum V1.6.16, Anda harus menentukan nama biner yang sesuai dengan sistem. Untuk informasi lebih lanjut, lihat referensi perintah ossutil.

Sintaks perintah

ossutil sign cloud_url
[--timeout <nilai>] 
[--version-id <nilai>] 
[--trafic-limit <nilai>] 
[--disable-encode-slash] 
[--payer <nilai>]
[--query-param <nilai>]

Tabel berikut menjelaskan parameter dan opsi dalam sintaks.

Parameter/Opsi

Deskripsi

cloud_url

Path lengkap ke objek, termasuk nama bucket.

--timeout

Periode validitas URL yang ditandatangani. Unit: detik. Nilai default: 60.

Penting

Jumlah dari timestamp saat ini dan periode validitas URL yang ditandatangani tidak boleh melebihi 9223372036854775807. Jika jumlahnya melebihi nilai tersebut, kesalahan akan dilaporkan. Sebagai contoh, jika timestamp saat ini adalah 1643341269, periode validitas URL yang ditandatangani tidak boleh melebihi 9223372035211434538.

--version-id

ID versi objek yang ingin Anda hasilkan URL yang ditandatangani. Parameter ini hanya berlaku untuk objek dalam bucket yang memiliki versioning diaktifkan atau ditangguhkan.

--trafic-limit

Kecepatan maksimum untuk mengakses objek melalui HTTP menggunakan URL yang ditandatangani. Unit: bit/detik. Nilai default parameter ini adalah 0, yang menentukan bahwa kecepatan akses tidak dibatasi. Nilai valid: 819200 hingga 838860800 (100 KB/detik hingga 100 MB/detik).

--disable-encode-slash

Menentukan bahwa garis miring (/) yang terkandung dalam nilai cloud_url tidak dienkripsi.

--payer

Pembayar biaya yang dihasilkan oleh operasi. Jika Anda ingin peminta yang mengakses sumber daya di jalur yang ditentukan membayar biaya yang dihasilkan oleh permintaan, atur opsi ini ke requester.

--query-param

Parameter kueri dalam permintaan. Anda dapat menentukan beberapa parameter kueri dalam satu permintaan. Sebagai contoh, Anda dapat menentukan parameter pemrosesan gambar (IMG) sebagai parameter kueri.

--query-param mendukung parameter berikut: x-oss-process, x-oss-traffic-limit, response-content-language, response-expires, response-cache-control, response-content-disposition, response-content-encoding, x-oss-ac-source-ip, x-oss-ac-subnet-mask, x-oss-ac-vpc-id, dan x-oss-ac-forward-allow. Untuk informasi lebih lanjut tentang parameter, lihat Buat URL yang ditandatangani menggunakan signature V1 dan GetObject.

Catatan

Parameter --query-param hanya tersedia di ossutil V.1.7.15 atau lebih baru.

Contoh

  • Anda dapat menjalankan perintah berikut untuk menghasilkan URL yang ditandatangani untuk objek bernama exampleobject.png dalam bucket bernama examplebucket. Dalam contoh ini, periode validitas URL adalah nilai default, yaitu 60 detik.

    ossutil sign oss://examplebucket/exampleobject.png
  • Anda dapat menjalankan perintah berikut untuk menghasilkan URL yang ditandatangani untuk objek bernama exampleobject.png dalam bucket bernama examplebucket. Dalam contoh ini, periode validitas URL diatur menjadi 3.600 detik.

    ossutil sign oss://examplebucket/exampleobject.png --timeout 3600
  • Anda dapat menjalankan perintah berikut untuk menghasilkan URL yang ditandatangani untuk objek bernama exampleobject.png dalam bucket bernama examplebucket. Dalam contoh ini, periode validitas URL diatur menjadi 7.200 detik, dan kecepatan maksimum untuk mengakses objek melalui HTTP menggunakan URL yang ditandatangani diatur menjadi 100 MB/detik.

    ossutil sign oss://examplebucket/exampleobject.png --timeout 7200 --trafic-limit 838860800
  • Anda dapat menjalankan perintah berikut untuk menghasilkan URL yang ditandatangani untuk versi tertentu dari objek bernama exampleobject.jpg dalam bucket bernama examplebucket. Dalam contoh ini, periode validitas URL diatur menjadi 1.800 detik.

    ossutil sign oss://examplebucket/exampleobject.jpg --timeout 1800 --version-id  CAEQARiBgID8rumR2hYiIGUyOTAyZGY2MzU5MjQ5ZjlhYzQzZjNlYTAyZDE3****
  • Anda dapat menjalankan perintah berikut untuk mengubah ukuran objek gambar bernama exampleobject.jpg dalam bucket examplebucket menjadi lebar 100 piksel dan tinggi 100 piksel, memutar gambar sebesar 90 derajat, dan menghasilkan URL yang ditandatangani untuk gambar yang diproses:

     ossutil sign oss://examplebucket/exampleobject.jpg  --query-param x-oss-process:image/resize,m_fixed,w_100,h_100/rotate,90
  • Anda dapat menjalankan perintah berikut untuk mengubah ukuran objek gambar bernama exampleobject.jpg dalam bucket examplebucket menjadi lebar 100 piksel dan tinggi 100 piksel, memutar gambar sebesar 90 derajat, menetapkan batas lalu lintas menjadi 100 KB/detik (819.200 bit/detik), dan menghasilkan URL yang ditandatangani untuk gambar yang diproses:

    ossutil sign oss://examplebucket/exampleobject.jpg  --query-param x-oss-process:image/resize,m_fixed,w_100,h_100/rotate,90 --query-param x-oss-traffic-limit:819200
  • Setelah perintah di atas berhasil, keluaran serupa dengan konten berikut. Keluaran mencakup waktu yang digunakan untuk menghasilkan URL yang ditandatangani, periode validitas URL, dan informasi tanda tangan dalam URL:

    https://examplebucket.ss-cn-hangzhou.aliyuncs.com/exampleobject.png?Expires=1608282224&OSSAccessKeyId=LTAI****************&Signature=jo4%2FGykfuc1A4fvyvKRpRyymYH****
    0.368676(d) berlalu

Opsi umum

Jika Anda menggunakan ossutil untuk beralih ke bucket yang berada di wilayah lain, tambahkan opsi -e untuk menentukan Titik akhir wilayah tempat bucket berada. Jika Anda menggunakan ossutil untuk beralih ke bucket yang dimiliki oleh akun Alibaba Cloud lain, tambahkan opsi -i untuk menentukan ID AccessKey dari akun yang ditentukan, dan tambahkan opsi -k untuk menentukan Rahasia AccessKey dari akun yang ditentukan.

Sebagai contoh, Anda dapat menjalankan perintah berikut untuk menghasilkan URL yang ditandatangani untuk objek bernama exampletest.jpg dalam bucket bernama testbucket, yang berada di wilayah China (Shanghai) dan dimiliki oleh akun Alibaba Cloud lain. Dalam contoh ini, periode validitas URL diatur menjadi 3.600 detik.

ossutil sign oss://testbucket/exampletest.jpg --timeout 3600 -e oss-cn-shanghai.aliyuncs.com -i LTAI****************  -k yourAccessKeySecret

Untuk informasi lebih lanjut tentang opsi umum, lihat Opsi umum.