Szerveroldali ellenőrzés

Mindig ellenőrizze a SilentShield nonce-t a szerverén. A kizárólag kliensoldali ellenőrzéseket a robotok megkerülhetik.

Miért szerveroldalon?

A widget a böngészőben fut, és nonce-t illeszt be az űrlapokba. Egy robot kihagyhatja a widgetet és közvetlenül küldheti be az űrlapot. A szerveroldali ellenőrzés biztosítja, hogy a nonce-t a SilentShield jogszerűen bocsátotta ki és ellenőrizte.

API végpont

Method
POST
URL
https://api.silentshield.io/api/v1/captcha/verify-nonce
Headers
X-Api-Key: YOUR_API_KEY Content-Type: application/json
Body
{ "nonce": "the-nonce-from-the-form" }

Válasz formátuma

Responsejson
{
  "ok": true,
  "verdict": "human",
  "confidence": 0.92,
  "requested_nonce": "..."
}
human
human — A felhasználó nagy valószínűséggel ember. Dolgozza fel az űrlapot.
suspicious
suspicious — a kiszolgáló elutasította (HTTP 403, `ok: false`). Az ítélet az okot nevezi meg, nem a döntést: azt már a fiókja küszöbértéke hozta meg.
bot
bot — Nagy biztonsággal robot. Utasítsa el az űrlapot.

Ajánlott logika

A kiszolgáló már alkalmazta a fiókja küszöbértékét: az elutasítás HTTP 403 formájában érkezik, `ok: false` mellett. Ezért az átengedésre ellenőrizzen, ne a `bot` értékre — különben átengedi az összes `suspicious` néven kimondott elutasítást és minden ítélet nélküli választ (érvénytelen kulcs, kimerült keret).

Server-Side Logicjavascript
if not ok or verdict != "human":
    az űrlap elutasítása (403)
else:
    az űrlap szokásos feldolgozása

Hibakezelés

Ha a SilentShield API elérhetetlen (időtúllépés, 5xx hiba), döntse el stratégiáját:

Fail Open
Fail open — Fogadja el az űrlapot (jobb felhasználói élmény, kevésbé biztonságos)
Fail Closed
Fail closed — Utasítsa el az űrlapot (biztonságosabb, rosszabb felhasználói élmény)

A legtöbb alkalmazáshoz fail open megközelítést ajánlunk naplózással. Kritikus űrlapok (bejelentkezés, fizetés) esetén a fail closed megközelítést javasoljuk.