InfoQ

新闻

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

作者 Dionysios Synodinos 译者 张龙 发布于 2008年4月30日 上午3时18分

社区
Java
主题
Web框架,
安全
标签
Spring框架

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

一点好处也没有 还是一样复杂 发表人 shen jianfeng 发表于 2008年5月26日 上午9时20分
  1. 返回顶部

    一点好处也没有 还是一样复杂

    2008年5月26日 上午9时20分 发表人 shen jianfeng

    spring 现在越来越繁琐了 简化的基于命名空间的配置语法。旧式配置可能需要上百行的XML,然而我们对配置方式新的约定确保很多部署只需要不到十行 一点好处也没有 还是一样复杂

深度内容

和Google互补的搜索引擎Wolfram|Alpha

Wolfram|Alpha与Google究竟是什么关系,Wolfram|Alpha自己是如何定位的?Wolfram|Alaph在多大程度上是语义网搜索呢?InfoQ中文站就等等这些问题采访了Wolfram研究公司中国区商务经理王翔。

SOA契约成熟度模型

本文说明了所推荐的契约版本管理设计策略是如何与SOA成熟度模型发生联系的。文章目的是为实现版本管理和可组合性提供一个路线图。

数据服务简介

Vijay Narayanan在这篇文章中对数据服务的几个方面进行了介绍,它们都是SOA实践者和数据架构师感兴趣的内容。本文对数据服务的几个方面进行了介绍,包括需求定义,基本原理和好处、范围、开发以及消费模式。

分块云计算

在本文中,Jimmy Nilsson描述了一种他在过去数年间观察到的一种正在缓慢成长的架构风格,他把这种风格称为“分块云计算”。

豆瓣网技术架构变迁

罗马不是一天建成的,豆瓣的技术架构也是随着用户规模的增长一直在持续变化中。在本次演讲中,豆瓣的首席架构师洪强宁将与大家一起分享从上线时的单台服务器架构开始一直到现在的豆瓣架构变迁历程。

融合思想:深入探索S#arp架构

Billy McCafferty展示了S#arp架构,它在ASP.NET MVC框架的基础上,荟萃了当今的最佳实践,应用在ASP.NET Web应用程序的架构设计中。

王雷谈开源以及新兴市场计划

中国作为新兴市场中的新兴市场,是Sun在美国之外实施SSE(SUN Startup Essentials)项目重点关注的地区。在QCon Beijing 2009期间,InfoQ中文站有幸对此项目的负责人王雷先生进行了采访,探讨了关于开源、新兴市场、SSE等话题。

使用HTML5构建下一代的Web Form

HTML5 是由 WHATWG发起的,最开始的名称叫做Web Application 1.0,而后这个标准吸纳了Web Forms 2.0的标准,并一同被W3C组织所采用,合并成为下一代的HTML5标准。