Nie wiem czy w odpowiednim dziale umieściłem temat, ale potrzebuję uzupełnić trochę wiedzę, która pasuje mi bardziej do frontowych tematów.
Otóż do tej pory pisałem w .Net'cie i guzik mnie obchodziły tematy sesji, ciastek itp gdyż wchodziłem to projektów, które już istniały i miały jakąś bazę.
O ile dobrze rozumiem działanie tokenów i wiem, że np czas trwania sesji jest zależy od informacji dotyczącej czasu życia tokenu o tyle nie mam pojęcia jak działa sesja na podstawie ciasteczek.
Poniżej pytania, wątpliwości do ciastek i sesji:
-
Backend generuje ciasto i je wysyła przy każdym żądaniu, które przychodzi z frontu?
-
W ciastku jest przekazywane sessionId, ale w żadnych materiałach nie widziałem informacji o tym, że w ciastku jest informacja o czasie trwania sesji.
-
Jeśli w ciastku nie mia info o czasie trwania sesji to skąd front wie, że ma przekierować użytkownika do strony logowania?
-
Chyba, że to backend mówi "hola, hola dla tego sessionId czas już minął i nie dostaniesz tego co chcesz". Tak to wygląda w przypadku tokenów.
-
Z drugiej strony użytkownik jest przekierowany do strony wylogowania od momentu czasu rozpoczęcia braku aktywności. Jak to jest mierzone i obsługiwane?
CSRF:
MS jak i kilka innych poradników mówi jak walidację anti forgery token skonfigurować dla API gdy zarówno sam front i backend współistnieją w ramach jednej solucji.
Niestety nie wiem jak to ze sobą współgra i jak to skonfigurować gdy backend jest osadzony na .Net Core, a front to oddzielny byt, który strzela do endpointów.
Wiem, że tam leci jeden token i ciasteczko z tokenem. Stąd też moje próba zrozumienia i pytania odnośnie sesji i ciasteczek.
-
Backend ma wygenerować to ciasteczko i wrzucić ten token do niego i przesłać na front podczas requestu z frontu?
-
Normalnie w aplikacjach, które nie wystawiane były na zewnątrz i przy których do tej pory pracowałem latał token JWT w nagłówku "Authorization". W którym miejscu zostanie przesłany ten token anti forgery?
Większość poradników i materiałów nie odpowiada na moje pytania i ukazuje ogół zagadnienia dlatego też prośba do Was o pomoc.