【问题标题】:Spring Security integration with XACML(Or any other policy based solution)Spring Security 与 XACML 的集成(或任何其他基于策略的解决方案)
【发布时间】:2013-11-06 06:36:38
【问题描述】:

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

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

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

有人有这方面的经验吗?

谢谢, 雷。

【问题讨论】:

    标签: spring spring-security authorization xacml


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

      Asela 所说的大多数基于 XACML 的授权服务器都是如此。

      你可以选择开源:

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

      有些实现 XACML 2.0,有些实现 XACML 3.0

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

      • IBM (XACML 2.0)
      • Oracle(专有)
      • 戴尔(XACML 3.0,基于 .NET)
      • Axiomatics(XACML 3.0、.NET 和 Java)

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

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

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

      【讨论】:

        【解决方案3】:

        我知道这是一个老问题,但我认为最近的一次名为 "Enhancing Spring Security" 的网络研讨会(免责声明:我为 Axiomatics 工作,并且是网络研讨会的一名小组成员)将有助于回答所提出的问题。

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

        【讨论】:

          猜你喜欢
          • 2015-10-25
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-03-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多