Tomcat配置登录拦截功能

Tomcat 设置登录验证

如果项目较小,设置简单的登录验证,可以通过tomcat设置登录功能,做到简单的项目拦截。

添加登录验证后,访问项目的tomcat拦截的弹框如下:

Tomcat配置登录拦截功能_第1张图片

这里是将我的项目放到了tomcat/webapps/ROOT下了,这是tomcat访问默认路径,不需要加项目名,即可访问。

配置的步骤如下:

1.首先在tomcat/conf/tomcat-users.xml文件中,打开后找到如下内容:

Tomcat配置登录拦截功能_第2张图片

2.登录的账号密码即配置在这里,默认是注释状态,复制出来一个,设置一个用户名和密码都为admin的账户,如下配置:

Tomcat配置登录拦截功能_第3张图片
  注意一定要配一个角色,这个我试过,如果不配置 就会出错,其中rolename对应的名字是随便起的,但是必须要在它下边的user标签中,roles属性里含有它才可以。

3.然后到项目的位置,找到WEB-INF/web.xml文件,我将我项目放到了tomcat/webapps/ROOT里,结构如下:

Tomcat配置登录拦截功能_第4张图片

4.打开这个web.xml文件,配置前页面如下:


<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
    
    <welcome-file-list>
        <welcome-file>views/index.jspwelcome-file>
    welcome-file-list>

web-app>
  添加配置后如下:

<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
    
    <welcome-file-list>
        <welcome-file>views/index.jspwelcome-file>
    welcome-file-list>

    
    <security-constraint>
        <web-resource-collection>
            <display-name>Example Security Constraintdisplay-name>
            <web-resource-name>My Testweb-resource-name>
            
            <url-pattern>/*url-pattern>
        web-resource-collection>
        <auth-constraint>
           
           <role-name>tomcatrole-name>
        auth-constraint>
    security-constraint>

    <login-config>
        
        <auth-method>BASICauth-method>
        <realm-name>My Testrealm-name>
    login-config>
web-app>

5.配置完成后,启动tomcat,访问项目,输入账号密码

Tomcat配置登录拦截功能_第5张图片

Tomcat配置登录拦截功能_第6张图片

6.如果输错密码,或者配置错误,即会出现下面的错误:

Tomcat配置登录拦截功能_第7张图片

你可能感兴趣的:(java,后端)