Bene, dipende ...
OAuth è un protocollo per la creazione di una sessione. I token bearer OAuth vengono trasmessi dal client utilizzando l'intestazione HTTP Authentication: Bearer
. Questo è solo un nonce crittografico che viene trasmesso tramite un elemento di intestazione http, che in effetti è ( quasi ) identico all'elemento di intestazione http cookie
.
In che cosa differisce? Bene, le regole per i cookie sono leggermente diverse rispetto ad altri elementi di intestazione. Il cookie è gestito dal browser e viene allegato a ogni richiesta a cui appartiene il cookie. Questo è il motivo per cui Falsificazione richiesta tra siti o attacchi di sessione di lavoro funzionano. Il browser non si cura di dove è arrivata la richiesta, allegherà il cookie in base alla destinazione della richiesta.
I token Bearer OAuth sono leggermente diversi. Questi token sono generalmente gestiti dal client (JavaScript, Flash o anche alcune applicazioni middleware). Se la tua applicazione utilizza JavaScript per gestire il token bearer di autenticazione, allora questo valore non verrà automaticamente applicato dal browser e quindi può raddoppiare come token CSRF, che è accurato.
Tuttavia, se stai usando OAuth per il middleware, allora CSRF non entra in gioco, quindi non importa dove viene visualizzato nell'intestazione.