Spring Security provides comprehensive security services for Java EE-based enterprise software applications. There is a particular emphasis on supporting projects built using The Spring Framework, which is the leading Java EE solution for enterprise software development.

Spring Security为基于Java EE的企业软件应用程序提供全面的安全服务。特别强调支持使用Spring Framework构建的项目,Spring Framework是用于企业软件开发的领先Java EE解决方案。
 
 If you’re not using Spring for developing enterprise applications, we warmly encourage you to take a closer look at it. Some familiarity with Spring - and in particular dependency injection principles - will help you get up to speed with Spring Security more easily.
 
如果您不使用Spring开发企业应用程序,我们热烈鼓励您仔细研究它。熟悉Spring - 特别是依赖注入原则 - 将帮助您更轻松地熟悉Spring Security。
 
People use Spring Security for many reasons, but most are drawn to the project after finding the security features of Java EE’s Servlet Specification or EJB Specification lack the depth required for typical enterprise application scenarios.
 
人们使用Spring Security有很多原因,但是在发现Java EE的Servlet规范或EJB规范的安全特性缺乏典型企业应用程序场景所需的深度之后,大多数人都被这个项目所吸引。
 
Whilst mentioning these standards, it’s important to recognise that they are not portable at a WAR or EAR level. Therefore, if you switch server environments, it is typically a lot of work to reconfigure your application’s security in the new target environment. 
 
虽然提到这些标准,但重要的是要认识到它们不能在WAR或EAR级别上移植。因此,如果切换服务器环境,在新的目标环境中重新配置应用程序的安全性通常需要做很多工作。
 
Using Spring Security overcomes these problems, and also brings you dozens of other useful, customisable security features.
 
使用Spring Security克服了这些问题,并为您提供了许多其他有用的,可自定义的安全功能。
 
As you probably know two major areas of application security are "authentication" and "authorization" (or "access-control"). These are the two main areas that Spring Security targets. "Authentication" is the process of establishing a principal is who they claim to be (a "principal" generally means a user, device or some other system which can perform an action in your application).
 
您可能知道应用程序安全性的两个主要方面是“身份验证”和“授权”(或“访问控制”)。这是Spring Security目标的两个主要领域。 “身份验证”是建立委托人的过程,他们声称是谁(“委托人”通常是指用户,设备或其他可以在您的应用程序中执行操作的系统)。
 
."Authorization" refers to the process of deciding whether a principal is allowed to perform an action within your application. To arrive at the point where an authorization decision is needed, the identity of the principal has already been established by the authentication process. These concepts are common, and not at all specific to Spring Security.
 
“授权”是指决定是否允许委托人在您的申请中执行诉讼的过程。为了达到需要授权决定的程度,已经通过认证过程建立了委托人的身份。这些概念很常见,并不是Spring Security特有的。
 
At an authentication level, Spring Security supports a wide range of authentication models. Most of these authentication models are either provided by third parties, or are developed by relevant standards bodies such as the Internet Engineering Task Force.
 
在身份验证级别,Spring Security支持各种身份验证模型。大多数这些身份验证模型由第三方提供,或由相关标准机构(如Internet工程任务组)开发。
 
In addition, Spring Security provides its own set of authentication features. Specifically, Spring Security currently supports authentication integration with all of these technologies:
 
此外,Spring Security还提供了一组自己的身份验证功能。具体来说,Spring Security目前支持与所有这些技术的身份验证集成:
 
  • HTTP BASIC authentication headers (an IETF RFC-based standard)
  • HTTP BASIC身份验证标头(基于IETF RFC的标准)
  • HTTP Digest authentication headers (an IETF RFC-based standard)
  • HTTP摘要式身份验证标头(基于IETF RFC的标准)
  • HTTP X.509 client certificate exchange (an IETF RFC-based standard)
  • HTTP X.509客户端证书交换(基于IETF RFC的标准)
  • LDAP (a very common approach to cross-platform authentication needs, especially in large environments)
  • LDAP(一种非常常见的跨平台身份验证方法,特别是在大型环境中)
  • Form-based authentication (for simple user interface needs)
  • 基于表单的身份验证(用于简单的用户界面需求)
  • OpenID authentication
  • OpenID身份验证 
  • Authentication based on pre-established request headers (such as Computer Associates Siteminder)
  • 基于预先建立的请求标头的身份验证(例如Computer Associates Siteminder)
     
  • Jasig Central Authentication Service (otherwise known as CAS, which is a popular open source single sign-on system)
  • Jasig中央认证服务(也称为CAS,是一种流行的开源单点登录系统) 
  • Transparent authentication context propagation for Remote Method Invocation (RMI) and HttpInvoker (a Spring remoting protocol)
  • 远程方法调用(RMI)和HttpInvoker(Spring远程协议)的透明身份验证上下文传播
  • Automatic "remember-me" authentication (so you can tick a box to avoid re-authentication for a predetermined period of time)
  • 自动“记住我”身份验证(因此您可以勾选一个框以避免在预定时间段内重新进行身份验证)
     
  • Anonymous authentication (allowing every unauthenticated call to automatically assume a particular security identity)
  • 匿名身份验证(允许每个未经身份验证的呼叫自动承担特定的安全身份)
     
  • Run-as authentication (which is useful if one call should proceed with a different security identity)
  • 运行身份验证(如果一个调用应继续使用不同的安全标识,则非常有用)
     
  • Java Authentication and Authorization Service (JAAS)
  • Java身份验证和授权服务(JAAS)
     
  • Java EE container authentication (so you can still use Container Managed Authentication if desired)
  • Java EE容器身份验证(如果需要,您仍然可以使用容器管理身份验证)
     
  • Kerberos
  • kerberos的
  • Java Open Source Single Sign-On (JOSSO) *
  • Java开源单点登录(JOSSO)*
     
  • OpenNMS Network Management Platform *
  • OpenNMS网络管理平台*
     
  • AppFuse *
  • AndroMDA *
  • Mule ESB *
  • Direct Web Request (DWR) *
  • 直接Web请求(DWR)*
     
  • Grails *
  • Tapestry *
  • JTrac *
  • Jasypt *
  • Roller *
  • Elastic Path *
  • Atlassian Crowd *
  • Your own authentication systems (see below)
  • 您自己的身份验证系统(见下文)
     
 *   Denotes provided by a third party
      表示由第三方提供

 
 Many independent software vendors (ISVs) adopt Spring Security because of this significant choice of flexible authentication models. Doing so allows them to quickly integrate their solutions with whatever their end clients need, without undertaking a lot of engineering or requiring the client to change their environment
 
许多独立软件供应商(ISV)采用Spring Security,因为这种灵活的身份验证模型的选择很多。这样做可以让他们快速地将他们的解决方案与他们最终客户的需求集成在一起,而无需进行大量工程或要求客户改变他们的环境
 
If none of the above authentication mechanisms suit your needs, Spring Security is an open platform and it is quite simple to write your own authentication mechanism. 
 
如果上述认证机制都不适合您的需求,Spring Security是一个开放平台,编写自己的认证机制非常简单。
 
Many corporate users of Spring Security need to integrate with "legacy" systems that don’t follow any particular security standards, and Spring Security is happy to "play nicely" with such systems.
 
Spring Security的许多企业用户需要与不遵循任何特定安全标准的“遗留”系统集成,Spring Security很乐意与这些系统“很好地”合作。
 
Irrespective of the authentication mechanism, Spring Security provides a deep set of authorization capabilities. There are three main areas of interest: authorizing web requests, authorizing whether methods can be invoked and authorizing access to individual domain object instances.
 
无论身份验证机制如何,Spring Security都提供了一组深层授权功能。主要有三个方面:授权Web请求,授权是否可以调用方法以及授权访问单个域对象实例。
 
 To help you understand the differences, consider the authorization capabilities found in the Servlet Specification web pattern security, EJB Container Managed Security and file system security respectively. Spring Security provides deep capabilities in all of these important areas, which we’ll explore later in this reference guide.
 
为帮助您了解这些差异,请分别考虑Servlet规范Web模式安全性,EJB容器管理安全性和文件系统安全性中的授权功能。 Spring Security在所有这些重要领域提供了深入的功能,我们将在本参考指南的后面部分进行探讨。
 
 
 
 
 
 
 

Spring Security(四):2.1 Introduction What is Spring Security?的更多相关文章

  1. 【Spring】12、Spring Security 四种使用方式

    spring security使用分类: 如何使用spring security,相信百度过的都知道,总共有四种用法,从简到深为:1.不用数据库,全部数据写在配置文件,这个也是官方文档里面的demo: ...

  2. spring security四种实现方式

    spring security四种实现方式 spring(20) > 目录(?)[+] 最简单配置spring-securityxml实现1 实现UserDetailsService 实现动态过 ...

  3. 学习 Spring (十四) Introduction

    Spring入门篇 学习笔记 Introduction 允许一个切面声明一个实现指定接口的通知对象,并且提供了一个接口实现类来代表这些对象 由 中的 元素声明该元素用于声明所匹配的类型拥有一个新的 p ...

  4. Java框架之Spring(四)

    本文主要讲述在Spring中 1 注解方式装配 2 以自动扫描把组件纳入spring容器中管理 3 面象切面编程-代理的jdk 版实现 4 使用 Cglib 生成代理 5 aop编程的一些概念 6 使 ...

  5. Spring系列(四) 面向切面的Spring

    除了IOC外, AOP是Spring的另一个核心. Spring利用AOP解决应用横切关注点(cross-cutting concern)与业务逻辑的分离, 目的是解耦合. 横切关注点是指散布于代码多 ...

  6. 朱晔和你聊Spring系列S1E10:强大且复杂的Spring Security(含OAuth2三角色+三模式完整例子)

    Spring Security功能多,组件抽象程度高,配置方式多样,导致了Spring Security强大且复杂的特性.Spring Security的学习成本几乎是Spring家族中最高的,Spr ...

  7. Spring系列(四):Spring AOP详解和实现方式(xml配置和注解配置)

    参考文章:http://www.cnblogs.com/hongwz/p/5764917.html 一.什么是AOP AOP(Aspect Oriented Programming),即面向切面编程, ...

  8. Spring学习(四)--面向切面的Spring

    一.Spring--面向切面 在软件开发中,散布于应用中多处的功能被称为横切关注点(cross- cutting concern).通常来讲,这些横切关注点从概念上是与应用的业 务逻辑相分离的(但是往 ...

  9. spring学习(四) ———— 整合web项目(SSH)

    清楚了spring的IOC 和 AOP,最后一篇就来整合SSH框架把,记录下来,以后应该会用的到. --WH 一.web项目中如何使用spring? 当tomcat启动时,就应该加载spring的配置 ...

随机推荐

  1. 冒泡排序算法的C++实现

    直接上代码: #include <iostream> using namespace std; void BubbleSort(int arr[],int n){ ) //在本例中,第1次 ...

  2. JMeter 报告监听器导入.jtl结果文件报错解决方案

    JMeter 报告监听器导入.jtl结果文件报错解决方案   by:授客 QQ:1033553122   1. 问题描述 把jmeter压测时生成的 .jtl结果文件导入监听器报告中,弹出如下错误提示 ...

  3. Android IPC机制(三)使用AIDL实现跨进程方法调用

    上一篇文章中我们介绍了使用Messenger来进行进程间通信的方法,但是我们能发现Messenger是以串行的方式来处理客户端发来的信息,如果有大量的消息发到服务端,服务端仍然一个一个的处理再响应客户 ...

  4. Gson解析空字符串异常的处理

    面对一些不规范的json,我们的gson解析经常会抛出各种异常导致app崩溃,这里可以采取一些措施来避免. 我们期望在后台返回的json异常时,也能解析成功,空值对应的转换为默认值,如:newsId= ...

  5. (转载)彻底的理解:WebService到底是什么?

    最近老是有人跟我提web service接口,怎么,怎么滴,我觉得很扎耳朵,web service是一种将服务器的服务封装起来的技术,表现为对外提供接口,所以,web service不是一种接口 !! ...

  6. mysql执行语句提示Table 'performance_schema.session_variables' doesn't exist

    用管理员身份cmd进入mysql安装目录bin里,执行 mysql_upgrade -u root -p 如果杀毒软件拦截,添加为信任区

  7. myBase7.0破解

    永久性破解 Mybase7Pro破解版下载:链接:https://pan.baidu.com/s/1ezb8bSqI0OPZnVgx-snA_Q  提取码:n72t 1.下载后安装 myBase-De ...

  8. mssql sqlserver 使用sql脚本输出交替不同的背景色的html信息的方法分享

    转自:http://www.maomao365.com/?p=6679 摘要: 下文将分享使用sql脚本输出交替变换的不同背景颜色的sql脚本的方法分享,如下所示: 实验环境:sqlserver 20 ...

  9. iOS 让视图UIView 单独显示某一侧的边框线

    有时候需要让view显示某一侧的边框线,这时设置layer的border是达不到效果的.在网上查阅资料发现有一个投机取巧的办法,原理是给view的layer再添加一个layer,让这个layer充当边 ...

  10. 两层c:forEach循环嵌套

    jsp中两级菜单如何用c:forEach输出 items 要被循环的信息 否 无 begin 开始的元素(0=第一个元素,1=第二个元素) 否 0 end 最后一个元素(0=第一个元素,1=第二个元素 ...