jsp:如何用密码保护jsp页面?

ufk*_*ufk 4 jsp tomcat password-protection

我想用一个需要输入的密码来保护jsp页面.

在apache中我可以为.htaccess添加密码文件,但我不知道如何在apache tomcat中执行此操作.

谢谢

Bal*_*usC 9

那么,您基本上想要在特定的JSP页面上放置HTTP BASIC身份验证吗?这是一步一步:

  1. 首先,您需要在中声明所需的角色名称,用户名和密码/conf/tomcat-users.xml.

    <tomcat-users>
        <role rolename="yourrole"/>
        <user username="yourname" password="yourpass" roles="yourrole" />
    </tomcat-users>
    
    Run Code Online (Sandbox Code Playgroud)

    (您可以根据需要追加任意数量<role><user>条目;如果已有条目,则只需将其添加到内部<tomcat-users>).

  2. 然后,您需要url-pattern在JSP文件的声明上声明所需的安全性约束以及登录配置BASIC(代表HTTP BASIC身份验证).

    <security-constraint>
        <web-resource-collection>
            <web-resource-name>A JSP page</web-resource-name>
            <url-pattern>/page.jsp</url-pattern>
        </web-resource-collection>
        <auth-constraint>
            <role-name>yourrole</role-name>
        </auth-constraint>
    </security-constraint>
    <login-config>
        <auth-method>BASIC</auth-method>
    </login-config>
    
    Run Code Online (Sandbox Code Playgroud)

    /page.jsp应与JSP页面的上下文相关的URL.本yourrole应该是一样的角色名在definied /conf/tomcat-users.xml.

重启服务器,在浏览器中打开JSP页面并使用yournameyourpass登录.