Blocco dell'accesso diretto a una fonte jax

1

Ho fatto una calcolatrice. Voglio impedire che le persone possano usare ajax.php per ottenere i risultati senza accedere alla pagina web. Devono utilizzare l'API per questo scopo.

Suppongo di poter aggiungere una chiave (timestamp codificato con crittografia simmetrica) all'interno della pagina web. Quando chiamerò ajax.php, invierò anche la chiave. Sul lato server, decodificherò la chiave, estrarrò il timestamp e controllerò se la chiave non è stata generata troppo tempo fa.

Posso anche generare una chiave una volta all'interno del database.

Hai idee migliori?

    
posta hotips 22.06.2012 - 01:20
fonte

1 risposta

2
  • È anche possibile utilizzare la funzionalità token CSRF disponibile nella maggior parte del framework di sviluppo web. CSRF è memorizzato nei metadati di intestazione della pagina Web e deve essere inviato per ogni richiesta Ajax. CSRF viene assegnato quando viene eseguita una pagina intera dal server.

    Se il token CSRF non esiste nella richiesta Ajax, o se CSRF è sbagliato, non elaborare la richiesta. In questo modo ti assicuri che l'utente abbia effettuato il login nell'interfaccia reale.

  • Effettua la convalida della sessione di ciascuna richiesta Ajax.

Puoi usarli anche all'interno di una chiamata API.

Ancora aiuterà a proteggere da alcuni proxy di intercettazione web o script di client Web html personalizzati.

    
risposta data 22.06.2012 - 03:39
fonte

Leggi altre domande sui tag