Sto cercando di capire come sarà possibile creare un'API utilizzando l'API Web ASP.NET che verrà protetta da CSRF, pur rimanendo accessibile da ambienti non Web (ad esempio applicazioni mobili native).In che modo ValidateAntiForgeryToken si adatta alle API Web a cui è possibile accedere tramite l'app Web o nativa?
Il mio primo pensiero sarebbe che un ambiente non Web non può mai passare con successo una convalida del token anti-contraffazione, dal momento che non ha un modulo che viene pubblicato. È vero? C'è un modo per far funzionare la validazione?
Se non c'è un modo per convalidare, il mio secondo pensiero è quello di offrire una API che convalida i token anti-contraffazione per le chiamate Web ma non per le chiamate non web. Tuttavia, sembra che un hacker possa altrettanto facilmente utilizzare questa API "non web" per un attacco CRSF, giusto?
È la risposta che l'API non Web deve supportare solo un meccanismo di autenticazione non Web (OAuth?), In modo che le richieste ad esso non possano essere riprodotte tramite un browser? O c'è un modo più semplice?
Se questo è l'unico modo, c'è un modo semplice per disattivare tutti i meccanismi di autenticazione non sicuri? Non dovrebbe esserci un percorso un po 'semplice/felice nell'API Web ASP.NET per supportare questi scenari?
per quanto ne so, le intestazioni "X-Requested-With" non vengono inserite nella richiesta in modo nativo, solo da framework come jquery – danatcofo