Привет!
имеется Java Web приложение, нужно через Web.XML наложить ограничения по безопасности (доступу):
нужно, чтобы к модулю MyServelt осуществлялся доступ только по GET и только по HTTPS.
Сделал вот так, но не работает. Кто-нибудь знает почему? Что не так? Всё равно по HTTP пускает к MyServlet:
<security-constraint>
<web-resource-collection>
<web-resource-name>RestrictedArea</web-resource-name>
<description>RestrictedArea</description>
<url-pattern>MyServlet/*</url-pattern>
<http-method>GET</http-method>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
Вот эта запись по идее должна разрешать доступ тока по HTTPS для развёрнутого приложения:
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
но реально пускает и по HTTP к MyServlet
Вот это по идее должно
<http-method>GET</http-method>
пропускать только GET запросы, и не пускать POST, но POST работает ....
Кто нибудь знает почему? Может что-то не так делаю? Или эта секция <security-constraint> вообще не из этой серии?
Пока сделал софтварную проверку в Java коде:
if( ! reqest.isSecure() ){
// обработка
}
Но ведь должен же быть не не-софтварный способ через Web.XML ....
Спасибо!