Luke Taylor
使用 Scala 配置 Spring Security
在之前的文章Spring Security 命名空间背后的故事中,我谈到了 Spring Security 命名空间如何在提供简单替代方案方面取得了巨大成功,但当您想要开始定制其行为时,仍然存在较高的学习曲线。在 XML 元素和属性背后,创建并连接了各种过滤器和辅助策略,但是,除了阅读处理 XML 解析的代码外,没有简单的方法来确定哪些类参与其中或它们如何交互的细节。
一段时间以来,我们一直在尝试使用Spring 的@Configuration
类提出一种基于 Java 的替代方案,该方案保留了 XML 命名空间的简单性,同时也使底层行为更加透明,更容易定制。虽然理论上可行,但似乎没有基于 Java 的解决方案能够满足……
Spring Security 3.1.0.RC2 发布
Spring Security 3.1.0.RC1 发布
Spring Security 3.1.0.M2 发布
Spring Security 3.0.5 发布
Spring Security 2.0.6 和 3.0.4 发布
我们很高兴地宣布 Spring Security 3.0.4 发布。
此版本修复了漏洞CVE-2010-3700。还为尚未升级到 Spring Security 3 的用户提供了 2.0.6 版本。
已解决问题的完整列表,请查看更改日志。
这两个版本都可从Spring 社区下载区以及 Maven 中央仓库获取。
在 Google App Engine 中使用 Spring Security
Spring Security 以其高度可定制性而闻名,因此,在我第一次尝试使用 Google App Engine 时,我决定创建一个简单的应用程序,该应用程序将通过实现一些核心 Spring Security 接口来探索 GAE 功能的使用。在这篇文章中,我们将看到如何
- 使用 Google 帐户进行身份验证。
- 在用户访问安全资源时实现“按需”身份验证。
- 使用应用程序特定的角色补充 Google 帐户中的信息。
- 使用原生 API 将用户帐户数据存储在 App Engine 数据存储区中。
- 根据分配给用户的角色设置访问控制限制。
- 禁用特定用户的帐户以防止访问。
您应该已经熟悉将应用程序部署到 GAE。启动和运行基本应用程序无需花费很长时间,您会在GAE 网站上找到大量相关指南。
示例应用程序
该应用程序非常简单,使用 Spring MVC 构建。在应用程序根目录中部署了一个欢迎页面,您可以在身份验证并向应用程序注册后进入“主页”。您可以在这里试用在 GAE 中部署的版本。已注册的用户存储为 GAE 数据存储区实体。第一次身份验证时,新用户会被重定向到……
Spring Security 3.0.3 发布
Spring Security 命名空间背后的故事
在 Spring Security 2 中引入安全模式后,启动和运行简单的安全应用程序变得容易得多。在旧版本中,用户必须单独声明和连接所有实现 bean,从而导致大型且复杂的 Spring 应用程序上下文文件难以理解和维护。学习曲线非常陡峭,我还记得当我开始从事该项目(当时的 Acegi Security)时,在 2004 年我花了一些时间才弄明白这一切。从好的方面来看,接触到基本的……