来源: http://www.qqread.com/java/2008/09/y428747.html
在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配置关键环节的详细说明: 1. **服务器配置**: - `server.xml`是Tomcat的主要配置文件,包含了端口设置...
5. **安全管理**:支持角色基础的访问控制(RBAC),可以设置不同用户的角色和权限,确保应用的安全性。此外,还支持SSL和TLS协议,为HTTP通信提供加密。 6. **连接器(Connector)**:Tomcat 6.0支持多种类型的...
- **配置权限**:在使用Tomcat自带的监控页面前,需要对`tomcat-users.xml`文件进行相应的配置,为特定用户分配管理权限。例如,可以设置一个具有“manager-gui”角色的用户,以便能够访问监控页面。 - **访问监控...
在开发过程中,开发者还需要了解如何部署Web应用、配置虚拟主机、管理用户权限、调整Tomcat性能参数等内容。Tomcat还提供了丰富的管理工具,如Manager App和Host Manager,帮助开发者管理和监控应用状态。 总的来说...
在 Terminal 中输入 sudo chmod 755 Library/Tomcat8/bin/*.sh 设置 Tomcat 的权限。 三、 Apache 服务器简介 Apache 服务器是一种普通服务器,本身只支持 HTML,即普通网页。通过插件支持 PHP,还可以与 Tomcat ...
4. **安全性**:Tomcat 7.0.79提供了安全管理器,可以通过`conf/tomcat-users.xml`配置用户角色和权限,支持基于角色的访问控制(RBAC)。此外,还可以配置SSL/TLS以加密通信,防止数据在传输过程中被窃取。 5. **...
虽然Tomcat本身是轻量级的,但它可以与重量级的应用服务器如JBoss、WebLogic等集成,利用它们的全面管理功能和企业级特性。 10. **监控与日志**: 使用`catalina.out`文件监控服务器输出,`logs`目录下的其他文件...
9. **集成其他Java EE组件**:尽管Tomcat本身仅支持Servlet和JSP,但可以与其他Java EE服务器(如JBoss或GlassFish)结合使用,通过例如Apache HttpClient或Jetty作为反向代理,实现对EJB、JMS等更复杂服务的支持。...
5. **管理工具**:`manager`应用允许用户通过Web界面管理部署的应用,而`admin`应用则提供了一些监控和管理服务器的工具,但这两个应用默认是关闭的,需要在配置文件中启用并设定管理权限。 6. **部署Web应用**:将...
- **硬盘空间**:Tomcat本身占用空间不大,但需要额外的空间来存放应用程序和日志文件,一般建议预留5GB以上的可用空间。 - **网络连接**:用于下载安装包和更新,以及远程访问Tomcat服务器。 #### 1.2 软件要求 - ...
2. **权限控制**:服务器可以通过Servlet完全控制对本地资源的访问,Servlet自身也可限制外部用户的访问。 3. **动态激活**:Servlet可以从本地或远程硬盘启动。 4. **动态调用**:Servlet Tag技术允许在HTML中动态...
2. 配置用户访问权限:在"CATALINA_HOME\conf\tomcat-users.xml"文件中,添加用户和角色,以实现登录控制和管理界面的访问权限。 三、启动与测试 1. 启动Tomcat:在命令行中输入“startup.bat”(在"CATALINA_HOME...
9. **与其他应用服务器的集成**:虽然Tomcat本身是轻量级的,但可以通过嵌入式部署的方式与其他重量级应用服务器如JBoss、WebLogic等集成,实现更复杂的Java EE功能。 总结来说,Apache Tomcat V6.0是一个高效、...
**标题解析:**“jsp实现...通过这个项目,初学者可以了解到Web应用开发的基本流程,学习到如何实现用户登录、权限验证、数据库操作以及如何组织和管理代码结构。这个实践项目是理解和掌握JSP及J2EE技术的良好起点。
7. **集成其他Java EE组件**:虽然Tomcat本身仅实现了Servlet和JSP,但可以与其他Java EE组件(如EJB容器、JMS服务器)一起使用,通过像Spring框架这样的工具实现完整的Java EE功能。 8. **社区支持**:Apache ...
- 虽然Tomcat本身不完全支持完整的Java EE平台,但可以通过添加如EJB容器(如OpenEJB)、JPA实现(如Hibernate)等第三方库来扩展其功能。 9. **版本更新** - 8.5.57版本修复了一些已知的安全漏洞和性能问题,...
4. **安全管理**:Tomcat支持多种安全机制,如用户认证、角色权限控制,这些在`conf/tomcat-users.xml`和`conf/server.xml`中的 Realm 配置中定义。 5. **JSP与Servlet**:Tomcat作为Servlet容器,处理HTTP请求,...
- 虽然Tomcat本身只实现了Servlet和JSP,但可以通过与其他开源项目(如Apache Maven、Spring Boot、JBoss AS等)集成,实现对完整Java EE规范的支持。 10. **社区支持**: - 作为开源项目,Apache Tomcat拥有庞大...
1. **用户认证**:通过`tomcat-users.xml`配置用户和角色,实现不同用户的权限管理。 2. **监控和日志**:利用Manager和Host Manager平台进行应用管理,同时通过配置`server.xml`中的`Valve`元素来记录详细的运行...
【标题】"jsp+tomcat开发的小论坛"揭示了这个项目是使用Java ...以上这些知识点都是基于JSP和Tomcat进行Web开发时可能涉及到的基础和进阶内容。通过学习和实践这个小论坛项目,开发者可以提升自己在这些领域的技能。