Verifica lato server
Verifichi sempre il Nonce di SilentShield sul Suo server. I controlli solo lato client possono essere aggirati dai bot.
Perché lato server?
Il Widget viene eseguito nel browser e inietta un Nonce nei moduli. Un bot potrebbe saltare il Widget e inviare il modulo direttamente. La verifica lato server garantisce che il Nonce sia stato legittimamente emesso e verificato da SilentShield.
Endpoint API
- 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" }
Formato della risposta
Responsejson
{
"verdict": "human",
"score": 0.92,
"difficulty": "pass",
"challenge_required": false
}human- human — L'utente è molto probabilmente umano. Elaborare il modulo.
suspicious- suspicious — L'utente potrebbe essere un bot. Considerare controlli aggiuntivi.
bot- bot — Alta probabilità che si tratti di un bot. Rifiutare il modulo.
Logica consigliata
Nella maggior parte dei casi, controllare il campo verdict:
Server-Side Logicjavascript
if verdict == "bot":
reject the submission (403)
elif verdict == "suspicious":
optionally require additional verification
else:
process the form normallyGestione degli errori
Se l'API di SilentShield non è raggiungibile (timeout, errore 5xx), scelga la Sua strategia:
- Fail Open
- Fail open — Accettare il modulo (migliore esperienza utente, meno sicuro)
- Fail Closed
- Fail closed — Rifiutare il modulo (più sicuro, peggiore esperienza utente)
Per la maggior parte delle applicazioni, consigliamo il fail open con registrazione dei log. I moduli critici (accesso, pagamento) dovrebbero utilizzare il fail closed.