Текущая настройка:
- Внешняя часть: Angular
- Внутренняя часть: .NET BFF с Microsoft.Identity.Web / AzureAD
- Аутентификация: на основе файлов cookie (файл cookie BFF, например имя проекта.BFF)
- Токен доступа в localStorage/sessionStorage отсутствует (по дизайну)
- На внешнем интерфейсе перехватчик HTTP перенаправляет на несанкционированную страницу 401
- Форма содержит переключатели + поле для комментариев, около 60 вопросов
- Данные конфиденциальны, поэтому использование localStorage запрещено
- Пользователи могут потратить 30–45 минут на заполнение форма. Если срок действия сеанса/токена истекает в течение этого времени:
- Автосохранение или отправка вызовов API завершается с ошибкой 401.
- Пользователь перенаправляется на неавторизованную страницу входа.
- Несохраненные данные формы теряются.
- Автоматическое сохранение данных формы в базе данных (а не в localStorage)
- Правильно обрабатывать 401 из-за истечения срока действия токена/сессии
- Обеспечить отсутствие потери данных, даже если пользователь повторная аутентификация
- Избегайте плохих практик
Подробнее здесь: https://stackoverflow.com/questions/798 ... t-losing-u