`
- 浏览:
251722 次
- 性别:
- 来自:
上海
-
<?xml version="1.0" encoding="UTF-8" ?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<!-- <import resource="classpath:hvp/spring/hibernate/orm/beans.xml"/>-->
<bean id="dataSource"
class="com.mchange.v2.c3p0.ComboPooledDataSource"
destroy-method="close">
<property name="driverClass" value="com.mysql.jdbc.Driver" />
<property name="jdbcUrl"
value="jdbc:mysql://127.0.0.1:3306/mydata" />
<property name="user" value="root" />
<property name="password" value="root" />
<property name="autoCommitOnClose" value="true" />
<property name="checkoutTimeout" value="5000" />
<property name="initialPoolSize" value="2" />
<property name="minPoolSize" value="2" />
<property name="maxPoolSize" value="4" />
<property name="maxIdleTime" value="25200" />
<property name="acquireIncrement" value="1800" />
<property name="maxIdleTimeExcessConnections" value="5" />
</bean>
<bean id="filterChainProxy"
class="org.acegisecurity.util.FilterChainProxy">
<property name="filterInvocationDefinitionSource">
<value>
CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
PATTERN_TYPE_APACHE_ANT
/**=authenticationProcessingFilter
</value>
</property>
</bean>
<bean id="authenticationProcessingFilter"
class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilter">
<property name="filterProcessesUrl"
value="/j_acegi_security_check" />
<property name="defaultTargetUrl" value="/main.jsp" />
<property name="authenticationFailureUrl"
value="/index.jsp?login_error=1" />
<property name="authenticationManager"
ref="authenticationManager" />
</bean>
<bean id="authenticationManager"
class="org.acegisecurity.providers.ProviderManager">
<property name="providers">
<list>
<ref local="daoAuthenticationProvider" />
</list>
</property>
</bean>
<bean id="daoAuthenticationProvider"
class="org.acegisecurity.providers.dao.DaoAuthenticationProvider">
<property name="userDetailsService" ref="userDetailsService" />
</bean>
<!-- -->
<bean id="userDetailsService" class="org.acegisecurity.userdetails.jdbc.JdbcDaoImpl">
<property name="dataSource" ref="dataSource" />
<property name="usersByUsernameQuery">
<value>SELECT username,password,status FROM t_user WHERE username=?</value>
</property>
<property name="authoritiesByUsernameQuery">
<value>SELECT u.username,p.priv_name FROM t_user u,t_user_priv p WHERE u.user_id=p.user_id and u.username=?</value>
</property>
</bean>
<!--
<bean id="userDetailsService"
class="org.acegisecurity.userdetails.memory.InMemoryDaoImpl">
<property name="userMap">
<value>
huyvanmin=huyvanmin,PRIV_COMMON,PRIV_1
huyvanpull=huyvanpull,PRIV_COMMON,PRIV_1,PRIV_2
huyvanlee=huyvanlee,disabled,PRIV_COMMON,PRIV_1
</value>
</property>
</bean>
-->
</beans>
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
在IT行业中,安全是至关重要的一个领域,特别是对于基于数据库的用户信息认证系统。Acegi Security是Spring Security的前身,它提供了一套强大的安全框架,用于保护Java Web应用程序。本篇将深入探讨如何利用Acegi ...
在“数据库版”中,可能包含如何配置和使用数据库存储用户信息、密码哈希和加密的方法,以确保用户凭证的安全存储。 3. **授权(Authorization)**: Acegi Security提供了基于角色的访问控制(RBAC),可以对URL...
- **身份验证(Authentication)**:Acegi 提供了多种身份验证机制,如基于密码的认证、LDAP认证等,确保只有合法用户能够访问系统资源。 - **授权(Authorization)**:Acegi 提供细粒度的权限控制,允许开发者...
`Authentication`处理的是用户身份验证,即验证用户的身份是否合法;`Authorization`则是关于用户权限的检查,决定用户是否可以访问特定的资源。 1. **认证过程**: - 用户尝试访问受保护的资源。 - Acegi拦截...
3. **SecurityContext**(安全上下文): 存储与当前执行线程相关的身份验证信息。它将被注入到各种安全拦截器中,以便于检查和执行授权逻辑。 4. **AuthenticationManager**(认证管理器): 负责处理用户的认证过程...
首先,Acegi Security(现已被Spring Security取代)是Spring框架的一个扩展,专门用于提供全面的安全解决方案,包括身份验证、授权和会话管理。Acegi的强大之处在于它能够无缝集成到Spring环境中,使得开发者可以...
通过这个"acegi 例子",开发者可以学习到如何在实际项目中实施安全机制,理解用户认证和授权的核心概念,以及如何根据需求灵活地配置数据库存储。它不仅演示了Acegi Security的功能,还提供了一个基础模板,可以帮助...
3. **数据库验证**:Acegi Security支持基于数据库的身份验证。它可以与数据库中的用户账户信息进行交互,验证用户的用户名和密码。这涉及到数据库查询,以及如何将这些查询与Acegi的认证过程整合。 4. **加密**:...
3. **认证提供者(Authentication Provider)**:具体实现认证逻辑,例如`DaoAuthenticationProvider`通过查询数据库来验证用户凭证。 4. **授权管理器(Authorization Manager)**:决定用户是否具有访问特定资源...
开发者还可以通过实现自定义的UserDetailsService接口来获取和验证用户信息,这使得AceGI能够与现有的用户存储系统(如数据库或LDAP)集成。 另外,AceGI提供了丰富的日志和审计功能,可以帮助开发者追踪和分析安全...
1. **身份验证**: Acegi提供了多种身份验证机制,如基于表单的登录、HTTP基本认证、X.509证书等。通过定义AuthenticationProvider,开发者可以自定义身份验证逻辑。 2. **访问控制**:Acegi允许开发者使用基于角色...
##### 3.2 基于数据库或 LDAP 进行身份认证 Acegi 支持多种用户认证机制,包括基于数据库和 LDAP 的认证方式。 - **数据库认证**:利用数据库存储用户信息和凭据,实现用户的认证。 - **LDAP 认证**:通过集成 ...
【标题】:“Acegi构建基于内存的用户信息认证之Http Basic认证(1)” Acegi Security是Spring框架早期的一个安全模块,它为Java Web应用程序提供了强大的安全性和认证机制。本篇将探讨如何利用Acegi Security实现...
1. **身份验证(Authentication)**:Acegi Security提供了多种身份验证机制,如基于数据库的用户名/密码验证,LDAP验证,甚至是X.509证书验证。它允许开发者灵活地定义认证流程,以便适应不同应用的需求。 2. **...
Acegi Security的身份验证机制允许开发者定义多种验证策略,如基于用户名和密码的数据库验证、LDAP验证或X.509证书验证。通过实现AuthenticationProvider接口,开发者可以自定义验证逻辑,确保只有合法用户才能登录...
在基于数据库的保护中,通常会将用户的权限信息存储在数据库中。这包括角色(Role)、权限(Permission)和用户角色关系。Acegi Security允许我们自定义认证和授权策略,以便与现有的数据库架构集成。 1. **配置...
它根据用户的身份认证信息和受保护资源的安全策略来决定用户是否有权限访问。例如,只有特定角色(如主管)的用户才能访问某些资源。访问决策管理器会检查这些条件,如果满足,用户就可以访问受保护的资源。 4. ...
- **基于数据库存储用户信息的身份认证**:适用于大型系统,用户信息存储在数据库中,更加可靠和可扩展。 #### 七、权限管理器 Acegi中的权限管理器主要负责控制用户的访问权限,包括: - **...
为了实现这些功能,Acegi与各种后端数据存储系统交互,如目录服务和关系数据库,这些存储系统通常用来保存用户的安全信息和访问控制策略。 Acegi的核心组件包括过滤器、管理器、提供者和处理程序: 1. **过滤器**...