`
zybing
  • 浏览: 455969 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

通过tomcat本身的用户管理进行页面权限设置

阅读更多

来源: http://www.qqread.com/java/2008/09/y428747.html

 

 

为tomcat页面设置访问权限

巧巧读书 2008-09-04 中国IT实验室 佚名 技术论坛

    在web应用中,对页面的访问控制通常通过程序来控制,流程为:登录 -> 设置session -> 访问受限页面时检查session是否存在,如果不存在,禁止访问

    对于较小型的web应用,可以通过tomcat内置的访问控制机制来实现权限控制。采用这种机制的好处是,程序中无需进行权限控制,完全通过对tomcat的配置即可完成访问控制。

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

<!--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配置大全 tomcat配置大全

    配置Tomcat涉及多个方面,包括服务器的基本设置、部署应用、日志管理、安全性、性能优化等。以下是对Tomcat配置关键环节的详细说明: 1. **服务器配置**: - `server.xml`是Tomcat的主要配置文件,包含了端口设置...

    tomcat6.0通用版本

    5. **安全管理**:支持角色基础的访问控制(RBAC),可以设置不同用户的角色和权限,确保应用的安全性。此外,还支持SSL和TLS协议,为HTTP通信提供加密。 6. **连接器(Connector)**:Tomcat 6.0支持多种类型的...

    tomcat优化调优文档

    - **配置权限**:在使用Tomcat自带的监控页面前,需要对`tomcat-users.xml`文件进行相应的配置,为特定用户分配管理权限。例如,可以设置一个具有“manager-gui”角色的用户,以便能够访问监控页面。 - **访问监控...

    tomcat7、tomcat6 32位以及64位

    在开发过程中,开发者还需要了解如何部署Web应用、配置虚拟主机、管理用户权限、调整Tomcat性能参数等内容。Tomcat还提供了丰富的管理工具,如Manager App和Host Manager,帮助开发者管理和监控应用状态。 总的来说...

    Mac系统中Apache Tomcat安装配置.docx

    在 Terminal 中输入 sudo chmod 755 Library/Tomcat8/bin/*.sh 设置 Tomcat 的权限。 三、 Apache 服务器简介 Apache 服务器是一种普通服务器,本身只支持 HTML,即普通网页。通过插件支持 PHP,还可以与 Tomcat ...

    apache-tomcat-7.0.79

    4. **安全性**:Tomcat 7.0.79提供了安全管理器,可以通过`conf/tomcat-users.xml`配置用户角色和权限,支持基于角色的访问控制(RBAC)。此外,还可以配置SSL/TLS以加密通信,防止数据在传输过程中被窃取。 5. **...

    tomcat7.0免安装版

    虽然Tomcat本身是轻量级的,但它可以与重量级的应用服务器如JBoss、WebLogic等集成,利用它们的全面管理功能和企业级特性。 10. **监控与日志**: 使用`catalina.out`文件监控服务器输出,`logs`目录下的其他文件...

    apache-tomcat-5.5.30

    9. **集成其他Java EE组件**:尽管Tomcat本身仅支持Servlet和JSP,但可以与其他Java EE服务器(如JBoss或GlassFish)结合使用,通过例如Apache HttpClient或Jetty作为反向代理,实现对EJB、JMS等更复杂服务的支持。...

    tomcat8.0(免安装版)

    5. **管理工具**:`manager`应用允许用户通过Web界面管理部署的应用,而`admin`应用则提供了一些监控和管理服务器的工具,但这两个应用默认是关闭的,需要在配置文件中启用并设定管理权限。 6. **部署Web应用**:将...

    LINUX6.1 64bit Tomcat6.0安装手ce

    - **硬盘空间**:Tomcat本身占用空间不大,但需要额外的空间来存放应用程序和日志文件,一般建议预留5GB以上的可用空间。 - **网络连接**:用于下载安装包和更新,以及远程访问Tomcat服务器。 #### 1.2 软件要求 - ...

    tomcat_8.5_win_64.rar

    2. 配置用户访问权限:在"CATALINA_HOME\conf\tomcat-users.xml"文件中,添加用户和角色,以实现登录控制和管理界面的访问权限。 三、启动与测试 1. 启动Tomcat:在命令行中输入“startup.bat”(在"CATALINA_HOME...

    Apache Tomcat V6.0

    9. **与其他应用服务器的集成**:虽然Tomcat本身是轻量级的,但可以通过嵌入式部署的方式与其他重量级应用服务器如JBoss、WebLogic等集成,实现更复杂的Java EE功能。 总结来说,Apache Tomcat V6.0是一个高效、...

    jsp实现基本权限管理系统

    **标题解析:**“jsp实现...通过这个项目,初学者可以了解到Web应用开发的基本流程,学习到如何实现用户登录、权限验证、数据库操作以及如何组织和管理代码结构。这个实践项目是理解和掌握JSP及J2EE技术的良好起点。

    apache-tomcat-8.5.65

    7. **集成其他Java EE组件**:虽然Tomcat本身仅实现了Servlet和JSP,但可以与其他Java EE组件(如EJB容器、JMS服务器)一起使用,通过像Spring框架这样的工具实现完整的Java EE功能。 8. **社区支持**:Apache ...

    apache-tomcat-8.5.57.rar

    - 虽然Tomcat本身不完全支持完整的Java EE平台,但可以通过添加如EJB容器(如OpenEJB)、JPA实现(如Hibernate)等第三方库来扩展其功能。 9. **版本更新** - 8.5.57版本修复了一些已知的安全漏洞和性能问题,...

    apache-tomcat-8.5.12-windows-x86

    4. **安全管理**:Tomcat支持多种安全机制,如用户认证、角色权限控制,这些在`conf/tomcat-users.xml`和`conf/server.xml`中的 Realm 配置中定义。 5. **JSP与Servlet**:Tomcat作为Servlet容器,处理HTTP请求,...

    Apache_Tomcat7.0.70

    - 虽然Tomcat本身只实现了Servlet和JSP,但可以通过与其他开源项目(如Apache Maven、Spring Boot、JBoss AS等)集成,实现对完整Java EE规范的支持。 10. **社区支持**: - 作为开源项目,Apache Tomcat拥有庞大...

    tomcat6学习笔记【原创】

    1. **用户认证**:通过`tomcat-users.xml`配置用户和角色,实现不同用户的权限管理。 2. **监控和日志**:利用Manager和Host Manager平台进行应用管理,同时通过配置`server.xml`中的`Valve`元素来记录详细的运行...

    jsp+tomcat开发的小论坛

    【标题】"jsp+tomcat开发的小论坛"揭示了这个项目是使用Java ...以上这些知识点都是基于JSP和Tomcat进行Web开发时可能涉及到的基础和进阶内容。通过学习和实践这个小论坛项目,开发者可以提升自己在这些领域的技能。

Global site tag (gtag.js) - Google Analytics