没有合适的资源?快使用搜索试试~ 我知道了~
首页Spring Security 参考手册_Spring Security中文版.pdf
一个能够为基于Spring的企业应用系统提供声明式的安全訪问控制解决方式的安全框架(简单说是对访问权限进行控制嘛),应用的安全性包括用户认证(Authentication)和用户授权(Authorization)两个部分。用户认证指的是验证某个用户是否为系统中的合法主体,也就是说用户能否访问该系统。用户认证一般要求用户提供用户名和密码。系统通过校验用户名和密码来完成认证过程。用户授权指的是验证某个用户是否有权限执行某个操作。在一个系统中,不同用户所具有的权限是不同的。比如对一个文件来说,有的用户只能进行读取,而有的用户可以进行修改。一般来说,系统会为不同的用户分配不同的角色,而每个角色则对应一系列的权限。 spring security的主要核心功能为 认证和授权,所有的架构也是基于这两个核心功能去实现的。
资源详情
资源评论
资源推荐
Spring Security
参
考
手
册
Ben Alex⋅Luke Taylor⋅Rob Winch⋅Gunnar Hillert
Table of Contents
前
言
入
门
简
介
Spring Security
是
什么
?
历史
发
布
版
本
号
Getting Spring Security
Spring Security 4.1
新
特
性
Java
配
置
提
升
Web
应
用
程
序
安
全
性
提
升
授
权
改
进
密
码
模
块
的
改
进
测
试
的
改
进
一
般
的
改
进
样
品和
指
南
(Start Here)
Java
配
置
基
础的
网
站
安
全
java
配
置
HttpSecurity
Java
配
置
和
表
单
登
录
验
证请
求
处
理
登
出
验
证
多
个
HttpSecurity
方
法
安
全
已
配
置
对
象
的
后
续
处
理
安
全
命名
空
间
配
置
简
介
开
始
使
用
安
全
命名
空
间
配
置
高
级
web
功
能
方
法
安
全
默
认
的
AccessDecisionManager
验
证
管
理
器
和命名
空
间
应
用
程
序
示
例
Tutorial
示
例
Contacts
示
例
LDAP
示
例
OpenID
示
例
CAS
示
例
JAAS
示
例
Pre-Authentication
示
例
Spring Security
社
区
问题
跟踪
成
为
参
与
者
更
多
信
息
架构
与
实
现
技
术
概
述
运
行
环
境
核
心
组
件
验
证
在
Web
应
用
程
序
中
的
身
份
验
证
Spring Security
的
访
问
控
制
(
授
权
)
Localization
核
心
服
务
The AuthenticationManager, ProviderManager and AuthenticationProvider
UserDetailsService
实
现
Password Encoding
Testing
Testing Method Security
Security Test Setup
@WithMockUser
@WithAnonymousUser
@WithUserDetails
@WithSecurityContext
Test Meta Annotations
Spring MVC Test Integration
Setting Up MockMvc and Spring Security
SecurityMockMvcRequestPostProcessors
SecurityMockMvcRequestBuilders
SecurityMockMvcResultMatchers
Web
应
用
程
序
的
安
全
性
The Security Filter Chain
DelegatingFilterProxy
FilterChainProxy
Filter Ordering
Request Matching and HttpFirewall
与
其
它
过
滤
器
-
基
于
框架
使
用
高
级
的
命名
空
间
配
置
核
心
安
全
过
滤
器
FilterSecurityInterceptor
ExceptionTranslationFilter
SecurityContextPersistenceFilter
UsernamePasswordAuthenticationFilter
Servlet API
的
集
成
Servlet 2.5+
集
成
Servlet 3+
集
成
Servlet 3.1+
集
成
Basic
和
Digest
认证
BasicAuthenticationFilter
DigestAuthenticationFilter
Remember-Me Authentication
Overview
Simple Hash-Based Token Approach
Persistent Token Approach
Remember-Me
的
接
口和
实
现
Cross Site Request Forgery (CSRF)
CSRF
攻
击
同
步
器
标
记
模
式
何
时
使
用
CSRF
保
护
Using Spring Security CSRF Protection
CSRF
警
告
重
写
默
认
值
CORS
安
全
HTTP
响
应
头
默
认
的
安
全
头
Custom Headers
会
话
管
理
会
话
管
理
过
滤
器
会
话
的
身
份
验
证
策
略
并
发
控
制
匿名
身
份
验
证
概
述
配
置
验
证
信任
解
析
器
WebSocket Security
WebSocket Con
fi
guration
WebSocket Authentication
WebSocket Authorization
Enforcing Same Origin Policy
Working with SockJS
授
权
授
权
体
系结
构
授
权
Pre-Invocation
处
理
访
问
决
策管
理
器
调
用
处
理
层
次
的
角
色
安
全
对
象
的
实
现
AOP
联
盟
(
方
法
调
用
)
安
全
拦截
器
AspectJ(
连
接
点
)
安
全
拦截
器
表
达
式
的
访
问
控
制
概
述
Web Security Expressions
Method Security Expressions
额
外
的
话
题
域
对
象
的
安
全
(acl)
概
述
关
键
概
念
开
始
Pre-Authentication
场
景
Pre-Authentication
框架
类
具
体
实
现
LDAP
身
份
验
证
概
述
使
用
LDAP Spring Security
配
置
LDAP
服
务
器
实
现
类
活
动
目
录
的
认证
JSP
标
签
库
宣布
Taglib
授
权标
签
身
份
验
证
标
记
The accesscontrollist Tag
csrfInput
标
签
csrfMetaTags
标
签
Java Authentication and Authorization Service (JAAS) Provider
概
述
Jaas
远
程
准入
Provider
摘
要
默
认
Jaas
身
份
验
证
提
供
Jaas Provider
准入
项
目
运
行
CAS
身
份
验
证
Overview
CAS
如
何
工
作
配
置
客
户
案
件
X.509 Authentication
概
述
增
加
X.509
认证
您
的
Web
应
用
程
序
在
Tomcat
中
设
置
SSL
run - as
验
证
替
换
概
述
Con
fi
guration
Spring Security Crypto
模
块
引
言
加
密
器
keygenerators
passwordencoders
并
发
支
持
DelegatingSecurityContextRunnable
DelegatingSecurityContextExecutor
Spring Security Concurrency
并
发
类
Spring MVC
整
合
@EnableWebMvcSecurity
MvcRequestMatcher
@AuthenticationPrincipal
Spring MVC
异
步
集
成
Spring MVC
和
CSRF
整
合
Spring Data
整
合
Spring
数据
& Spring
安
全
配
置
安
全
的
表
达
@Query
Appendix
安
全
数据
库
模
式
用
户
模
式
持
续
登
录
(
记
住
我
) Schema
ACL Schema
安
全
空
间
Web
应
用
安
全
WebSocket
安
全
认证
服
务
方
法
安
全
性
LDAP
命名
空
间
选
项
Spring Security
依
赖
关
系
spring-security-core
spring-security-remoting
spring-security-web
spring-security-ldap
spring-security-con
fi
g
spring-security-acl
spring-security-cas
spring-security-openid
spring-security-taglibs
Spring security 是一个强大的和高度可定制的身份验证和访问控制框架。它是确保基于Spring的应用程序的标准。
前
言
Spring Security 为基于javaEE的企业应用程序提供一个全面的解决方案。正如你将从这个参考指南发现的,我们试图为你提供一个有用的并
且高度可配置的安全系统。
安全是一个不断移动的目标,采取一个全面的全系统的方法很重要。在安全领域,我们鼓励你采取"layers of security"(安全层),这样每一层尽
可能的在自己范围内诶保证安全,连续的层提供额外的安全性。安全层更密集你的程序将更加健壮更加安全。在最底层,你需要处理传输安
全和系统识别这些问题,以减少中间人攻击。接下来,你讲通常利用防火墙,或许使用VPN或者IP担保以确保只有授权的系统能够尝试连
接。在企业环境中你可以部署一个DMZ将面向公众的服务器和数据库以及应用服务器分隔开来。你的操作系统也将扮演重要的部分,解决
问题,类似,使用非特权用户运行进程和提高文件系统安全性。操作系统通常会配置自己的防火墙。但愿在某处前进的道路上,你会试图阻
止拒绝服务和暴力攻击。一个入侵检测系统将在监视和相应攻击时非常有用,这种系统能采取保护动作,比如实时阻断违规的TCP/IP地址。
在更高的层,你的java虚拟机希望被配置为尽量减少不同的java类型授予的权限,然后将你的应用程序增加到器自身的制定域特定的安全配
置。Spring Security 使后者 ,应用程序将更加安全更加容易。
当然你需要妥善处理上面提到的所有安全层,连同各层的管理因素。这样的管理因素答题包括安全公告监测、补丁、人员审查、审计、变更
控制、工程管理系统、数据备份、灾难恢复、性能基准测试、负载监控、集中式日志记录、事件相应程序等。
Spring Secruity 致力于在企业应用程序安全层对你进行帮助,你会发现这里有如此不同的需求正如业务问题的领域。一个银行应用程序具有
与电子商务应用不同的需求。电子商务应用程序同企业销售自订花工具具有不同的需求。这些定制需求使得应用安全有趣、有挑战性和有回
报。
请阅读入门第二部分, 从“入门”开始。 这一章将为你介绍的框架和基于命名空间的配置系统,你可以配置好应用,来了解Spring Security 如何
工作和一些你可能 需要使用的类 。你需要阅读 架构与实现。本指南的其余部分是更传统的引用样式结构,设计用于按需进行阅读。我们也
建议你尽可能于都完一般的应用安全问题。Spring Secruity 不是万能的,不能解决所有的安全问题。重要的实在应用设计开始之初就考虑到
安全性。后期改造不是一个好的主意。特别是,如果你正在构件一个Web应用程序,你应该知道许多潜在的漏洞,比如跨站脚本、请求伪造
和会话劫持。这些你一开始就应该考虑。这个网站 (http://www.owasp.org/) 维护了一个大网站应用漏洞列表和一些有用的参考信息。
我希望这个参考手册对你来说比较有用,欢迎你的反馈和建议。 suggestions.
最后欢迎你来到Spring Security 社区。 community.
入
门
本指南的稍后张杰会对框架的架构和实现类进行一个深度的讨论,如果你的相对Spring Security进行一个深度定制没这一章节将会包含你需要
了解的内容。在本章我们将会介绍Spring Security 3.0 给项目的历史进行简要的概述,简单的讲讲如何开始使用设个框架。尤其是我们将看看
命名空间配置,他提供与传统Spring Bean你必须连接所有实现类的途径更简单的方式保护你的应用程序。
我们也会看看实例应用。在你阅读后面的章节之前你指的试着运行体验它。当时你对框架连接更多的时候你还可以汇过来回顾一下。 project
website (http://spring.io/spring-security) 同时请参阅项目的网站,因为他有创建这个项目的有用的信息,以及文章、视频和教程。
简
介
Spring Security
是
什么
?
Spring Security 提供了基于javaEE的企业应有个你软件全面的安全服务。这里特别强调支持使用SPring框架构件的项目,Spring框架是企业软
件开发javaEE方案的领导者。如果你还没有使用Spring来开发企业应用程序,我们热忱的鼓励你仔细的看一看。熟悉Spring特别是一来注入原
理两帮助你更快更方便的使用Spring Security。
人们使用Spring Secruity的原因有很多,单大部分都发现了javaEE的Servlet规范或EJB规范中的安全功能缺乏典型企业应用场景所需的深度。
提到这些规范,重要的是要认识到他们在WAR或EAR级别无法移植。因此如果你更换服务器环境,这里有典型的大量工作去重新配置你的应
用程序员安全到新的目标环境。使用Spring Security 解决了这些问题,也为你提供许多其他有用的,可定制的安全功能。
正如你可能知道的两个应用程序的两个主要区域是“认证”和“授权”(或者访问控制)。这两个主要区域是Spring Security 的两个目标。“认
证”,是建立一个他声明的主题的过程(一个“主体”一般是指用户,设备或一些可以在你的应用程序中执行动作的其他系统)。“授权”指确定
一个主体是否允许在你的应用程序执行一个动作的过程。为了抵达需要授权的店,主体的身份已经有认证过程建立。这个概念是通用的而不
只在Spring Security中。
在身份验证层,Spring Security 的支持多种认证模式。这些验证绝大多数都是要么由第三方提供,或由相关的标准组织,如互联网工程任务
组开发。另外Spring Security 提供自己的一组认证功能。具体而言,Spring Security 目前支持所有这些技术集成的身份验证:
HTTP BASIC 认证头 (基于 IETF RFC-based 标准)
HTTP Digest 认证头 ( IETF RFC-based 标准)
HTTP X.509 客户端证书交换 ( IETF RFC-based 标准)
LDAP (一个非常常见的方法来跨平台认证需要, 尤其是在大型环境)
Form-based authentication (用于简单的用户界面)
OpenID 认证
Authentication based on pre-established request headers (such as Computer Associates Siteminder) 根据预先建立的请求有进行验证
JA-SIG Central Authentication Service (CAS,一个开源的SSO系统 )
Transparent authentication context propagation for Remote Method Invocation (RMI) and HttpInvoker (Spring远程协议)
Automatic "remember-me" authentication (你可以勾选一个框以避免预定的时间段再认证)
Anonymous authentication (让每一个未经验证的访问自动假设为一个特定的安全标识)
Run-as authentication (在一个访问应该使用不同的安全标识时非常有用)
Java Authentication and Authorization Service (JAAS)
JEE container autentication (所以如果愿你以可以任然使用容器管理的认证)
Kerberos
Java Open Source Single Sign On (JOSSO) *
OpenNMS Network Management Platform *
AppFuse *
AndroMDA *
Mule ESB *
Direct Web Request (DWR) *
Grails *
Tapestry *
JTrac *
Jasypt *
Roller *
Elastic Path *
Atlassian Crowd *
Your own authentication systems (see below)
表示由第三方提供
很多独立软件供应商,因为灵活的身份验证模式二选择Spring Security。这样做允许他们快速的集成到他们的终端客户需求的解决方案而不用
进行大量工程或者改变客户的环境。如果上面的验证机制不符合你的需求,Spring Security 是一个开放的平台,要实现你 自己的验证机制检
查。Spring Security 的许多企业用户需要与不遵循任何安全标准的“遗留”系统集成,Spring Security可以很好的与这类系统集成。
剩余128页未读,继续阅读
大浪淘沙
- 粉丝: 5
- 资源: 26
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- 2022年中国足球球迷营销价值报告.pdf
- 房地产培训 -营销总每天在干嘛.pptx
- 黄色简约实用介绍_汇报PPT模板.pptx
- 嵌入式系统原理及应用:第三章 ARM编程简介_3.pdf
- 多媒体应用系统.pptx
- 黄灰配色简约设计精美大气商务汇报PPT模板.pptx
- 用matlab绘制差分方程Z变换-反变换-zplane-residuez-tf2zp-zp2tf-tf2sos-sos2tf-幅相频谱等等.docx
- 网络营销策略-网络营销团队的建立.docx
- 电子商务示范企业申请报告.doc
- 淡雅灰低面风背景完整框架创业商业计划书PPT模板.pptx
- 计算模型与算法技术:10-Iterative Improvement.ppt
- 计算模型与算法技术:9-Greedy Technique.ppt
- 计算模型与算法技术:6-Transform-and-Conquer.ppt
- 云服务安全风险分析研究.pdf
- 软件工程笔记(完整版).doc
- 电子商务网项目实例规划书.doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0