Aihe

Allekirjoitetut OG-kuva-URL-osoitteet

Allekirjoitettu OG-kuva-URL on URL-osoite, jonka parametrit on suojattu HMAC-SHA256-allekirjoituksella, joten vain sinä (ja salaisuutesi sisältävä koodi) voit pyytää renderöintejä, jotka kuluttavat kuukausittaista kiintiötäsi. FastOG allekirjoittaa sisällön — identtiset parametrit tuottavat aina identtisen, välimuistitetun URL-osoitteen — mikä sekä suojaa kiintiötäsi että tekee välimuistituksesta determinististä.

Miksi OG-kuvan URL-osoitteet allekirjoitetaan

OG-kuvan päätepiste, joka renderöi mielivaltaista tekstiä todennustamattomasta URL-osoitteesta, on ilmainen renderöintifarmi, jota kuka tahansa voi käyttää. Tilauspohjaisessa palvelussa tämä tarkoittaa, että kuka tahansa voisi kuluttaa saldosi. Allekirjoittamalla jokaisen URL-osoitteen salaisuudella, jonka vain taustajärjestelmäsi tuntee, estät kaikki luvattomat pyynnöt ensimmäisessä (välimuistiin tallentamattomassa) haussa, kun taas lailliset, välimuistiin tallennetut URL-osoitteet toimivat edelleen.

Miten sisällön allekirjoitus toimii

  1. Muodostat kanonisen kyselymerkkijonon: jokainen parametri (paitsi allekirjoitus), lajiteltuna ja RFC-3986-koodattuna.
  2. Lasket HMAC_SHA256(secret, "GET/api/v1/og\n" + canonical).
  3. Liität allekirjoituksen s-parametrina.

Viesti ei sisällä aikaleimaa, joten URL on vakaa: samat parametrit → sama URL → sama välimuistimerkintä.

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

Väärin ymmärretty kompromissi

Huolenaihe Todellisuus
"Allekirjoitettu URL vanhenee" Ei — se on sisältöallekirjoitettu ja voimassa, kunnes vaihdat salaisuuden
"Muokattu URL rikkoo välimuistin" Ei — virheellinen s saa vain 401-vastauksen välimuistin ohituksessa; välimuistissa olevat kuvat palautuvat silti
"Tarvitsen aikaleimoja tietoturvaan" Sisältöallekirjoitus riittää estämään kiintiön väärinkäytön; kelloa ei tarvita

Yhden tiedoston SDK:t

FastOG toimittaa yhden allekirjoitustiedoston (signer file) jokaista kieltä kohden (ilman riippuvuuksia), joten sinun ei tarvitse koskaan toteuttaa HMAC:ia itse. Lataa SDK-sivulta tai curl suoraan CDN:stä:

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

UKK

Vanhenevatko allekirjoitetut URL-osoitteet koskaan?

Eivät oletuksena — ne pysyvät voimassa, kunnes vaihdat API-avaimen HMAC-salaisuuden. Sisältö on allekirjoitettu, ei aikaan sidottu.

Voiko joku muu kuluttaa kiintiötäni arvaamalla URL-osoitteen?

Ei. He tarvitsevat HMAC-salaisuutesi muodostaakseen kelvollisen allekirjoituksen; ilman sitä välimuistiin tallentamattomat renderöinnit palauttavat 401 invalid_signature.

Allekirjoitanko URL-osoitteen selaimessa?

Et. Allekirjoita palvelinpuolella (tai edge-funktiossa), jossa salaisuus ei koskaan kulkeudu asiakkaalle. Renderöity kuvien URL-osoite on turvallista laittaa julkiseen <head>-osoitteeseesi.

Kokeile ilmaiseksi — ei vaadi rekisteröitymistä

Esikatsele ja testaa dynaamisia OG-kuvia sekunneissa.

Avaa ilmainen OG-kuvien testaaja

A BeCaSimulations site