Как возможно что можно хранить клеймы при cookie аутентификации в ASP.NET Core?

Для примера, тот же JWT-токен, это JSON файл закодированный в HMAC SHA256 в разделе которого указываются клеймы, которые спокойно можно дешифровать. Этот токен мы выдаем пользователю в ответ на успешную аутентификацию и будем ожидать его в запросах в заголовке authorization: bearer для предоставления ему соответствующих прав на сервере.

С куки я не понимаю как это может работать - допустим мы приняли форму с логином и паролем, нашли в БД соответствующего юзера - создали клеймы, на их основе создали новый объект ClaimsIdentity/ClaimsPrincipal и с помощью метода SignInAsync("Cookies", claimsPrincipal) мы устанавливаем аутентификационные куки клиенту. Но что хранится в значении этого куки? Это же не JWT-токен, а что это тогда и как на основании этого сервер может распознавать юзера и при чём тут классы ClaimsIdentity/ClaimsPrincipal?

Я правильно понимаю что такая же модель используется во фреймворке Identity и дело тут в авторизации на основе сессий или нет?


Ответы (0 шт):