Ist es erforderlich, CSRF-Schutz zu verwenden, wenn die Anwendung auf einer zustandslosen Authentifizierung basiert (unter Verwendung von HMAC)?
Beispiel:
Wir haben eine App für eine einzelne Seite (andernfalls müssen wir das Token an jeden Link anhängen :
<a href="...?token=xyz">...</a>
.Der Benutzer authentifiziert sich mit
POST /auth
. Bei erfolgreicher Authentifizierung gibt der Server ein Token zurück.Das Token wird über JavaScript in einer Variablen in der Einzelseiten-App gespeichert.
Dieses Token wird verwendet, um auf eingeschränkte URLs wie zuzugreifen
/admin
.Das Token wird immer in HTTP-Headern übertragen.
Es gibt KEINE HTTP-Sitzung und KEINE Cookies.
Soweit ich weiß, sollte es (?!) Keine Möglichkeit geben, Cross-Site-Angriffe zu verwenden, da der Browser das Token nicht speichert und es daher nicht automatisch an den Server senden kann (dies würde bei der Verwendung von Cookies / passieren). Session).
Vermisse ich etwas