В настоящее время я использую Spring Security для защиты API / SPA, и все это в рамках проекта Springboot. Я использую настраиваемый фильтр JWT с конечной точкой / login, которая проверяет подлинность и возвращает заголовок auth.
Мой проект очень похож на этот учебник: https://dzone.com/articles/spring-boot-security-json-web-tokenjwt-hello-world
Заголовок auth соответствует шаблону Bearer jwt...
.
Я читал, что basi c auth + JWT является приемлемым шаблоном, а также допустимо использование файлов cookie для хранения токенов аутентификации (если они не сохраняют состояние и настроены для обеспечения безопасности).
Я бы хотел использовать повар ie, потому что он упрощает работу на стороне клиента (не нужно беспокоиться о хранении токена, отправляется при вызовах API, а также о навигации), но у вас есть вопросы, на которые, похоже, нет стандартных ответов:
- Как мне согласовать срок действия ie повара с истечением срока действия токена? Установить их одинаковыми?
- Должно ли значение cook ie по-прежнему следовать шаблону «Несущий»? Пример: `set-cook ie:" Авторизация ":" Bearer jwt ". Если нет, то что?
- Часто ли используются фильтры Spring cook ie? Я видел только один пример и не хочу изобретать велосипед, опасаясь создать уязвимость.