Чтобы обеспечить безопасный доступ к веб-приложению Tomcat, вы можете реализовать простое ограничение безопасности (например, в /var/lib/tomcat7/webapps/*/WEB-INF/web.xml
), как показано ниже (просто добавьте его до окончания </web-app>
):
<!-- This security constraint protects your webapp interface. -->
<login-config>
<!-- Define the Login Configuration -->
<auth-method>BASIC</auth-method>
<realm-name>Webapp</realm-name>
</login-config>
<security-constraint>
<web-resource-collection>
<web-resource-name>Admin</web-resource-name>
<url-pattern>/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>*</role-name>
</auth-constraint>
<!-- Specifying a Secure Connection -->
<user-data-constraint>
<!-- transport-guarantee can be CONFIDENTIAL (forced SSL), INTEGRAL, or NONE -->
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>
<!-- Authorization, see: tomcat-users.xml -->
<security-role>
<role-name>*</role-name>
</security-role>
Элемент login-config содержит элемент auth-method
, который определяет используемый нами метод аутентификации, а именно BASIC
. Элемент security-constraint
содержит 3 элемента: web-resource-collection
, auth-constraint
и user-data-constraint
. Коллекция web-ресурсов определяет части нашего приложения, которые требуют аутентификации. /*
указывает, что для всего приложения требуется аутентификация. Ограничение auth определяет роль, которую должен иметь пользователь для доступа к защищенным ресурсам. Транспортная гарантия ограничения пользовательских данных может быть NONE
, CONFIDENTIAL
или INTEGRAL
. Мы установили его на NONE
, что означает, что при попытке попасть на защищенный ресурс перенаправление на SSL
не требуется.
Также убедитесь, что у вас есть строка:
<Realm className="org.apache.catalina.realm.MemoryRealm" />
внутри вашей conf/server.xml
(Engine
секции).
Если вы не изменили никаких файлов конфигурации, проверьте файл conf/tomcat-users.xml
в вашей установке (locate tomcat-users.xml
). Этот файл должен содержать учетные данные, позволяющие использовать веб-приложение Tomcat.
Например, чтобы добавить роль manager-gui для пользователя с именем tomcat
с паролем s3cret
, добавьте следующее в файл конфигурации, указанный выше:
<role rolename="manager-gui"/>
<user username="tomcat" password="s3cret" roles="manager-gui"/>
Затем вы можете получить доступ к своему менеджеру веб-приложений из /manager/html
(например, перезагрузка после изменений конфигурации).
Подробнее: Приложение менеджера HOW-TO .
Затем перезапустите Tomcat, и при доступе к вашему веб-приложению он должен запросить правильные учетные данные.
Смотри также: