All Products
Search
Document Center

CDN:Penandatanganan Tipe F

Last Updated:May 12, 2026

Penandatanganan URL melindungi sumber daya server origin Anda dari akses yang tidak sah. CDN Alibaba Cloud menyediakan empat metode penandatanganan URL. Topik ini menjelaskan cara kerja Tipe F dan memberikan contohnya.

Catatan

Tipe F merupakan metode penandatanganan URL paling sederhana. Metode ini menggunakan MD5 dengan kunci privat serta parameter default sign dan time, sehingga cocok untuk sebagian besar skenario otentikasi dasar.

Penting

URL yang ditandatangani tidak boleh mengandung karakter Tionghoa.

Penandatanganan URL tidak mendukung URL yang telah berisi parameter kueri (?), karena URL yang ditandatangani sendiri akan menambahkan parameter kueri.

Cara kerja

  • Format URL yang Ditandatangani

    URL yang ditandatangani menggunakan format berikut:

    http://DomainName/FileName?{sign=<md5hash>&time=<timestamp>}
    Catatan

    Konten dalam {} merepresentasikan parameter otentikasi yang ditambahkan ke URL standar.

    Nama parameter sign dan time merupakan nilai default. Anda dapat menyesuaikan Signature Parameter dan Timestamp Parameter di Konsol Configure URL signing.

  • Parameter

    Deskripsi

    DomainName

    Nama domain yang dipercepat oleh CDN.

    PrivateKey

    Kunci kriptografi kustom berisi 16 hingga 32 karakter yang terdiri dari huruf kapital, huruf kecil, dan angka.

    FileName

    Jalur menuju resource untuk permintaan back-to-origin. Jalur tersebut harus dimulai dengan garis miring maju (/).

    timestamp

    Waktu saat server penandatanganan menghasilkan URL yang ditandatangani. Nilai ini, dikombinasikan dengan periode validitas, menentukan kapan URL yang ditandatangani kedaluwarsa. Waktu ini merupakan Stempel waktu UNIX — jumlah detik yang telah berlalu sejak pukul 00:00:00 UTC pada 1 Januari 1970. Ini adalah bilangan desimal positif 10 digit dan tidak bergantung pada zona waktu. Di Konsol Configure URL signing, Anda dapat mengatur format stempel waktu menjadi desimal (Stempel waktu UNIX) atau heksadesimal (Stempel waktu UNIX).

    Catatan

    Atur TTL di Konsol Configure URL Signing. Setelah konfigurasi selesai, waktu kedaluwarsa URL yang ditandatangani adalah timestamp + periode validitas yang dikonfigurasi untuk CDN.

    md5hash

    String 32 karakter yang dihasilkan oleh algoritma MD5, berisi angka 0–9 dan huruf kecil a–z.

    Nilai md5hash dihasilkan dari string penandatanganan berikut:

    sstring = "Privatekey+URI+timestamp" (di mana URI adalah jalur relatif objek yang diminta, seperti /Filename, dan tidak mencakup parameter kueri)
    md5hash = md5sum(sstring)
  • Logika Otentikasi

    Saat node edge CDN menerima permintaan untuk sebuah resource, sistem terlebih dahulu memeriksa apakah timestamp + validity period telah lewat.

    • Jika timestamp + validity period lebih awal daripada waktu saat ini, permintaan telah kedaluwarsa dan server mengembalikan error HTTP 403.

    • Jika timestamp + validity period lebih baru daripada waktu saat ini, server menyusun string penandatanganan dalam format sstring, menghitung nilai MD5-nya, lalu membandingkan hasil tersebut dengan nilai md5hash dalam permintaan.

      • Jika nilainya sesuai, otentikasi berhasil dan node edge mengembalikan resource yang diminta.

        Catatan

        Setelah otentikasi berhasil, node edge menghapus parameter otentikasi dari URL. Hal ini meningkatkan rasio hit cache dan mengurangi lalu lintas kembali ke asal. Contohnya:

        • URL dengan parameter penandatanganan: http://DomainName/FileName?{sign=<md5hash>&time=<timestamp>}

        • Setelah otentikasi:

          • URL yang digunakan untuk menghasilkan kunci cache: http://DomainName/FileName

          • URL untuk permintaan back-to-origin: http://DomainName/FileName

      • Jika nilainya tidak sesuai, otentikasi gagal dan server mengembalikan error HTTP 403.

Contoh

Contoh berikut menunjukkan cara mengimplementasikan penandatanganan URL Tipe F.

  • Kondisi Contoh

    • Ambil objek dari server origin:

      http://domain.example.com/test.flv
      Catatan

      Jika URL permintaan berisi karakter Tionghoa atau karakter non-ASCII lainnya, Anda harus terlebih dahulu encode URL tersebut. Kemudian, gunakan URL yang telah di-encode untuk menyusun string penghashan. Contohnya:

      • URL asli: https://example.com/image/AlibabaCloud.jpg

      • URL yang di-encode: https://example.com/image/%E9%98%BF%E9%87%8C%E4%BA%91.jpg

    • Tetapkan PrivateKey menjadi aliyuncdnexp1234.

    • Tetapkan timestamp menjadi 55CE8100.

  • Proses

    1. Buat string penandatanganan sstring dalam format Privatekey+URI+timestamp.

      aliyuncdnexp1234/test.flv55CE8100
    2. Hitung hash MD5 dari string penandatanganan:

      md5hash = md5sum(aliyuncdnexp1234/test.flv55CE8100)
              = a37fa50a5fb8f71214b1e7c95ec7a1bd
    3. Tambahkan hasil penandatanganan dan timestamp sebagai parameter kueri untuk membentuk URL yang ditandatangani:

      http://domain.example.com/test.flv?sign=a37fa50a5fb8f71214b1e7c95ec7a1bd&time=55CE8100

Saat klien mengakses resource menggunakan URL yang ditandatangani, otentikasi berhasil jika nilai md5hash yang dihitung oleh server CDN sesuai dengan nilai md5hash dalam permintaan — misalnya, a37fa50a5fb8f71214b1e7c95ec7a1bd — dan URL yang ditandatangani belum kedaluwarsa. Jika tidak, otentikasi gagal.