【问题标题】:Secure communication between FIWARE orion and context-provider/IoT agentFIWARE orion 和上下文提供者/物联网代理之间的安全通信
【发布时间】:2021-04-08 07:35:47
【问题描述】:

我必须考虑使用 FIWARE orion 上下文代理和多个 IoT 代理/上下文提供程序的架构。文档中有一节描述了如何保护从 IoT 代理/上下文提供者到 Orion 的通信。但是如何保护对方? 到目前为止,我所理解的是,上下文提供者必须公开一个接受传入流量的 REST 端点 (/op/query)。但是它如何确保这些请求是有效的呢? 如果是subscription,当您创建subscription 时,您可以在provider 部分中使用httpCustom 而不是http。有了这个,当向给定的 url 发出请求时,可以使用 Orion 将使用的静态令牌。这对于registration 是不可能的。对上下文提供者/IoT 代理如何确定传入请求是否有效有任何建议?

【问题讨论】:

  • 不确定 NGSI-v2 如何使用 /op/query 端点执行此操作,但 Orion-LD 上的 NGSI-LD 注册转发传入的标头,因此,代理上的输入 Authenticate 标头也将出现在发送到注册上下文提供者的请求中。
  • 这不是一个选项,因为ngsi-ld 还不是最终版本。
  • 不确定我是否明白你的意思......在“但如何确保这些请求有效?”中的“有效”是什么意思?也许编辑问题以在您想通过注册/CPrs 模仿的订阅中添加“参考案例”的示例可能有助于澄清。谢谢!
  • 我的意思是:如何确保请求者是授权者。

标签: fiware fiware-orion


【解决方案1】:

使用 NGSIv2 订阅/通知和注册/转发,您将收到一个 X-Auth-Token 标头,其中包含初始更新操作中使用的令牌。您应该能够在 IDM(我们堆栈中的 Keystone)中进行检查。

作为一种解决方法,您可以使用值本身来发送某种 Apikey 以及实际值。

网络安全也可能适用,通常使用防火墙并限制 ip/端口,或在分布式架构中建立 APN/VPN(至少对于不安全的设备或外部网络)。

最后,如果您的用例不需要同步通信(寄存器是同步的,sub/notif 是异步的),那么使用 Subs/Notif 机制与上下文适配器通信并不是什么大问题。我们有时会这样做,寄存器既棘手又麻烦。

最好的。

【讨论】:

  • 让我说一下,NGSIv2 是稳定和成熟的。由于 NGSIv2 处于持续改进的生命周期中,它的演变特别注意与先前版本和用例场景的向后兼容性。 NGSIv2 广泛用于实际项目和生产环境中。
  • "通过 NGSIv2 订阅/通知和注册/转发,您将收到一个 X-Auth-Token 标头,其中包含初始更新操作中使用的令牌。您应该能够在 IDM 中检查(Keystone in我们的堆栈)。”我没有读过任何关于它的东西。这个功能的描述在哪里?
  • 恐怕它没有正确记录,至少我在实施 PR 中找不到明确的文档。这应该是问题所在:github.com/telefonicaid/fiware-orion/issues/715 和测试用例github.com/telefonicaid/fiware-orion/blob/master/test/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-13
  • 1970-01-01
  • 1970-01-01
  • 2017-07-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多