`
ylj817
  • 浏览: 11187 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

设置tomcat页面设置访问权限(j_security_check)

 
阅读更多
在web应用中,对页面的访问控制通常通过程序来控制,流程为:
登录 -> 设置session -> 访问受限页面时检查session是否存在,如果不存在,禁止访问
对于较小型的web应用,可以通过tomcat内置的访问控制机制来实现权限控制。采用这种机制的好处是,程序中无需进行权限控制,完全通过对tomcat的配置即可完成访问控制。

为了在tomcat页面设置访问权限控制,在项目的WEB-INFO/web.xml文件中,进行如下设置:

<web-app>

<!--servlet等其他配置-->

<security-constraint>
  <web-resource-collection>
      <display-name>Example Security Constraint</display-name>
      <web-resource-name>My Test</web-resource-name>
  
      <url-pattern>/ddly/admin/*</url-pattern>
  </web-resource-collection>
 
<auth-constraint>
    <role-name>role1</role-name>
    <role-name>tomcat</role-name>
</auth-constraint>

</security-constraint>

<login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>My Test</realm-name>
</login-config>

</web-app>

其中,<url-pattern>中指定受限的url,可以使用通配符*,通常对整个目录进行访问权限控制。
<auth-constraint>中指定哪些角色可以访问<url-pattern>指定的url,在<role-name>中可以设置一个或多个角色名。

使用的角色名来自tomcat的配置文件${CATALINA_HOME}/conf/tomcat-users.xml。

<login-config>中设置登录方式,<auth-method>的取值为BASIC或FORM。如果为BASIC,浏览器在需要登录时弹出一个登录窗口。如果为FORM方式,需要指定登录页面和登录失败时的提示信息显示页面。

使用FORM方式的配置样例如下:

<login-config>
   <auth-method>FORM</auth-method>
   <realm-name>Example Form-Based Authentication Area</realm-name>
   <form-login-config>
      <form-login-page>/login.jsp</form-login-page>
      <form-error-page>/error.jsp</form-error-page>
   </form-login-config>
</login-config>


其中的<form-login-page>指定登录页面url,<form-error-page>指定登录失败时的提示页面url。
登录页面中,form的action,以及其中的用户名和密码两个参数的名称,都应取固定的值。登录的后台处理程序为j_security_check;用户名和密码的参数名称分别为:j_username和j_password。
如下是登录页面(如:login.jsp)的一段示例代码:

<form method="POST" action='<%= response.encodeURL("j_security_check") %>' >
  <table border="0" cellspacing="5">
    <tr>
      <th align="right">Username:</th>
      <td align="left"><input type="text" name="j_username"></td>
    </tr>
    <tr>
      <th align="right">Password:</th>
      <td align="left"><input type="password" name="j_password"></td>
    </tr>
    <tr>
      <td align="right"><input type="submit" value="Log In"></td>
      <td align="left"><input type="reset"></td>
    </tr>
  </table>
</form>
分享到:
评论

相关推荐

    tomcat守护程序,自启动.zip_tomcat 守护进程_tomcat 自启动_tomcat守护进程_tomcat自守护_守

    - 创建一个批处理文件(例如`tomcat_autostart.bat`),内容包括启动Tomcat的命令(`startup.bat`)和检查其是否运行的逻辑。如果Tomcat未运行,该脚本将重新启动它。 - 使用任务计划程序(Task Scheduler)将此...

    设置tomcat只允许域名访问

    设置tomcat只允许域名访问 设置tomcat只允许域名访问

    tomcat+mysql+jdk_jdk_tomcat+mysql+jdk脚本安装_Mysql+Tomcat+JDK_

    标题和描述提到的“tomcat+mysql+jdk脚本安装”表明这是一个自动化安装过程,通过脚本来一次性设置这些组件,便于快速搭建开发或生产环境。下面将详细解释这三个组件以及它们的相互作用。 1. JDK(Java Development...

    apache-tomcat-7.0.52_mirrorhem_tomcat_almost5fx_源码.zip

    在“apache-tomcat-7.0.52_mirrorhem_tomcat_almost5fx_源码.zip”这个压缩包中,我们可以期待找到以下关键组件和目录: 1. **bin**: 这个目录包含可执行脚本,用于启动、停止和管理Tomcat服务器。在Windows上,...

    tomcat9用户访问配置问题_403Access Denied 无法访问server、Manager、Host Manager

    - 在云服务器环境中,还需检查防火墙设置是否允许外部访问这些管理页面。 - 对于安全性较高的生产环境,建议不要开放所有IP地址对管理页面的访问权限,而是根据实际需求进行细粒度的权限控制。 - 定期更换管理界面的...

    JSP+Servlet+Tomcat应用开发从零开始学_完整版 PDF电子书下载 带书签目录

    JSP+Servlet+Tomcat应用开发从零开始学_完整版 PDF电子书下载 带书签目录JSP+Servlet+Tomcat应用开发从零开始学_完整版 PDF电子书下载 带书签目录JSP+Servlet+Tomcat应用开发从零开始学_完整版 PDF电子书下载 带书签...

    xalan-j_2_7_1-bin.zip

    《Xalan-J_2_7_1:解决Tomcat5与JDK1.6兼容性问题的利器》 Xalan-J_2_7_1是一个关键的Java库,主要用于XML到HTML、XSLT转换,它在处理XML文档时扮演着重要的角色。这个版本的发布,特别是针对"bin"格式的压缩包,...

    解决tomcat配置ssl错误的解决办法

    在 Tomcat 服务器中配置 SSL 加密连接是非常重要的,然而在 Tomcat 6.0.33 版本中,默认启用了 APR(APR 是通过 JNI 访问的可移植库,可以提高 Tomcat 的性能和伸缩性),这使得传统的 SSL 配置方式无法使用。...

    tomcat6.0.32_windows_64位_免安装版

    6. `work` 目录:存放Tomcat处理JSP页面时生成的临时文件。 7. `temp` 目录:Tomcat运行时产生的临时文件存放处。 8. `docs` 目录:包含Tomcat的API文档。 要运行Tomcat,你需要确保系统已经安装了Java Development...

    apache-tomcat-6.0.10.tar.gz_apache_apache安装包_tomcat6 un_unix tom

    配置Tomcat时,主要关注的是`conf/server.xml`文件,这是Tomcat的主要配置文件,包括端口号、服务器引擎设置、连接器配置以及默认的应用部署等信息。此外,还需要设置环境变量`CATALINA_HOME`指向Tomcat的安装目录,...

    拒绝访问异常处理(AccessDeniedException)_spring security例子

    拒绝访问异常处理(AccessDeniedException)_spring security例子 博客:blog.csdn.net/dsundsun

    tomcat7.0.54_windows_64位_免安装版

    在安全方面,Tomcat提供了基本的身份验证和授权机制,可以通过`conf/tomcat-users.xml`文件定义用户和角色,然后在应用的`WEB-INF/web.xml`中设置访问控制。此外,还可以通过SSL/TLS配置来启用HTTPS,提高通信的安全...

    Apache+Tomcat+mod_jk+mod_ssl配置笔记

    Apache、Tomcat、mod_jk和mod_ssl是构建高效、安全的Java web应用...这种架构允许灵活扩展,例如,通过增加更多的worker来添加更多Tomcat实例,以应对高并发访问。同时,HTTPS保护了用户的隐私,防止数据被中间人攻击。

    centOS7设置Tomcat8开机启动

    以下是如何在CentOS 7上设置Tomcat 8开机启动的详细步骤: 1. **配置Tomcat环境变量**: 首先,我们需要在Tomcat的`bin`目录下的`catalina.sh`文件中设置`JAVA_HOME`和`JRE_HOME`环境变量。打开`catalina.sh`,...

    tomcat_iis_connector工具

    标题 "tomcat_iis_connector工具" 提到的是一个用于整合IIS(Internet Information Services)、Tomcat和Apache服务器的工具,特别是在Windows Server环境下。这个工具的主要目的是实现这些不同Web服务器之间的协同...

    tomcat配置只能域名访问禁止ip访问

    tomcat配置只能域名访问禁止ip访问 直接替换tomcat里面的server.xml 文件,但是里面的ip要更换你自己的ip

    apache-tomcat-7.0.72(win_x86_modify)

    该版本是windows 32位的tomcat7,已对startup.bat 和shutdown.bat进行了修改,修改部分有注释,支持放到所需位置直接双击startup.bat开启服务器,只要修改端口号,无需设置环境变量,直接支持多个tomcat同时开启;...

    tomcat9 slf4j+log4j2 写日志.zip

    如果日志仍然没有生成,检查`log4j2.xml`配置文件是否有误,或者Tomcat的权限设置是否正确。 总之,配置Tomcat 9使用SLF4J和Log4j2进行日志记录是一个涉及依赖管理、日志配置文件设置和Tomcat自身配置的过程。通过...

    Linux 下 Tomcat安装(下载,解压,移动,配置TOMCAT_HOME)

    为了让系统能够全局识别Tomcat,需要设置`TOMCAT_HOME`环境变量。打开或创建`~/.bashrc`文件: ```bash nano ~/.bashrc ``` 在文件末尾添加: ```bash export TOMCAT_HOME=/opt/apache-tomcat-x.x.x export PATH=$...

    Tomcat 的安全方面设置 简单配置过程 说明

    &lt;form method="post" action="j_security_check"&gt; &lt;input type="text" name="j_username" placeholder="Username"&gt; &lt;input type="password" name="j_password" placeholder="Password"&gt; ``` ...

Global site tag (gtag.js) - Google Analytics