Tomcat 配置管理用户

Tomcat 配置管理用户

步骤:

1.在tomcat的安装目录下找到conf文件夹并打开,找到server.xml打开,查找是否有这段代码,没有则添加

<GlobalNamingResources>
    <!-- Editable user database that can also be used by
         UserDatabaseRealm to authenticate users
    -->
    <Resource auth="Container" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" name="UserDatabase" pathname="conf/tomcat-users.xml" type="org.apache.catalina.UserDatabase"/>
  </GlobalNamingResources>

这样一段代码,让tomcat启动服务后能加载到conf/tomcat-users.xml,这个文件。

2.在conf文件夹找到tomcat-users.xml并打开,然后可以发现已经配置有user了,但是被注释掉了。我们需要把那个注释去掉才能使得user生效,注释不去掉,那都是没用的。如下示例:

默认样式:

<!--
  <role rolename="tomcat"/>
  <role rolename="role1"/>
  <user username="tomcat" password="<must-be-changed>" roles="tomcat"/>
  <user username="both" password="<must-be-changed>" roles="tomcat,role1"/>
  <user username="role1" password="<must-be-changed>" roles="role1"/>
-->

去掉注释后:

  <role rolename="tomcat"/>
  <role rolename="role1"/>
  <user username="tomcat" password="<must-be-changed>" roles="tomcat"/>
  <user username="both" password="<must-be-changed>" roles="tomcat,role1"/>
  <user username="role1" password="<must-be-changed>" roles="role1"/>

3.去掉注释后还需要把password改掉,改成你自己需要设置的密码,如:password=“password”

4.需要注意的是:去掉注释后发现还是不能登录Tomcat的manager的,需要对注释后的代码进行改写:

改写后:

  <role rolename="manager-gui"/>
  <role rolename="manager-status"/>
  <role rolename="manager-script"/>
  <role rolename="manager-jmx"/>

  <user username="gui" password="password" roles="manager-gui"/>    <!--访问HTML界面。-->
  <user username="status" password="password" roles="manager-status"/>    <!--仅访问“服务器状态”页面。-->
  <user username="script" password="password" roles="manager-script "/>    <!--访问本文档中描述的工具友好的纯文本界面以及“服务器状态”页面。-->
  <user username="jmx" password="password" roles="manager-jmx"/>    <!--访问JMX代理接口和“服务器状态”页面。-->
  <user username="both" password="password" roles="manager-status,manager-jmx"/>    <!--仅访问“服务器状态”页面和访问JMX代理接口和“服务器状态”页面。-->

5.注意在配置username的时候,不要取重复的名字,因为这样很可能让你的配置不起效果。

6.配置好了后,需要重新启动Tomcat,让Tomcat重新读取tomcat-users.xml内的参数。然后打开localhost:8080页面,点击下图红框中三个按钮的一个,使用相对应的user进行登录即可

image

7.从Tomcat Manager内部配置文件中可以得知,manager-gui、manager-script、manager-jmx均具备manager-status的权限,也就是说,manager-gui、manager-script、manager-jmx三种角色权限无需再额外添加manager-status权限,即可直接访问路径"/manager/status/*"。

注意事项:Tomcat默认是只能在Tomcat运行的机器上的浏览器才能访问manager的页面,如果需要让其他的机器能访问,需要另外进行配置。

原文地址:https://www.cnblogs.com/jimloveq/p/10609484.html