В моем web.xml я использую что-то вроде этого:
<security-constraint>
<web-resource-collection>
<web-resource-name>Block all</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint />
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>Allow facelets</web-resource-name>
<url-pattern>/faces/*</url-pattern>
<http-method>POST</http-method>
<http-method>GET</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>*</role-name>
</auth-constraint>
</security-constraint>
Все входящие запросы блокируются, кроме тех, которые начинаются с / Faces /.Я делаю это потому, что в противном случае неавторизованные пользователи могут получить доступ к исходным файлам Facelets.
Работает нормально, но не показывает файл приветствия, потому что даже корневой путь заблокирован.Я пытался добавить <url-pattern>/</url-pattern>
ко второму ограничению безопасности, но ничего.