使用tomcat配置角色验证需要该两个文件,web.xml(至于到底是conf下的web.xml或者是自建项目目录下的web.xml下配置,我试验过了,都可以)和tomcat-users.xml。
tomcat-users.xml添加
<role rolename="admin"/> <user username="iteye" password="198666" roles="admin"/>
web.xml的<web-app></web-app>之间加入
<security-constraint> <display-name>Example Security Constraint</display-name> <web-resource-collection> <web-resource-name>Protected Area</web-resource-name> <url-pattern>/security/security.jsp</url-pattern> </web-resource-collection> <auth-constraint> <role-name>admin</role-name> </auth-constraint> </security-constraint> <login-config> <auth-method>BASIC</auth-method> <realm-name>Hello,this realm need a authentication</realm-name> </login-config> <security-role> <role-name>admin</role-name> </security-role>
问题就出在tomcat-users.xml里的<url-pattern></url-pattern>,经过试验发现验证页面只能存在于文件夹中,例如security/security.jsp或者security/*,而不能单独存在于项目目录中。