如何配置tomcat web.xml和tomcat-users.xml以保护tomcat页面

时间:2013-09-11 13:16:34

标签: xml tomcat login

我想使用web.xml和tomcat-users.xml在tomcat中保护我的管理页面。它不起作用。

这是我的tomcat-users.xml

的内容
 <?xml version='1.0' encoding='utf-8'?>
 <tomcat-users>
 <role rolename="webadmin"/>
 <user username="kumar" password="kumar" roles="manager"/>
 </tomcat-users> 

和WEB-INF / web.xml的内容

    <resource-env-ref>
    <description>abc.com/</description>
    <resource-env-ref-name>player</resource-env-ref-name>
    <resource-env-ref-type>org.apache.catalina.UserDatabase</resource-env-ref-type>
     </resource-env-ref>


     <security-constraint>
     <display-name>player</display-name>
     <web-resource-collection>
     <web-resource-name>personal</web-resource-name>

     <!-- Define the context-relative URL(s) to be protected -->


     <url-pattern>abc.com</url-pattern>
     <!-- If you list http methods, only those methods are protected -->

     <http-method>DELETE</http-method>

     <http-method>GET</http-method>

     <http-method>POST</http-method>

     <http-method>PUT</http-method>

  </web-resource-collection>
  <auth-constraint>
     <!-- Anyone with one of the listed roles may access this area -->
     <role-name>webadmin</role-name>
  </auth-constraint>
</security-constraint>

<!-- Default login configuration uses form-based authentication -->
<login-config>
     </form-login-config>-->
  <auth-method>BASIC</auth-method>
  <realm-name>player</realm-name>
</login-config>

<!-- Security roles referenced by this web application -->
 <security-role>
<role-name>webadmin</role-name>
 </security-role>

请告诉我这些xmls需要添加的内容。

1 个答案:

答案 0 :(得分:1)

考虑到对tomcat管理器GUI的访问,在tomcat-users.xml中没有设置“manager”的角色。

您必须指定其中一个角色。

您可以在Manager Web应用程序的web.xml文件中找到角色名称。可用的角色是: • manager-gui - 访问HTML界面。 • manager-status - 仅访问“服务器状态”页面。 • manager-script - 访问本文档中描述的工具友好的纯文本界面,以及“服务器状态”页面。 • manager-jmx - 访问JMX代理接口和“服务器状态”页面。

查看此链接以获取更多信息, http://tomcat.apache.org/tomcat-7.0-doc/manager-howto.html

我希望它有所帮助,谢谢。