Spring Security(Spring安全框架)入门理解
来源:互联网 发布:组合软件 编辑:程序博客网 时间:2024/06/03 18:45
Security 使用场景:不同用户不同操作。如:企业员工管理系统。
Spring Security 框架,完全基于servlet过滤器标准,这个框架内部没有使用任何框架做基础,他只是管理HttpServletRequest和HttpServletResponse,不用关心请求来之什么浏览器或者Ajax。Security 已启动就包含一批负责安全管理的过滤器。
Web 应用的安全性包括用户认证和用户授权两部分,用户验证指的是可不可以访问本系统,需要提供账号密码,由系统来完成这个认证。用户授权指的是用户是否有权利执行某个操作。
下面使用的是 spring restful + My batis
添加一个过滤器,放到其它过滤器前面。Security 使用的是Servlet规范中标准的过滤器机制。过滤器是链条的方式来过滤。
<filter> <filter-name>springSecurityFilterChain</filter-name> <filter-class> org.springframework.web.filter.DelegatingFilterProxy </filter-class> </filter> <filter-mapping> <filter-name>springSecurityFilterChain</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
用户相关信息通过UserDetailsService 接口来加载的,该接口有一个唯一方法loadUserByUsername 用来加载相关信息,返回类型UserDetails。(Spring提供的有JdbcDaoImpl类来支持从数据库中加载用户信息,开发人员需要该类兼容的数据库表结构,就不需要任何改动,而直接使用该类) 我们用My Batis 连接数据库。
<bean id="configBean" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"><property name="locations"><list><value>classpath:database.properties</value></list></property></bean> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"destroy-method="close"><property name="driverClassName" value="${driver}" /><property name="url"value="${url}" /><property name="username" value="${username}" /><property name="password" value="${password}" /></bean> <context:annotation-config /><context:component-scan base-package="com.*" /><tx:annotation-driven /><!-- 事务管理器 --> <bean id="transactionManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="dataSource" /></bean> <!-- 创建SqlSessionFactory --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><property name="dataSource" ref="dataSource" /><property name="configLocation" value="classpath:mybatis-config.xml"/> <property name="typeAliasesPackage" value="com.entity" /> <property name="mapperLocations" value="classpath*:com/mapper/*.xml"/> </bean> <!-- 自动扫描映射器 --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"><property name="basePackage" value="com.mapper" /></bean> <!-- 注入 --> <bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate"><constructor-arg index="0" ref="sqlSessionFactory" /><constructor-arg index="1" value="BATCH" /> </bean>
配置URL模式访问权(Spring Security 2.0 和 3.0 配置有些差别,你需要注意)
<security:intercept-url pattern="/hello*" access="hasRole('ROLE_ADMIN','ROLE_USER')"/><security:intercept-url pattern="/auth/login" access="permitAll"/><security:intercept-url pattern="/main/admin" access="hasRole('ROLE_ADMIN')"/><security:intercept-url pattern="/main/common" access="hasRole('ROLE_USER')"/>hashRole这种格式 3.0以后有的,ROLE_* 这种验证时规定好的,后面的 用户名,你需要在方法中定义
上面说那么多主要就是脑袋里有个概念,下面是 案例,和 入门文档
http://download.csdn.net/detail/uniquelike/7633989
- Spring Security(Spring安全框架)入门理解
- Spring Security安全框架入门篇
- Spring Security 安全框架
- Spring安全框架 Spring Security
- Spring安全框架 Spring Security
- web安全框架Spring Security
- Spring security安全认证框架
- spring security 4 安全框架学习01
- SPRING-SECURITY安全Web框架配置
- 安全框架Shiro和Spring Security比较
- 安全框架Shiro和Spring Security比较
- 安全框架Shiro和Spring Security比较
- Spring安全权限管理(Spring Security)
- Spring安全权限管理(Spring Security)
- Spring安全权限管理(Spring Security) .
- Spring安全权限管理(Spring Security)
- Spring安全权限管理(Spring Security)
- Spring安全权限管理(Spring Security)
- HDU 4308 Saving Princess claire_
- Kettle中求两个记录集的差集
- 智慧商城类APP该如何开发和运营
- 外键检查 关闭与开启
- 【菜鸟学编程系列】GitHub超详细图文攻略 - Git客户端下载安装 GitHub提交修改源码工作流程 Git分支 标签 过滤 Git版本工作流
- Spring Security(Spring安全框架)入门理解
- Lua的协同程序
- 20140714 「初等数论 - 拓展欧几里得+同余模方程」POJ 1061 青蛙的约会
- 分类小计
- 苹果iOS 7后台机制解析
- NET:Checkboxlist,Dropdownlist 添加ToolTip说明
- activeMQ 资料
- 揭秘QQ 安全密码框的原理
- lnmp -一键安装完成信息