如何使用Wilma PEP Proxy和IdM Keyrock在Orion NGSI API中配置访问控制以进行租户隔离?

时间:2017-06-29 20:39:44

标签: authorization fiware fiware-orion fiware-wilma authzforce

我想在Orion Context Broker NGSI API级别提供访问控制,以确保真正的数据隔离。我想确保租户只能查询/更新他们的上下文而不是其他租户的上下文。

为此,我开始在Orion Context Broker前面放置Wilma PEP Proxy的实例。然后,我根据官方IdM Keyrock docker镜像和我自己的授权PDP GE,基于官方AuthzForce泊坞窗映像配置了我自己的Identity Manager keyrock GE实例。

经过几天的配置和多次尝试后,我终于可以使用 PEP代理级别2 使这三个安全通用启动器正常工作,验证和授权对Orion Context Broker NGSI API的请求。 / p>

但是,授权级别2不足以确保我想要的,因为服务(租户)和子服务(应用程序路径)信息位于请求的标头中。特别是在Fiware-Service和Fiware-ServicePath标头中。要构建基于标头的授权策略,您需要使用 3级:XACML授权。

问题在于我在Fiware的官方文档中进行了一些挖掘,但我找不到任何XACML策略的示例。除了Wilma PEP Proxy的官方文档(参见here)之外,您可能需要修改PEP代理源代码才能获得此级别的授权。

  

由于这种情况被认为是检查请求的高级参数,例如正文或自定义标题,它取决于具体的用例。因此程序员应修改PEP代理源代码以包含特定要求。

这可能吗?

我是否真的必须修改PEP代理源代码才能实现像租户只能访问其数据这样简单的内容?

1 个答案:

答案 0 :(得分:1)

非常好的问题。有替代的GE可以完美支持您所指的用例。请查看此演示文稿

https://es.slideshare.net/FI-WARE/building-your-own-iot-platform-using-fiware-geis

谢谢,最好