JBoss Web 是 JBoss AS 服务器使用的 Servet contaner, 其实它是一个 Tomcat 的运行时,然后集成到了 JBoss AS 服务器中。 所以这里描述的安全性的实现同样适合于 Tomcat。
Servlet 容器启动的时候, 会针对 HTTP 协议启动一系列的 Acceptor 线程,当一个 HTTP 的请求发送到 Servet 容器的时候, 其中一个 Acceptor 线程会再次启动一个新的线程处理该请求。 在对该请求做了一些列的 pre/post 处理后, tomcat 会调用:
connector.getContainer().getPipeline().getFirst().invoke(request, response);
方法。
该方法会调用容器的 pipeline 的第一个 Valve 的 invoke() 方法, 基本上每个 valve 的实现都会考虑调用:
getNext().invoke(request, response);
这点和 HttpFilter 类似。
而 org.apache.catalina.authenticator.AuthenticatorBase 就是其中一个 valve,我们先看下这个 valve 都作了什么,然后看看它是如何加进当前的 pipeline 的。
首先它会检查当前请求里是否有 principal, 并且该 principal 是否有权限访问当前正在访问的资源, 如果没有, 那么会调用 authenticate 方法进行登录, 如果登录成功,调用 next valve 的 invoke 方法。
那这个 valve 是怎么加到当前的 pipeline 的呢? 当一个 war 部署的时候, 容器会分析 web.xml, 如果web.xml 里有 security-constraint 定义, 那么它会根据当前 login-config 里定义的 auth-method 为其分配一个 Authenticator。 它同时也是一个 Valve,其中 auth-method 一般取值为:
相关推荐
4. **安全管理**:JBoss Web 3.0.0可能包括了增强的安全特性,如JAAS(Java Authentication and Authorization Service)集成,提供用户认证和授权功能,以保护Web应用程序免受未经授权的访问。 5. **性能优化**:...
### JBoss安全性设置详解 #### 一、JMX控制台安全性配置 ...以上步骤详细介绍了如何针对JBoss AS中的JMX控制台和Web控制台进行安全性配置,通过这种方式可以有效地限制非授权用户的访问,提高系统的安全性。
总之,将WEB应用设置为JBoss的默认应用是一项涉及服务器配置和XML解析的任务,通过适当修改`jboss-web.xml`文件并正确部署,可以实现直接通过IP访问应用的目标。在实践中,务必遵循JBoss的官方文档和提供的指南,以...
- **高效共享企业数据**: 支持安全可靠的数据访问和交换。 #### 四、案例分析:Bodog.com 的成功经验 - **性能与可扩展性**: Carl Schmidt, Bodog.com 的 CTO 表示,JBoss Application Server (JBoss AS) 和 JBoss...
为了实现对jmx-console的访问控制,需要在`web.xml`文件中添加或启用安全约束。该文件位于`jmx-console.war`解压后的`WEB-INF`目录下。安全约束的添加主要涉及以下代码段: ```xml <web-resource-collection> ...
- **安全配置**:由于JBOSS提供了更多的安全特性,例如基于角色的访问控制,因此需要重新评估和配置应用的安全模型。 - **测试验证**:完成移植后,进行全面的功能性和性能测试,确保应用在新环境下能够稳定运行。 ...
当应用需要启用安全性时,可以通过在jboss.xml或jboss-web.xml等部署描述符中指定相应的安全性域。 以JMX控制台为例,这是一个可以全面管理JBoss服务器的工具,因此需要特别的保护。为了保护JMX控制台,我们需要在...
在JBoss的启动脚本中,通过修改`run.sh`或`run.bat`(视操作系统而定)可以实现JBoss服务的后台运行。这对于生产环境下的服务器尤其重要,因为这能够避免控制台输出占用过多资源,同时也能使系统的管理更为方便。 ...
Java Authentication and Authorization Service (JAAS) 是Java平台的标准安全框架,开发者可以通过配置JAAS来实现JBoss的安全控制。 七、JMS与消息传递 7.1 JBoss Messaging JBoss支持Java Message Service (JMS)...
在JBOSS这样的Java应用服务器中,实现EJB角色安全对于保护系统资源至关重要。 在基于JBOSS的EJB角色安全中,我们通常会遵循以下步骤: 1. **定义安全角色**:首先,需要定义应用程序中的安全角色,这些角色可以是...
总的来说,"springmvc4.2+mybatis3.0+jboss"这个项目组合提供了一种高效、可维护的Java Web开发方式,利用Spring MVC的MVC架构,MyBatis的数据持久层能力,以及JBoss的运行环境,共同构建出强大的企业级应用。
8. **安全管理**:具备用户认证和授权功能,支持JAAS(Java Authentication and Authorization Service),可实现基于角色的访问控制。 9. **热部署**:允许开发者在不中断服务的情况下更新部署的应用,提高了开发...
本文将详细介绍如何在JBoss应用服务器上部署Java Web Start应用程序,并利用Java Web Start技术实现客户端图形用户界面(GUI)的自动更新。Java Web Start技术不仅支持Windows环境,同时也适用于Linux、Unix(如...
8. **安全管理**:涵盖J2EE的安全模型,如角色、权限、认证和授权,以及在JBOSS中实现这些功能的配置。 9. **集群与高可用性**:讨论JBOSS集群的概念,如何设置负载均衡和故障转移,提高应用的可用性和可扩展性。 ...
6. **安全特性**:JBoss 4.2.3提供了基于角色的访问控制(RBAC)和认证机制,以确保只有授权的用户和应用程序可以访问服务器资源。它还支持LDAP(轻量级目录访问协议)集成,便于与企业身份管理系统配合使用。 7. *...
- **配置文件详解**:例如,jboss-service.xml文件定义了服务器启动时初始化的服务列表,包括命名服务客户端访问点、EJB客户端访问点、日志框架、安全框架以及事务管理器等。 #### HTTPS配置 - **HTTPS介绍与配置*...
在`{JBOSS_HOME}\server\default\deploy\jbossweb-tomcat50.sar`目录下的`server.xml`文件中,找到或添加一个用于HTTPS连接的Connector配置。例如: ```xml ${jboss.bind.address}" maxThreads="100" ...