FastOG
Topik

URL OG Image Bertanda Tangan

URL OG image bertanda tangan adalah URL yang parameternya dilindungi dengan tanda tangan HMAC-SHA256, sehingga hanya Anda (dan kode yang memegang rahasia Anda) yang dapat meminta render yang dihitung terhadap kuota bulanan Anda. FastOG menandatangani konten — parameter yang identik selalu menghasilkan URL yang identik dan di-cache — yang melindungi kuota Anda sekaligus membuat caching menjadi deterministik.

Mengapa menandatangani URL gambar OG

Endpoint gambar OG yang merender teks arbitrer dari URL tanpa autentikasi adalah ladang render gratis yang bisa diakses siapa saja. Pada layanan berbasis langganan, hal ini berarti siapa pun dapat menghabiskan saldo Anda. Menandatangani setiap URL dengan rahasia yang hanya diketahui backend Anda akan memblokir setiap permintaan tidak sah pada pengambilan pertama (belum di-cache), sementara URL sah yang sudah di-cache tetap berfungsi.

Cara kerja penandatanganan konten

  1. Anda menyusun string kueri kanonik: setiap parameter (kecuali tanda tangan), diurutkan dan dienkode sesuai RFC-3986.
  2. Anda menghitung HMAC_SHA256(secret, "GET/api/v1/og\n" + canonical).
  3. Anda menambahkan tanda tangan sebagai parameter s.

Pesan tidak menyertakan stempel waktu, sehingga URL bersifat stabil: parameter yang sama → URL yang sama → entri cache yang sama.

canonical = "key=sk_...&template=default&title=Hello"
signature = HMAC-SHA256(secret, "GET/api/v1/og\n" + canonical)
url = ".../api/v1/og?key=...&template=default&title=Hello&s=" + signature

Kesalahan umum yang sering terjadi pada trade-off

Kekhawatiran Realita
"URL yang ditandatangani akan kedaluwarsa" Tidak — URL tersebut ditandatangani berdasarkan konten, tetap valid hingga Anda memutar rahasia (secret)
"URL yang dirusak akan merusak cache" Tidak — s yang palsu hanya akan mendapat respons 401 pada cache miss; gambar yang sudah di-cache tetap dikembalikan
"Saya butuh timestamp untuk keamanan" Penandatanganan konten sudah cukup untuk mencegah penyalahgunaan kuota; tidak perlu jam (clock)

SDK Satu File

FastOG menyediakan satu file penanda tangan (signer) per bahasa (tanpa dependensi) sehingga Anda tidak perlu membuat HMAC secara manual. Unduh dari halaman SDK atau curl langsung dari CDN:

bash
curl -O https://fastog.com/sdk/node.js

FAQ

Apakah URL yang ditandatangani pernah kedaluwarsa?

Secara bawaan tidak — URL tersebut tetap valid hingga Anda memutar ulang rahasia HMAC dari kunci API. Ditandatangani berdasarkan konten, bukan berdasarkan waktu.

Bisakah orang lain menghabiskan kuota saya dengan menebak URL?

Tidak. Mereka memerlukan rahasia HMAC Anda untuk membentuk tanda tangan yang valid; tanpa itu, render yang tidak di-cache akan mengembalikan 401 invalid_signature.

Apakah saya menandatangani URL di peramban?

Tidak. Tandatangani di sisi server (atau dalam fungsi edge) tempat rahasia tidak pernah dikirim ke klien. URL gambar yang dirender aman untuk ditempatkan di <head> publik Anda.

Coba gratis — tanpa perlu mendaftar

Pratinjau dan uji gambar OG dinamis dalam hitungan detik.

Buka Penguji Gambar OG Gratis

A BeCaSimulations site