我正在处理power monitoring,只想向授权用户发送实时电源数据。一些用户选择在家中安装电力传感器,其他用户则在查看这些传感器。每个传感器将样本发送到Twisted后端-目标是让这个后端将数据转发到浏览器中运行的Javascript。在
我当前转发数据的解决方案是一个Orbited服务器和一个{a4}实例(MorbidQ是一个Stomp服务器)。我的系统(example here)中的每个建筑都有自己的更新通道。twisted后端通过MorbidQ频道向任何观看的人广播数据,但任何人都可以观看。我的博客上有一条关于the data flow from sensor to site的条目
对于许多建筑物,我只希望几个用户能够看到给定建筑物中的实时数据。如果可能的话,我想使用Django Auth,如果没有,我想使用某种变通方法。
为每个用户保护这些频道最简单的方法是什么? 我可以使用Django Auth吗? 我应该使用RabbitMQ还是ActiveMQ而不是MorbidQ? 我可以采取什么措施来保证这个解决方案的安全?在
对于编码,我最有信心C++和Python。在谢谢!在
恢复一个旧的线程:MorbidQ并不是为了生产使用AFAIK。ActiveMQ是一个更健壮的beast,它提供了更好的方法来处理基于用户的身份验证。我早在2010年就写了this来处理静态用户身份验证,但是ActiveMQ允许您传递用于身份验证的动态用户列表,该列表可以来自应用程序可用的任何后端。我在上面提到的文章并没有讨论这个问题,但是稍微深入研究一下ActiveMQ身份验证/安全手册部分(加上一些Java知识)就可以为这种使用提供一个非常糟糕的设置。如果LDAP可用,那就更好了。在
如果您使用morbidq的restq扩展,您可以让它在每次用户尝试连接时向您的应用程序发送一个http回调。(见http://www.morbidq.com/trac/wiki/RestQ)。然后,django应用程序就可以对connect尝试返回yes或no(在它通过一些auth过程运行之后)
相关问题 更多 >
编程相关推荐