Qual è il modo preferito per gestire i moduli memorizzati nella cache e il token CSRF? Here propongono una sovrascrittura JS dell'attributo input, ma voglio anche memorizzare l'intestazione nella cache.Framment caching & CSRF
5
A
risposta
4
Questo è un articolo che descrive diversi metodi: http://www.fastly.com/blog/Caching-the-Uncacheable-CSRF-security/.
Un breve riassunto:
- Utilizzando ESI (Bordo Side Includes): il rendering un segnaposto in Rails, che si riempie con il CSRF token di seguito.
- Incluso il token CSRF in un cookie e copiarlo nel modulo tramite javascript.
- Scaricare il token in una richiesta AJAX separata e copiarlo nel modulo tramite javascript.
mio prendere:
È necessario impostare l'infrastruttura speciale per l'utilizzo di ESI, quindi non mi piace questa soluzione. Le richieste AJAX sono lente e un sacco di spese di rete, quindi non mi piace anche quella soluzione ... Quindi vorrei andare con la soluzione dei cookie o con la soluzione JS che hai già menzionato, dal momento che queste sono le soluzioni più semplici.
1
questo funziona per me. Ho appena tenuto questo nel mio application.js
e tutto funziona perfettamente.
$.ajaxSetup({
beforeSend: function(xhr) {
var csrf_value = $("meta[name='csrf-token']").attr("content");
xhr.setRequestHeader("X-CSRF-Token", csrf_value);
},
});
Problemi correlati
- 1. Come rimuovere Framment da FragmentPagerAdapter?
- 2. Butterknife Framment Injecting Views non funziona?
- 3. come usare framment in Android 2.2?
- 4. Caching distribuito
- 5. Django REST Framework CSRF non riuscito: cookie CSRF non impostato
- 6. Django - Verifica CSRF fallita
- 7. wtforms, CSRF, flask, FieldList
- 8. Codeigniter CSRF domanda
- 9. Token CSRF Flask-Security
- 10. symfony2 CSRF non valido
- 11. token csrf utilizzando
- 12. Kraken.js CSRF Handling
- 13. Generazione di token CSRF
- 14. angular, django e csrf
- 15. Codeigniter ajax CSRF problem
- 16. Rails Token CSRF - Scadono?
- 17. JQuery + AJAX + Django = CSRF?
- 18. django CSRF RequestContext
- 19. impedendo csrf in php
- 20. Token CSRF Laravel
- 21. Protezione CSRF nell'applicazione Web
- 22. CSRF nelle applicazioni mobili
- 23. Caching in JDBC
- 24. Caching vs Indexing
- 25. caching UIFont iOS?
- 26. MVC caching database immagini
- 27. jsdom window caching
- 28. IE 8 Caching Problem
- 29. Teoria di caching
- 30. Caching gzipped css
Questo non risolve il fatto che per impostazione predefinita i binari inseriranno un campo nascosto in tutti i moduli che include il token CSRF. Questo modulo sarà ancora memorizzato nella cache. Anche se gli errori di token non validi andranno via, stai perdendo i token dei tuoi utenti ad altri utenti in questa cache. – phylae