5

我们的 Web 应用程序基于 Spring Security。我们已经通过 SSO 提供商 (CAS) 处理身份验证

我们正在尝试为我们的应用程序(角色和前提)找到一个处理授权的便捷解决方案。

我读到了 XACML;但是,找不到任何在 Spring-security 框架中实现和集成它的实际经验/示例。

有人有这方面的经验吗?

谢谢,雷。

4

3 回答 3

2

Asela 所说的适用于大多数基于 XACML 的授权服务器。

您可以选择开源:

  • WSO2 (Asela's) 提供的不仅仅是 XACML BTW - 它首先是一个中介平台
  • ForgeRock 的 OpenAM
  • JBoss 的PicketBox。
  • 赫拉斯空军
  • AuthzForce

一些实现 XACML 2.0,另一些实现 XACML 3.0

在供应商空间中,您拥有:

  • IBM (XACML 2.0)
  • 甲骨文(专有)
  • 戴尔(XACML 3.0,基于 .NET)
  • 公理(XACML 3.0、.NET 和 Java)

免责声明:我为后者工作,公理。我们在过去测试了一个示例 PEP,它实现了 Spring 安全访问决策,它工作正常。根据 XACML 的 REST 配置文件,我们的 PDP 既可以作为 SOAP Web 服务公开,也可以通过 REST 公开。

您想让您的 Spring Access Decision Manager 实现 XACML PEP 吗?您想改用选民吗?你需要支持义务和建议吗?

您还可以使用 Axiomatics 也提供的 AOP PEP。我们将在即将到来的星期四举办一个关于该主题的网络研讨会。详情在这里

于 2013-10-28T09:58:49.150 回答
1

我不确定弹簧安全框架。但是如果您的应用程序可以调用外部soap web 服务,您可以使用WSO2 Identity Server。因为 WSO2 Identity Server 的 PDP 已通过基于 SOAP 的 Web 服务公开。我猜,使用您的应用程序,您可以轻松调用它们。您可以从这个博客中找到更多详细信息。

于 2013-10-28T07:18:44.917 回答
1

我知道这是一个老问题,但我认为最近一次名为“增强 Spring 安全性”的网络研讨会(免责声明:我为 Axiomatics 工作并且是网络研讨会的小组成员)对于回答所提出的问题很有用。

它解释了如何扩展 Spring Express 语言 (SpEL)(在 v3 中引入)以实现自定义表达式,以调用 XACML PDP 以在 URL 和 UI(Web 表达式)以及方法(方法表达式)级别做出授权决定.

于 2015-06-06T13:17:35.300 回答