使用 nginx 和 http 推送模块保护通道

Posted

技术标签:

【中文标题】使用 nginx 和 http 推送模块保护通道【英文标题】:Securing channels with nginx and http push module 【发布时间】:2010-11-23 16:15:43 【问题描述】:

我能够将 nginx 设置为消息服务器,以便使用 Dojo 构建实时 javascript 应用程序。对于设置,我使用了 nginx http_push_module,它可以配置为处理不同“通道”上的发布/订阅请求。通道是“表示消息传输的隔离路径的资源。每个通道都有一个唯一的消息队列”。 通道由 XHR 请求中使用的 url 中的 id 参数标识。

我需要实现某种私有通道,应用程序可以使用它来向用户推送消息,但我不知道如何实现通道身份验证。

有没有人使用过 http_push_module 来创建私人频道或有关于实施它们的建议?

提前感谢您的支持。

【问题讨论】:

【参考方案1】:

也许您可以使用我一直在开发的 http_push_module 模块的分支,它实现了对其中通道的细粒度安全访问。我刚刚更新了 README 让您知道如何使用它,但它基本上使用 md5 哈希,它提供通道的过期时间和每个客户端 IP/每个通道的安全性(如果您需要,它还添加了 jsonp 支持):

https://github.com/Kronuz/nginx_http_push_module

【讨论】:

以上是关于使用 nginx 和 http 推送模块保护通道的主要内容,如果未能解决你的问题,请参考以下文章

Node中的Http模块和Url模块的使用

聊聊推送的架构及关键技术实现

nginx 之高级模块

nginx用tar包安装做443加密网站

使用推送器的存在/私人频道的不同身份验证方法

nginx实战 WebDAV 模块 http_dav_module