Привет!
имеется 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 ....
Спасибо!
Здравствуйте, Антонш, Вы писали:
А>имеется Java Web приложение, нужно через Web.XML наложить ограничения по безопасности (доступу):
А>нужно, чтобы к модулю MyServelt осуществлялся доступ только по GET и только по HTTPS.
А>Сделал вот так, но не работает. Кто-нибудь знает почему? Что не так? Всё равно по HTTP пускает к MyServlet:
а в app сервере включен https коннектор?
В JBoss, например, по дефолту выключен (см deploy/jbossweb-tomcat55.sar/server.xml)
... << RSDN@Home 1.2.0 alpha rev. 668>>
"Мы будем уничтожать свое ядерное оружие вместе с Америкой" (c) Б. Ельцин