Spring Security3.0.1参考文档
来源:互联网 发布:有钱人的生活知乎 编辑:程序博客网 时间:2024/06/09 15:03
http://www.fengfly.com/document/springsecurity3/springsecurity.html
(官方3.2.3 英文API http://docs.spring.io/spring-security/site/docs/3.2.3.RELEASE/apidocs/)
- 序言
- I. 入门
- 1. 介绍
- 1.1. Spring Security是什么?
- 1.2. 历史
- 1.3. 发行版本号
- 1.4. 获得Spring Security
- 1.4.1. 项目模块
- 1.4.1.1. Core -
spring-security-core.jar
- 1.4.1.2. Web -
spring-security-web.jar
- 1.4.1.3. Config -
spring-security-config.jar
- 1.4.1.4. LDAP -
spring-security-ldap.jar
- 1.4.1.5. ACL -
spring-security-acl.jar
- 1.4.1.6. CAS -
spring-security-cas-client.jar
- 1.4.1.7. OpenID -
spring-security-openid.jar
- 1.4.1.1. Core -
- 1.4.2. 获得源代码
- 2. Security命名空间配置
- 2.1. 介绍
- 2.1.1. 命名空间的设计
- 2.2. 开始使用安全命名空间配置
- 2.2.1. 配置
web.xml
- 2.2.2. 最小
<http>
配置 - 2.2.2.1.
auto-config
包含了什么? - 2.2.2.2. 表单和基本登录选项
- 2.2.2.1.
- 2.2.3. 使用其他认证提供器
- 2.2.3.1. 添加一个密码编码器
- 2.2.1. 配置
- 2.3. 高级web特性
- 2.3.1. Remember-Me认证
- 2.3.2. 添加HTTP/HTTPS信道安全
- 2.3.3. 会话管理
- 2.3.3.1. 检测超时
- 2.3.3.2. 同步会话控制
- 2.3.3.3. 防止Session固定攻击
- 2.3.4. 对OpenID的支持
- 2.3.4.1. 属性交换
- 2.3.5. 添加你自己的filter
- 2.3.5.1. 设置自定义
AuthenticationEntryPoint
- 2.3.5.1. 设置自定义
- 2.4. 保护方法
- 2.4.1.
<global-method-security>
元素 - 2.4.1.1. 使用
protect-pointcut
添加安全切点
- 2.4.1.1. 使用
- 2.4.1.
- 2.5. 默认的AccessDecisionManager
- 2.5.1. 自定义AccessDecisionManager
- 2.6. 验证管理器和命名空间
- 3. 示例程序
- 3.1. Tutorial示例
- 3.2. Contacts
- 3.3. LDAP例子
- 3.4. CAS例子
- 3.5. Pre-Authentication例子
- 4. Spring Security社区
- 4.1. 任务跟踪
- 4.2. 成为参与者
- 4.3. 更多信息
- II. 结构和实现
- 5. 技术概述
- 5.1. 运行环境
- 5.2. 核心组件
- 5.2.1. SecurityContextHolder, SecurityContext 和 Authentication对象
- 5.2.1.1. 获得当前用户的信息
- 5.2.2. UserDetailsService
- 5.2.3. GrantedAuthority
- 5.2.4. 小结
- 5.3. 验证
- 5.3.1. 什么是Spring Security的验证呢?
- 5.3.2. 直接设置SecurityContextHolder的内容
- 5.4. 在web应用中验证
- 5.4.1. ExceptionTranslationFilter
- 5.4.2. AuthenticationEntryPoint
- 5.4.3. 验证机制
- 5.4.4. 在请求之间保存
SecurityContext
。
- 5.5. Spring Security中的访问控制(验证)
- 5.5.1. 安全和AOP建议
- 5.5.2. 安全对象和
AbstractSecurityInterceptor
- 5.5.2.1. 配置属性是什么?
- 5.5.2.2. RunAsManager
- 5.5.2.3. AfterInvocationManager
- 5.5.2.4. 扩展安全对象模型
- 5.6. 国际化
- 6. 核心服务
- 6.1. The
AuthenticationManager
,ProviderManager
和AuthenticationProvider
s - 6.1.1.
DaoAuthenticationProvider
- 6.1.1.
- 6.2.
UserDetailsService
实现 - 6.2.1. 内存认证
- 6.2.2.
JdbcDaoImpl
- 6.2.2.1. 权限分组
- 6.3. 密码加密
- 6.3.1. 什么是散列加密?
- 6.3.2. 为散列加点儿盐
- 6.3.3. 散列和认证
- 6.1. The
- III. web应用安全
- 7. 安全过滤器链
- 7.1.
DelegatingFilterProxy
- 7.2.
FilterChainProxy
- 7.2.1. 绕过过滤器链
- 7.3. 过滤器顺序
- 7.4. 使用其他过滤器 —— 基于框架
- 7.1.
- 8. 核心安全过滤器
- 8.1.
FilterSecurityInterceptor
- 8.2.
ExceptionTranslationFilter
- 8.2.1.
AuthenticationEntryPoint
- 8.2.2.
AccessDeniedHandler
- 8.2.1.
- 8.3.
SecurityContextPersistenceFilter
- 8.3.1.
SecurityContextRepository
- 8.3.1.
- 8.4.
UsernamePasswordAuthenticationFilter
- 8.4.1. 认证成功和失败的应用流程
- 8.1.
- 9. Basic(基本)和Digest(摘要)验证
- 9.1.
BasicAuthenticationFilter
- 9.1.1. 配置
- 9.2.
DigestAuthenticationFilter
- 9.2.1. Configuration
- 9.1.
- 10. Remember-Me认证
- 10.1. 概述
- 10.2. 简单基于散列标记的方法
- 10.3. 持久化标记方法
- 10.4. Remember-Me接口和实现
- 10.4.1. TokenBasedRememberMeServices
- 10.4.2. PersistentTokenBasedRememberMeServices
- 11. 会话管理
- 11.1. SessionManagementFilter
- 11.2.
SessionAuthenticationStrategy
- 11.3. 同步会话
- 12. 匿名认证
- 12.1. 概述
- 12.2. 配置
- 12.3.
AuthenticationTrustResolver
- IV. 授权
- 13. 验证架构
- 13.1. 验证
- 13.2. 处理预调用
- 13.2.1. AccessDecisionManager
- 13.2.2. 基于投票的AccessDecisionManager实现
- 13.2.2.1.
RoleVoter
- 13.2.2.2.
AuthenticatedVoter
- 13.2.2.3. Custom Voters
- 13.2.2.1.
- 13.3. 处理后决定
- 14. 安全对象实现
- 14.1. AOP联盟 (MethodInvocation) 安全拦截器
- 14.1.1. 精确的 MethodSecurityIterceptor 配置
- 14.2. AspectJ (JoinPoint) 安全拦截器
- 15. 基于表达式的权限控制
- 15.1. 概述
- 15.1.1. 常用内建表达式
- 15.2. Web 安全表达式
- 15.3. 方法安全表达式
- 15.3.1.
@Pre
和@Post
注解 - 15.3.1.1. 访问控制使用
@PreAuthorize
和@PostAuthorize
- 15.3.1.2. 过滤使用
@PreFilter
和@PostFilter
- 15.3.1.1. 访问控制使用
- 15.3.1.
- V. 高级话题
- 16. 领域对象安全(ACLs)
- 16.1. 概述
- 16.2. 关键概念
- 16.3. 开始
- 17. 预认证场景
- 17.1. 预认证框架类
- 17.1.1. AbstractPreAuthenticatedProcessingFilter
- 17.1.2. AbstractPreAuthenticatedAuthenticationDetailsSource
- 17.1.2.1. J2eeBasedPreAuthenticatedWebAuthenticationDetailsSource
- 17.1.3. PreAuthenticatedAuthenticationProvider
- 17.1.4. Http403ForbiddenEntryPoint
- 17.2. 具体实现
- 17.2.1. 请求头认证(Siteminder)
- 17.2.1.1. Siteminder示例配置
- 17.2.2. J2EE容器认证
- 18. LDAP认证
- 18.1. 综述
- 18.2. 在Spring Security里使用LDAP
- 18.3. 配置LDAP服务器
- 18.3.1. 使用嵌入测试服务器
- 18.3.2. 使用绑定认证
- 18.3.3. 读取授权
- 18.4. 实现类
- 18.4.1. LdapAuthenticator实现
- 18.4.1.1. 常用功能
- 18.4.1.2. BindAuthenticator
- 18.4.1.3. PasswordComparisonAuthenticator
- 18.4.1.4. 活动目录认证
- 18.4.2. 链接到LDAP服务器
- 18.4.3. LDAP搜索对象
- 18.4.3.1.
FilterBasedLdapUserSearch
- 18.4.3.1.
- 18.4.4. LdapAuthoritiesPopulator
- 18.4.5. Spring Bean配置
- 18.4.6. LDAP属性和自定义UserDetails
- 19. JSP标签库
- 19.1. 声明Taglib
- 19.2.
authorize
标签 - 19.3.
authentication
标签 - 19.4.
accesscontrollist
标签
- 20. Java认证和授权服务(JAAS)供应器
- 20.1. 概述
- 20.2. 配置
- 20.2.1. JAAS CallbackHandler
- 20.2.2. JAAS AuthorityGranter
- 21. CAS认证
- 21.1. 概述
- 21.2. CAS是如何工作的
- 21.3. 配置CAS客户端
- 22. X.509认证
- 22.1. 概述
- 22.2. 把X.509认证添加到你的web系统中
- 22.3. 为tomcat配置SSL
- 23. 替换验证身份
- 23.1. 概述
- 23.2. 配置
- A. 安全数据库表结构
- A.1. User表
- A.1.1. 组权限
- A.2. 持久登陆(Remember-Me)表
- A.3. ACL表
- A.3.1. Hypersonic SQL
- A.3.1.1. PostgreSQL
- B. 安全命名空间
- B.1. Web应用安全 -
<http>
元素 - B.1.1.
<http>
属性 - B.1.1.1.
servlet-api-provision
- B.1.1.2.
path-type
- B.1.1.3.
lowercase-comparisons
- B.1.1.4.
realm
- B.1.1.5.
entry-point-ref
- B.1.1.6.
access-decision-manager-ref
- B.1.1.7.
access-denied-page
- B.1.1.8.
once-per-request
- B.1.1.9.
create-session
- B.1.1.1.
- B.1.2.
<access-denied-handler>
- B.1.3.
<intercept-url>
元素 - B.1.3.1.
pattern
- B.1.3.2.
method
- B.1.3.3.
access
- B.1.3.4.
requires-channel
- B.1.3.5.
filters
- B.1.3.1.
- B.1.4.
<port-mappings>
元素 - B.1.5.
<form-login>
元素 - B.1.5.1.
login-page
- B.1.5.2.
login-processing-url
- B.1.5.3.
default-target-url
- B.1.5.4.
always-use-default-target
- B.1.5.5.
authentication-failure-url
- B.1.5.6.
authentication-success-handler-ref
- B.1.5.7.
authentication-failure-handler-ref
- B.1.5.1.
- B.1.6.
<http-basic>
元素 - B.1.7.
<remember-me>
元素 - B.1.7.1.
data-source-ref
- B.1.7.2.
token-repository-ref
- B.1.7.3.
services-ref
- B.1.7.4.
token-repository-ref
- B.1.7.5.
key
属性 - B.1.7.6.
token-validity-seconds
- B.1.7.7.
user-service-ref
- B.1.7.1.
- B.1.8.
<session-management>
元素 - B.1.8.1.
session-fixation-protection
- B.1.8.1.
- B.1.9.
<concurrent-control>
元素 - B.1.9.1.
max-sessions
属性 - B.1.9.2.
expired-url
属性 - B.1.9.3.
error-if-maximum-exceeded
属性 - B.1.9.4.
session-registry-alias
和session-registry-ref
属性
- B.1.9.1.
- B.1.10.
<anonymous>
元素 - B.1.11.
<x509>
元素 - B.1.11.1.
subject-principal-regex
属性 - B.1.11.2.
user-service-ref
属性
- B.1.11.1.
- B.1.12.
<openid-login>
元素 - B.1.13.
<logout>
元素 - B.1.13.1.
logout-url
属性 - B.1.13.2.
logout-success-url
属性 - B.1.13.3.
invalidate-session
属性
- B.1.13.1.
- B.1.14.
<custom-filter>
元素
- B.1.1.
- B.2. 认证服务
- B.2.1.
<authentication-manager>
元素 - B.2.1.1. <authentication-provider>元素
- B.2.1.2. 使用
<authentication-provider>
来引用一个AuthenticationProvider
Bean
- B.2.1.
- B.3. 方法安全
- B.3.1.
<global-method-security>
元素 - B.3.1.1.
secured-annotations
和jsr250-annotations
属性 - B.3.1.2. 安全方法使用
<protect-pointcut>
- B.3.1.3.
<after-invocation-provider>
元素
- B.3.1.1.
- B.3.2. LDAP命名空间选项
- B.3.2.1. 使用
<ldap-server>
元素定义LDAP服务器 - B.3.2.2.
<ldap-provider>
元素 - B.3.2.3.
<ldap-user-service>
元素
- B.3.2.1. 使用
- B.3.1.
- B.1. Web应用安全 -
0 0
- Spring Security3.0.1参考文档
- Spring security3.0的基本概念学习参考高手作品
- Spring MVC 参考文档
- Spring Security3
- Spring Security3
- Spring Security3
- Spring Security3
- Spring Security3
- Spring英文参考文档翻译
- Spring框架参考文档-目录
- Spring参考文档(4.3.2)
- spring-security3.*幾點體會
- Spring Security3 入门一
- Spring Security3 入门二
- 《Spring Security3》第一章
- spring security3 demo入门
- Spring Security3 实践
- 学习spring-Security3.0
- HTML5雨滴特效,晶莹剔透
- 如何编写一个完整的Linux命令
- CSDN自测题——C语言(MAY 04,2014)
- PRML阅读记(2)
- java常见异常说明汇总
- Spring Security3.0.1参考文档
- Android Framework 记录之二
- 0000-00-00时间格式
- STL中基本容器区别
- poj 1067 取石子游戏
- [2013山东ACM省赛] Alice and Bob
- c++ 面试一
- WKID对照表:Projected Coordinate Systems
- 个人整理的Linux Shell语法速查表(用C语言语法来作对比)