Кто вообще должен хранить ключи? 🔑
В привычной схеме авторизации немало работы достается фронтенду: получить JWT, сохранить его, передавать с запросами, следить за сроком жизни и вовремя обновлять. Но есть другой сценарий: фронтенд вообще не получает доступ к credential. Его хранение и передачу берут на себя браузер и сервер.
В новой статье на Хабре Дмитрий Клешнев, фронтенд-разработчик в ГНИВЦ, показывает, как устроен переход от localStorage к HttpOnly Cookie и что вслед за ним меняется в архитектуре приложения. Почему HttpOnly не спасает от XSS целиком, откуда при Cookie берется вопрос с CSRF, как не запутаться в SameSite и CORS — и, наконец, как всё это выглядит в React + MobX.
Токен исчезает из JavaScript. А что приходит ему на смену — узнаете в статье ↗️