1

我刚开始用 wso2 学习 xacml,我浏览了这个示例帖子,它运行良好。我的问题是如果我使用 tomcat 部署我的战争文件而不是 wso2,那么我如何保护我的受保护页面。

谢谢你

4

2 回答 2

0

你需要从基础开始。你知道 XACML 架构吗?有一个名为 PEP(策略执行点)的组件负责保护您的资源。

PEP 可以具有不同的形状因数。它可能是一个 API 网关,或者在您的情况下,它可能是一个 servlet 过滤器。您可以编写您的 Servlet 过滤器。遵循这些说明

要了解有关 XACML 的更多信息,请查看其Wikipedia 站点。我会定期添加信息。另请查看ABACALFA页面。

于 2016-05-18T14:04:51.127 回答
0

有多种方法可以做到这一点,我将向您解释一种方法

如果您在 tomcat 上部署 Web 应用程序,您可以编写一个 tomcat 过滤器[1] 或 tomcat 阀来充当 PEP(策略执行点)。

您可以使用 XACML 策略配置 WSO2 身份服务器。此后,您可以从使用 SOAP/thrift 授权客户端实现的 tomcat 过滤器/阀门中调用授权服务(请参阅 [2])

您可以实现类似于 [3] 的过滤器。您需要在 Web 应用程序的 web.xml 中配置过滤器。使用 [4] 配置过滤器。WSO2 应用程序在内部使用 tomcat 来托管 Web 应用程序,因此它与部署在 tomcat 上没有太大区别

[1] https://tomcat.apache.org/tomcat-5.5-doc/servletapi/javax/servlet/Filter.html

[2] wso2中Xacml与saml的集成

[3] https://github.com/wso2-extensions/identity-agent-entitlement-filter/blob/master/components/org.wso2.carbon.identity.entitlement.filter/src/main/java/org/wso2 /carbon/identity/entitlement/filter/EntitlementFilter.java

[4] https://docs.wso2.com/display/AS530/Enable+XACML+Fine+Grained+Authorization+for+Web+Apps

于 2016-05-18T14:10:30.193 回答