如何防止在Tomcat Apache 7中取消部署应用程序

时间:2014-04-01 09:16:25

标签: java tomcat

我遇到了一个问题enter image description here

我想隐藏取消部署选项

有可能吗?如果是这样,请帮助我。

先谢谢,

1 个答案:

答案 0 :(得分:4)

您必须为deployundeploy操作设置不同的角色。

首先,在$TOMCAT_DIR/conf/tomcat-users.xml中注册角色。例如:

<role rolename="deploy"/>
<role rolename="undeploy"/>

然后,打开$TOMCAT_DIR/webapps/manager/WEB-INF/web.xml并确保以下内容:

<security-constraint>
  <web-resource-collection>
    <web-resource-name>Manual Deployment</web-resource-name>
    <url-pattern>/html/deploy</url-pattern>
  </web-resource-collection>
  <auth-constraint>
     <role-name>manager-gui</role-name>
     <role-name>deploy</role-name>
  </auth-constraint>
</security-constraint>

<security-constraint>
  <web-resource-collection>
    <web-resource-name>Manual Deployment</web-resource-name>
    <url-pattern>/html/undeploy</url-pattern>
  </web-resource-collection>
  <auth-constraint>
    <role-name>manager-gui</role-name>
    <role-name>undeploy</role-name>
  </auth-constraint>
</security-constraint>

这将允许具有undeploy角色的用户取消部署应用程序,只允许具有deploy角色的用户部署应用程序。请注意,可以使用多个角色来装饰用户。

最后,用一些新创建的角色装饰你的用户,重新启动Tomcat,看看会发生什么。