#java #angular #spring #spring-boot
#java #angular #spring #spring-boot
Вопрос:
Как предотвратить подделку ответа при сбросе вызовов API из Spring Boot.
Я использую интерфейс, поскольку вызовы Angular и backend API разрабатываются при загрузке Spring.
После успешного входа в систему я отправляю ответ, как показано ниже
{ «LoginStatus»:»Успех», «токен»: «токен jwt» }
Для входа в систему при сбое я отправляю ответ, как показано ниже { «LoginStatus»:»Сбой» }
Если это успешный angular с проверкой LoginStatus, и он перенаправит на панель мониторинга, и теперь проблема в том, что кто-то подделывает ответ об ошибке и меняет его на success . это перенаправление на панель инструментов.
Как предотвратить перенаправление на страницу панели мониторинга?
Комментарии:
1. Ваш BE не должен предоставлять какие-либо (защищенные) данные пользователю, не прошедшему проверку подлинности, т.Е. Запрос без действительного JWT. Поэтому злоумышленник в лучшем случае сможет получить доступ к пустой панели мониторинга. Я не вижу проблемы в перенаправлении, когда BE ведет себя правильно.
2. Спасибо за ответ. Только после успешной аутентификации я отправляю успешный ответ вместе с токеном, и для других ресурсов нет проблем, даже если он перенаправляется на панель мониторинга, потому что я использую токен в каждом последующем вызове после входа в систему. Но не следует перенаправлять на страницу панели мониторинга, когда мой api отправил ответ об ошибке. злоумышленник изменяет этот ответ об ошибке на ответ об успешном завершении, а затем перенаправляет его на страницу панели мониторинга. мой интерфейс проверяет, является ли статус входа в систему успешным и доступен токен. затем он перенаправит на страницу панели мониторинга
3. Итак, вы пытаетесь решить проблему UX для злоумышленника? В любом случае вы также можете проверить токен на стороне пользовательского интерфейса.
4. Нет, не со стороны UX. я спрашиваю о том, как исправить эту проблему с помощью серверной части (Spring Boot) или интерфейса (Angular)
5. Разве сервер не отвечает 401 на ваш первый запрос в панели мониторинга? Тогда ваш HttpInterceptor в angular должен просто перенаправить обратно на страницу ввода. Как изменяется repsonse? Это атака «человек посередине»?