Spring Security began in late 2003 as "The Acegi Security System for Spring". A question was posed on the Spring Developers' mailing list asking whether there had been any consideration given to a Spring-based security implementation. At the time the Spring community was relatively small (especially compared with the size today!), and indeed Spring itself had only existed as a SourceForge project from early 2003. The response to the question was that it was a worthwhile area, although a lack of time currently prevented its exploration.

Spring Security于2003年底开始作为“Acegi安全系统的春天”。在Spring Developers的邮件列表中提出了一个问题,询问是否对基于Spring的安全实现给予了任何考虑。当时Spring社区相对较小(特别是与今天的大小相比!),而且Spring本身从2003年初开始只作为SourceForge项目存在。对这个问题的回答是,它是一个值得的区域,尽管缺乏时间目前阻止了它的探索。
 
With that in mind, a simple security implementation was built and not released. A few weeks later another member of the Spring community inquired about security, and at the time this code was offered to them. Several other requests followed, and by January 2004 around twenty people were using the code. These pioneering users were joined by others who suggested a SourceForge project was in order, which was duly established in March 2004.
 
考虑到这一点,构建了一个简单的安全实现,但未发布。几周后,Spring社区的另一名成员询问了安全性,当时这个代码已经提供给他们。随后还有其他几个请求,到2004年1月,大约有20个人正在使用该代码。这些开拓性的用户加入了其他人,他们建议订购SourceForge项目,该项目于2004年3月正式成立。
 
In those early days, the project didn’t have any of its own authentication modules. Container Managed Security was relied upon for the authentication process, with Acegi Security instead focusing on authorization. This was suitable at first, but as more and more users requested additional container support, the fundamental limitation of container-specific authentication realm interfaces became clear. There was also a related issue of adding new JARs to the container’s classpath, which was a common source of end user confusion and misconfiguration.
 
在那些早期,该项目没有任何自己的身份验证模块。容器管理安全性依赖于身份验证过程,而Acegi Security则专注于授权。这在一开始是合适的,但随着越来越多的用户请求额外的容器支持,容器特定的身份验证领域接口的基本限制变得清晰。还有一个相关的问题是将新的JAR添加到容器的类路径中,这是最终用户混淆和配置错误的常见原因。
 
Acegi Security-specific authentication services were subsequently introduced. Around a year later, Acegi Security became an official Spring Framework subproject. The 1.0.0 final release was published in May 2006 - after more than two and a half years of active use in numerous production software projects and many hundreds of improvements and community contributions.
 
随后引入了Acegi Security特定的身份验证服务。大约一年后,Acegi Security成为Spring Framework的正式子项目。 1.0.0最终版本于2006年5月发布 - 经过两年半的积极使用,在众多生产软件项目和数百项改进和社区贡献中。
 
Acegi Security became an official Spring Portfolio project towards the end of 2007 and was rebranded as "Spring Security".
 
Acegi Security于2007年底成为正式的Spring Portfolio项目,并更名为“Spring Security”。
 
Today Spring Security enjoys a strong and active open source community. There are thousands of messages about Spring Security on the support forums. There is an active core of developers who work on the code itself and an active community which also regularly share patches and support their peers.
 
今天,Spring Security拥有一个强大而活跃的开源社区。在支持论坛上有成千上万的关于Spring Security的消息。有一个活跃的开发人员核心,他们致力于代码本身和一个活跃的社区,它也定期共享补丁并支持他们的同行。
 
 
 
 

Spring Security(五):2.2 History的更多相关文章

  1. Spring Security(五) —— 动手实现一个 IP_Login

    摘要: 原创出处 https://www.cnkirito.moe/spring-security-5/ 「老徐」欢迎转载,保留摘要,谢谢! 5 动手实现一个IP_Login 在开始这篇文章之前,我们 ...

  2. spring security 学习文档

    web service Prepared by:   Sea                                                                       ...

  3. 【Spring Security】五、自定义过滤器

    在之前的几篇security教程中,资源和所对应的权限都是在xml中进行配置的,也就在http标签中配置intercept-url,试想要是配置的对象不多,那还好,但是平常实际开发中都往往是非常多的资 ...

  4. Spring Security教程(五):自定义过滤器从数据库从获取资源信息

    在之前的几篇security教程中,资源和所对应的权限都是在xml中进行配置的,也就在http标签中配置intercept-url,试想要是配置的对象不多,那还好,但是平常实际开发中都往往是非常多的资 ...

  5. Spring Security教程(五)

    在之前的几篇security教程中,资源和所对应的权限都是在xml中进行配置的,也就在http标签中配置intercept-url,试想要是配置的对象不多,那还好,但是平常实际开发中都往往是非常多的资 ...

  6. Spring Security 解析(五) —— Spring Security Oauth2 开发

    Spring Security 解析(五) -- Spring Security Oauth2 开发   在学习Spring Cloud 时,遇到了授权服务oauth 相关内容时,总是一知半解,因此决 ...

  7. SpringBoot + Spring Security 学习笔记(五)实现短信验证码+登录功能

    在 Spring Security 中基于表单的认证模式,默认就是密码帐号登录认证,那么对于短信验证码+登录的方式,Spring Security 没有现成的接口可以使用,所以需要自己的封装一个类似的 ...

  8. Spring Security(三十五):Part III. Testing

    This section describes the testing support provided by Spring Security. 本节介绍Spring Security提供的测试支持. ...

  9. Spring Security(二十五):7. Sample Applications

    There are several sample web applications that are available with the project. To avoid an overly la ...

随机推荐

  1. 中文汉字和常见英文数字等的unicode编码范围

  2. UOJ#310. 【UNR #2】黎明前的巧克力(FWT)

    题意 题目链接 Sol 挂一个讲的看起来比较好的链接 然鹅我最后一步还是没看懂qwq.. 坐等SovietPower大佬发博客 #include<bits/stdc++.h> using ...

  3. MySQL 慢查询日志配置与简析

    MySQL慢查询日志配置与简析 By:授客 QQ:1033553122   <1> 查看是否开启慢查询日志 SHOW VARIABLES LIKE 'slow%'; 说明: a. 如果sl ...

  4. Echarts纵坐标显示为整数小数

    chart.DoubleDeckBarChart = function (getIDParam, Legend, xAxisData, seriesName1, seriesName2, series ...

  5. 架构师成长之路-基于android fragment通信的面向对象的万能接口

    前言 开发一个app时,常用Activity和Fragment,由于操作方便Fragment越来越受欢迎,这样就避免不了Activity和Fragment.Fragment和Fragment之间的通信 ...

  6. java垃圾回收机制GC

    记得第一次总结java 的GC的时候,是刚开始在课堂上学习GC的时候,那时候许老师第一节java课 课后老师说同学们可以去深入理解一下java的GC机制: 但是是花费了三四个小时,翻看了<Thi ...

  7. 章节六、3-读取Properties属性文件

    一.如何读取Properties文件1.创建一个名为ReadingProperties的类 2.创建一个.propertise属性的文件,创建的方式参考“二”中步骤 3.写入如下代码 package ...

  8. Django Admin后台管理用户密码修改

    方法一 在Terminal中执行:python manage.py changepassword your_name(其中“your_name”为你要修改密码的用户名),根据提示内容修改即可. 方法二 ...

  9. LeetCode题解之 Intersection of Two Arrays

    1.题目描述 2.问题分析 借助于set来做. 3.代码 class Solution { public: vector<int> intersection(vector<int&g ...

  10. 关于PID的如何修改的FAQ

    1.如何查询支付宝账号对应的PID: 2.意外绑错或者想修改PID流程: (1)和业务联系拿到商家平台支付宝变更协议书填写(模版如下,可在附件中下载) 致:杭州银盒宝成科技有限公司 本人因      ...