配置文件解释
配置文件的注释部分:
在Tomcat的配置文件中,默认有如下一段注释:
<!-- <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"/> -->
如果仅把上述内容的注释标记去掉,并修改密码,重启tomcat后访问http://localhost:8080/manager/status,会报403 Access Denied无法登录管理界面。
原因是tomcat8中定义了以下4种角色,所以配置文件中的角色名称是不能任意填写的。
- manager-gui - allows access to the HTML GUI and the status pages
- manager-script - allows access to the text interface and the status pages
- manager-jmx - allows access to the JMX proxy and the status pages
- manager-status - allows access to the status pages only
各参数的含义
Tomcat-users.xml文件包含了所有Tomcat服务器的注册用户,其中有role(角色)、user(用户)两种信息。下面列举出这个XML文件的部分内容。
< xml version='1.0' encoding='utf-8' > <tomcat-users> <role rolename="Tomcat"/> <user username="Tomcat" password="Tomcat" roles="Tomcat,admin"/> </tomcat-users>
1.role节点 Tomcat中保存了一些用户权限,也就是角色,比如admin、Tomcat等。用户还可以自定义,通过""来注册一个角色。它只有rolename一个属性,通过这个属性可以把用户的权限进行分配。
2.User节点 这个数据项中包含了诸如用户名、用户密码、用户权限、用户说明等数据属性。 <user username="root" password="wudi" fullName="test" roles="admin,manager,role1,Tomcat"/> 这个语句建立了一个用户,用户名是"root",密码也是"root"。这个用户的全称是"test"。"root"这个用户拥有的权限是admin、manager、role1、Tomcat。 这些用户权限是Tomcat系统默认的。在这里有一些需要声明,Tomcat的系统管理员必须有admin的用户权限,否则无法登陆Tomcat的管理界面。