Pilih preferensi cookie Anda

Kami menggunakan cookie penting serta alat serupa yang diperlukan untuk menyediakan situs dan layanan. Kami menggunakan cookie performa untuk mengumpulkan statistik anonim sehingga kami dapat memahami cara pelanggan menggunakan situs dan melakukan perbaikan. Cookie penting tidak dapat dinonaktifkan, tetapi Anda dapat mengklik “Kustom” atau “Tolak” untuk menolak cookie performa.

Jika Anda setuju, AWS dan pihak ketiga yang disetujui juga akan menggunakan cookie untuk menyediakan fitur situs yang berguna, mengingat preferensi Anda, dan menampilkan konten yang relevan, termasuk iklan yang relevan. Untuk menerima atau menolak semua cookie yang tidak penting, klik “Terima” atau “Tolak”. Untuk membuat pilihan yang lebih detail, klik “Kustomisasi”.

Unduh dan unggah objek dengan presigned URLs

Mode fokus
Unduh dan unggah objek dengan presigned URLs - Amazon Simple Storage Service

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Anda dapat menggunakan presigned URLs untuk memberikan akses terbatas waktu ke objek di Amazon S3 tanpa memperbarui kebijakan bucket Anda. URL yang telah ditandatangani dapat dimasukkan di dalam browser atau dapat digunakan oleh program untuk mengunduh objek. Kredensi yang digunakan oleh URL presigned adalah milik AWS pengguna yang membuat URL.

Anda juga dapat menggunakan presigned URLs untuk mengizinkan seseorang mengunggah objek tertentu ke bucket Amazon S3 Anda. Ini memungkinkan unggahan tanpa mengharuskan pihak lain untuk memiliki kredensil atau izin AWS keamanan. Jika sebuah objek dengan kunci yang sama sudah ada di bucket seperti yang ditentukan dalam URL yang telah ditandatangani, Amazon S3 menggantikan objek yang sudah ada dengan objek yang diunggah.

Anda dapat menggunakan URL yang telah ditandatangani beberapa kali, hingga tanggal dan waktu kedaluwarsa.

Saat Anda membuat sebuah URL yang telah ditandatangani, Anda harus memberikan kredensial keamanan Anda, lalu menentukan berikut ini:

  • Bucket Amazon S3

  • Kunci objek (jika mengunduh objek ini akan ada di bucket Amazon S3 Anda, jika mengunggah ini adalah nama file yang akan diunggah)

  • Metode HTTP (GET untuk mengunduh objek atau PUT untuk mengunggah)

  • Interval waktu kedaluwarsa

Saat ini, Amazon S3 presigned URLs tidak mendukung penggunaan algoritma checksum integritas data berikut (CRC32, CRC32C, SHA-1, SHA-256) saat Anda mengunggah objek. Untuk memverifikasi integritas objek Anda setelah mengunggah, Anda dapat memberikan MD5 intisari objek saat Anda mengunggahnya dengan URL yang telah ditentukan sebelumnya. Untuk informasi selengkapnya tentang integritas objek, lihat Memeriksa integritas objek di Amazon S3.

Siapa yang dapat membuat URL yang telah ditandatangani

Siapa pun yang memiliki kredensial keamanan yang valid dapat membuat sebuah URL yang telah ditandatangani. Tetapi untuk seseorang berhasil mengakses objek, URL yang telah ditandatangani harus dibuat oleh seseorang yang memiliki izin untuk melakukan operasi yang menjadi dasar dari URL yang telah ditandatangani.

Berikut ini adalah jenis kredensial yang dapat Anda gunakan untuk membuat URL yang telah ditandatangani:

  • Profil instans IAM–Valid hingga 6 jam.

  • AWS Security Token Service–Berlaku hingga maksimum 36 jam saat ditandatangani dengan kredensial keamanan jangka panjang atau durasi kredensial sementara, mana yang berakhir terlebih dulu.

  • Pengguna IAM - Berlaku hingga 7 hari saat Anda menggunakan AWS Signature Version 4.

    Untuk membuat sebuah URL yang telah ditandatangani yang valid hingga 7 hari, pertama-tama delegasikan kredensial pengguna IAM (kunci akses dan kunci rahasia) ke metode yang Anda gunakan untuk membuat URL yang telah ditandatangani.

catatan

Jika Anda membuat URL yang telah ditandatangani menggunakan kredensial sementara, URL tersebut akan kedaluwarsa saat kredensial-nya kedaluwarsa. Secara umum, URL yang telah ditetapkan sebelumnya akan kedaluwarsa saat kredensi yang Anda gunakan untuk membuatnya dicabut, dihapus, atau dinonaktifkan. Ini benar terjadi meskipun jika URL dibuat dengan waktu kedaluwarsa yang lebih lama. Untuk masa pakai kredensil keamanan sementara, lihat Membandingkan operasi AWS STS API di Panduan Pengguna IAM.

Waktu kedaluwarsa untuk presigned URLs

URL yang telah ditandatangani tetap valid untuk jangka waktu yang ditentukan saat URL dibuat. Jika Anda membuat URL yang telah ditandatangani dengan konsol Amazon S3, waktu kedaluwarsa dapat diatur antara 1 menit dan 12 jam. Jika Anda menggunakan AWS CLI atau AWS SDKs, waktu kedaluwarsa dapat diatur setinggi 7 hari.

Jika Anda membuat URL yang telah ditetapkan sebelumnya dengan menggunakan token sementara, URL akan kedaluwarsa saat token kedaluwarsa. Secara umum, URL yang telah ditetapkan sebelumnya akan kedaluwarsa saat kredensi yang Anda gunakan untuk membuatnya dicabut, dihapus, atau dinonaktifkan. Ini benar terjadi meskipun jika URL dibuat dengan waktu kedaluwarsa yang lebih lama. Untuk informasi selengkapnya tentang bagaimana kredensial yang Anda gunakan memengaruhi waktu kedaluwarsanya, lihat Siapa yang dapat membuat URL yang telah ditandatangani.

Amazon S3 memeriksa tanggal dan waktu kedaluwarsa URL yang ditandatangani pada saat permintaan HTTP. Misalnya, jika klien mulai mengunduh file besar segera sebelum waktu kedaluwarsa, pengunduhan berlanjut meskipun waktu kedaluwarsa berlalu selama pengunduhan. Akan tetapi, jika koneksi menurun dan klien mencoba memulai ulang unduhan setelah waktu kedaluwarsa berlalu, pengunduhan gagal.

Pembatasan kemampuan URL yang telah ditandatangani

Kemampuan URL yang telah ditandatangani dibatasi oleh izin pengguna yang membuatnya. Intinya, presigned URLs adalah token pembawa yang memberikan akses kepada mereka yang memilikinya. Oleh karena itu, kami menyarankan agar Anda melindunginya sebagaimana mestinya. Berikut ini adalah beberapa metode yang dapat Anda gunakan untuk membatasi penggunaan URLs presigned Anda.

AWS Tanda Tangan Versi 4 (SiGv4)

Untuk menerapkan perilaku tertentu saat permintaan URL yang telah ditandatangani diautentikasi dengan menggunakan AWS Signature Version 4 (SigV4), Anda dapat menggunakan kunci kondisi dalam kebijakan bucket dan kebijakan titik akses. Contoh, kebijakan bucket berikut menggunakan s3:signatureAge kondisi untuk menolak permintaan URL yang telah ditandatangani Amazon S3 pada objek di amzn-s3-demo-bucket bucket jika tanda tangannya sudah lebih dari 10 menit. Untuk menggunakan contoh ini, ganti user input placeholders dengan informasi Anda sendiri.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Deny a presigned URL request if the signature is more than 10 min old", "Effect": "Deny", "Principal": {"AWS":"*"}, "Action": "s3:*", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*", "Condition": { "NumericGreaterThan": { "s3:signatureAge": 600000 } } } ] }

Untuk informasi selengkapnya tentang kunci kebijakan terkait AWS Tanda Tangan Versi 4, lihat Otentikasi AWS Tanda Tangan Versi 4 di Referensi API Amazon Simple Storage Service.

Pembatasan jalur jaringan

Jika Anda ingin membatasi penggunaan presigned URLs dan semua akses Amazon S3 ke jalur jaringan tertentu, Anda dapat AWS Identity and Access Management menulis kebijakan (IAM). Anda dapat mengatur kebijakan ini pada pengguna utama IAM yang melakukan panggilan, bucket Amazon S3, atau keduanya.

Pembatasan jalur jaringan pada pengguna utama IAM mengharuskan pengguna kredensial tersebut untuk membuat permintaan dari jaringan yang ditentukan. Pembatasan pada bucket atau titik akses mengharuskan semua permintaan ke sumber daya tersebut berasal dari jaringan tertentu. Pembatasan ini juga berlaku di luar skenario URL yang telah ditandatangani sebelumnya.

Kunci kondisi global IAM yang Anda gunakan bergantung pada jenis titik akhir. Jika Anda menggunakan titik akhir publik untuk Amazon S3, gunakan aws:SourceIp. Jika Anda menggunakan titik akhir cloud privat virtual (VPC) ke Amazon S3, gunakan aws:SourceVpc atau aws:SourceVpce.

Pernyataan kebijakan IAM berikut mengharuskan prinsipal untuk mengakses AWS hanya dari rentang jaringan yang ditentukan. Dengan pernyataan kebijakan ini, semua akses harus berasal dari rentang itu. Kebijakan ini juga termasuk kasus seseorang yang menggunakan URL yang telah ditandatangani sebelumnya untuk Amazon S3. Untuk menggunakan contoh ini, ganti user input placeholders dengan informasi Anda sendiri.

{ "Sid": "NetworkRestrictionForIAMPrincipal", "Effect": "Deny", "Action": "*", "Resource": "*", "Condition": { "NotIpAddressIfExists": {"aws:SourceIp": "IP-address-range"}, "BoolIfExists": {"aws:ViaAWSService": "false"} } }
PrivasiSyarat situsPreferensi cookie
© 2025, Amazon Web Services, Inc. atau afiliasinya. Semua hak dilindungi undang-undang.