写点什么

Spring(Acegi)Security 2.0 增加 OpenID 支持、REST 能力及性能改进

  • 2008-04-30
  • 本文字数:1921 字

    阅读完需:约 6 分钟

SpringSource 的总裁和 CEO Rod Johnson宣布了Spring Security2.0.0 的发布,该版本将 Acegi Security 作为 Spring 应用的官方安全模块。如 InfoQ 早前报道, Acegi security 已经成为企业软件中应用最为广泛的 Java 安全框架之一,它提供了全面的认证、授权、基于实例的访问控制、channel 安全及人类用户检验能力:

Acegi Security 开始于 2003 年底,其起因源于 Spring 开发者邮件列表上的一个问题:基于 Spring 的安全实现是否在计划中呢?从那时起,Acegi 就成为为数不多的 Java 安全框架之一,毫无疑问,也是应用最为广泛的一个。Servlet 和 EJB 安全标准的不健全及灵活性差的原因导致人们对 Acegi 产生了浓厚的兴趣,也就是从那时起,Acegi 发展成支持今天大多数认证机制的项目。对于认证我们已经讨论很多了,然而对于安全方面最大的挑战(也是讨论最少的)却来自于授权,Acegi 支持如下几种方式的授权:web 请求,方法调用,甚至对单个域对象实例的访问。

新特性包括简化的配置,并增加了新的功能,包括 OpenID、NTLM、JSR 250 注解、AspectJ 切入点(pointcut)支持、域 ACL 增强、RESTful URI 授权、组、分级角色、用户管理 API、数据库支持的“remember me”,portlet 认证、其他语言、Web Flow 2.0 支持、Spring IDE 可视化及自动完成、通过 Spring Web Services 1.5 提供的增强 WSS 支持等等。

这是向 Spring Portfolio 迈出的重要一步。Spring(Acegi)Security 已经成为 Java 平台上使用最广泛的企业安全框架,从 SourceForge 上 250,000 的下载量及每个版本超过 20,000 的下载量我们就能认识到这一点。

在 Acegi Security 主页上有关于新项目更多的技术细节:

Spring Security 2.0.0 构建在 Acegi Security 坚实的基础之上,并增加了很多新特性:

  • 简化的基于命名空间的配置语法。旧式配置可能需要上百行的 XML,然而我们对配置方式新的约定确保很多部署只需要不到十行
  • OpenID 集成,这是 web 界新出现的单点登录标准(受到 Google、IBM、Sun、Yahoo 等支持)
  • Windows NTLM 支持,提供针对 Windows 网络简单的企业范围的单点登录
  • 支持 JSR 250(“EJB 3”)security 注解,提供了针对授权元数据的基于标准的模型
  • AspectJ 切入点表达式语言支持,允许开发者在 Spring 管理的对象上应用横切(cross-cutting)安全逻辑
  • 对高性能域对象实例安全性(“ACL”)的改进
  • 全面支持 RESTful web 请求授权,这样它可以与构建 RESTful 系统的 Spring 2.5 @MVC 模型配合得很好
  • 支持长久以来都一直需要的组、层级角色及用户管理 API,他们联合起来可以减少开发时间并大幅改善系统的管理
  • 一个改进的、数据库支持的“remember me”实现
  • 支持开箱即用的 portlet 认证
  • 对其他语言的支持
  • 其他众多的改进、文档和新的例子
  • 通过 Spring Web Flow 2.0 对 web 状态与流程流转授权提供支持
  • 最新支持可视化安全方法,并且支持 Spring IDE 的自动完成
  • 通过 Spring Web Services 1.5 对 WSS(以前称作 WS-Security)增强支持

Matt Raible 描述了升级到 Spring Security 2.0 的个人体会:

很兴奋看到 Spring Security 2.0 给予你如此多的能力和灵活性,完全不必使用 XML。谢谢你们了!

Matt 还为这次升级做了一个完全列表

Chris Baker 详细说明了从 Acegi 升级到 Spring Security2.0 的路径,并且概要论述了从现存的基于 Acegi 的 Spring 应用升级到 Spring Security 2.0 的步骤:

这个关于如何配置 Spring Security 2.0 以访问数据库中的资源的简短指南并没有触及 Spring Security 2.0 中的许多新特性,但是我认为它展现了框架中最常用的一些功能,我希望它能对你有帮助。Spring Security 2.0 优于 ACEGI 的一个地方在于它的配置文件更简练,当我将旧有的 ACEGI 配置文件(172 行)与新的配置文件(42 行)相比时就很容易发现这一点。
就像我在步骤 1 中所说的那样,下载 Spring Security 是最棘手的事情。从那之后将一帆风顺……

之前 Dan 曾发表评论说“你使用Acegi 一次,就有一个仙女死去”,作为回应,Rod Johnson幽默地说该安全框架的新版本“能够在童话王国胜任”。在Spring Security 2.0 发布前, SpringSource 的 Ben Alex 也曾对 Dan 的话发表了评论

我们从社区论坛、开发者列表、JIRA、用户会议、培训、咨询和团队 blog 上收到了大量的反馈。毋庸置疑,很多人都在找寻对 Spring Security(以前的 Acegi)配置格式的改进方式,为此我们投入了大量的时间。
在下周的 Spring 体验大会上,我将展示 Spring Security 2.0.0 M1 的新特性将如何简化配置。

可以从这里下载最新发布的Spring Security。

你可以从 infoq.com/Spring 找到更多关于 Spring 的信息。

查看英文原文: Spring (Acegi) Security 2.0 Adds OpenID Support, REST Capabilities, and Performance Improvements

2008-04-30 03:181767
用户头像

发布了 88 篇内容, 共 268.4 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

活动预告 | 2022 SACC 中国系统架构师大会

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

小巨人,大能量!融云成功入选国家级专精特新“小巨人”企业

融云 RongCloud

企业 IM RTC

【网易云信】深度剖析「圈组」关系系统设计 | 「圈组」技术系列文章

网易智企

音视频 即时通讯IM

一文读懂加密资产板块的盈利潜力与投资机会

鳄鱼视界

服务器的正向代理与反向代理

我是一个茶壶

服务器 正向代理与反向代理 11月月更

Java NIO关键概念之Buffer

老农小江

Java 源码解读 java nio

企业如何正确使用低代码转型升级

力软低代码开发平台

G1 垃圾收集器深入剖析(图文超详解)

mikechen的互联网架构

Java 架构 面试 G1垃圾回收器 11月月更

六张图详解LinkedList 源码解析

Jeremy Lai

源码 linkedlist

深度剖析「圈组」关系系统设计 | 「圈组」技术系列文章

网易云信

音视频 即时通讯IM

国内低代码开发平台有哪些作用?

优秀

低代码开发平台

软件测试面试真题 | 什么是PO设计模式?

测试人

软件测试 自动化测试 PO 测试开发 UI自动化测试

Sovit3D数字孪生智慧机场三维可视化云平台

数据可视化平台

物联网 智慧机场 机场三维可视化 数字孪生机场 机场数字化转型

Linux常用命令

我是一个茶壶

Linux 命令 11月月更

ArrayList源码解析

Jeremy Lai

源码 ArrayList

Go 容器之队列的几种实现方式

宇宙之一粟

队列 数据结构与算法 Go 语言 11月月更

项目git-flow版本控制优化

Geek_pwdeic

git gitlab git-flow

KubeEdge云原生边缘计算公开课首发

华为云开发者联盟

云原生 后端 华为云 企业号十月 PK 榜

OpenMLDB BUG 悬赏令

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

量化合约对冲交易机器人app系统开发案例

开发微hkkf5566

类和动态内存分配

Maybe_fl

干货收藏|Clickhouse 常见问题及解决方案汇总

云智慧AIOps社区

MySQL 数据库 Clickhouse Data 故障处理

硬核技术助力提效,腾讯广告持续探索产学融合新航图

科技热闻

前端性能优化常问面试题-防抖节流

肥晨

防抖 节流 防抖节流 前端面试题 11月月更

Linux三剑客grep、sed、awk以及正则表达式

A-刘晨阳

Linux 运维 11月月更 三剑客

OpenMLDB 线上引擎资源需求预估模型,助你快速预估资源消耗

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

Linux进程管理

A-刘晨阳

Linux 运维 进程 11月月更

2022年10月中国汽车智能网联月度观察

易观分析

汽车 智能网联

OpenMLDB 新手宝典 开发者上手必读

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

Linux磁盘管理

A-刘晨阳

Linux 运维 磁盘 磁盘分区 11月月更

20款免费项目管理软件大盘点!你用过几款?

优秀

项目管理软件

Spring(Acegi)Security 2.0增加OpenID支持、REST能力及性能改进_Java_Dionysios G. synodinos_InfoQ精选文章