Я делаю веб-приложение, в котором определенные страницы защищены от входа. Для этого я создал область безопасности JDBC в Glassfish и использовал аутентификацию формы (аналогично методу описан здесь)
Я использую правила навигации, чтобы перенаправить пользователя в защищенные области веб-сайта:
<navigation-case>
<from-outcome>showResults</from-outcome>
<to-view-id>/SecureUser/Reservation/New/AvailableResults.xhtml</to-view-id>
<redirect/>
</navigation-case>
(etc...)
Это прекрасно работает. Но если я пропущу тег перенаправления в навигационном случае, URL-адрес страницы не изменится. И в этом случае неавторизованный пользователь может получить доступ к защищенной странице.
Каков наилучший способ сделать это? Достаточно убедиться, что страница перенаправляется, а не перенаправляется? Должен ли я писать код на каждой защищенной странице, который проверяет, вошел ли пользователь в систему или нет?