- Spring Security
11个步骤为应用程序添加安全防护 - 历史与现状
自2003年出现的Spring扩展插件Acegi Security发展而来。
目前最新版本为3.x,已成为Spring的一部分。
为J2EE企业应用程序提供可靠的安全性服务。 - Authentication vs. Authorization
区分概念验证与授权
验证
这个用户是谁?
用户身份可靠吗?
授权
某用户A是否可以访问资源R
某用户A是否可以执行M操作
某用户A是否可以对资源R执行M操作 - SS中的验证特点
支持多种验证方式
支持多种加密格式
支持组件的扩展和替换
可以本地化输出信息 - SS中的授权特点
支持多种仲裁方式
支持组件的扩展和替换
支持对页面访问、方法访问、对象访问的授权。 - SS核心安全实现
Web安全
通过配置Servlet Filter激活SS中的过滤器链
实现Session一致性验证
实现免登陆验证(Remember-Me验证)
提供一系列标签库进行页面元素的安全控制
方法安全
通过AOP模式实现安全代理
Web安全与方法安全均可以使用表达式语言定义访问规则 - 配置SS
配置Web.xml,应用安全过滤器
配置Spring,验证与授权部分
在web页面中获取用户身份
在web页面中应用安全标签库
实现方法级安全 - 1:配置web.xml
<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> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring.xml</param-value> </context-param> <listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener>
- 2:Spring配置文件中设置命名空间
- 3:配置最基本的验证与授权
- 4:通过数据库验证用户身份
- 5:完善web页面验证规则
- 6:自定义验证配置
- 7:本地化消息输出
拷贝本地化资源文件后,在配置文件中加载该文件:
- 8:在web页面中获取用户信息
- 9:在web页面进行元素安全控制
- 10:全局方法安全控制
- 11:使用注解进行方法安全控制
- 12:下一步做什么???
采用更安全的验证方式
采用安全的数据传输方式
实现动态授权
自定义验证与授权部件
实现数据级安全
Spring Security 3应用的11个步骤
最新推荐文章于 2022-08-10 18:01:00 发布