Antiforgery token (czasem nazywany tokenem CSRF lub tokenem ochrony przed atakiem CSRF - Cross-Site Request Forgery) jest mechanizmem używanym do zabezpieczenia aplikacji internetowych, w tym aplikacji ASP.NET Core Web API, przed atakami CSRF. CSRF to atak polegający na wprowadzeniu użytkownika w błąd i zmuszeniu go do wykonania nieautoryzowanych akcji w aplikacji, nieświadomie wykorzystując jego zalogowaną sesję.
Antiforgery token jest generowany przez serwer i przesyłany do klienta w formie ukrytego pola w formularzu lub jako nagłówek HTTP w odpowiedzi. Następnie klient musi go przesłać z powrotem do serwera w kolejnych żądaniach, co umożliwia serwerowi zweryfikowanie, czy żądanie jest zgodne z tokenem, co pomaga w zabezpieczeniu przed atakiem CSRF. W skrócie, antiforgery token działa w następujący sposób:
Antiforgery token jest ważnym narzędziem w zabezpieczaniu aplikacji internetowych przed atakami CSRF, które mogą prowadzić do nieautoryzowanego wykonywania akcji na koncie użytkownika. W ASP.NET Core, korzystanie z wbudowanej funkcjonalności do generowania i weryfikowania antiforgery tokenów jest stosunkowo proste i jest zalecane przy tworzeniu aplikacji internetowych, w tym ASP.NET Core Web API, które obsługują operacje zmieniające stan.
Prevent Cross-Site Request Forgery (XSRF/CSRF) attacks in ASP.NET Core
Using Cookie-Based CSRF Tokens for Your Single Page Application