安全Pubnub订户密钥和通道名称

安全Pubnub订户密钥和通道名称,pubnub,Pubnub,我有一个应用程序,每个用户都必须接收到只与自己相关的通知 为此,我为每个用户创建了一个唯一的频道名称。当用户使用javascript从浏览器登录时,我订阅此频道 pubnub = PUBNUB.init({ subscribe_key : '<subscriber-key>' }); pubnub.subscribe({ channel: "<unique-channel-name>", }) 然后,呈现的页面将有三个字段用于初始化pub

我有一个应用程序,每个用户都必须接收到只与自己相关的通知

为此,我为每个用户创建了一个唯一的频道名称。当用户使用javascript从浏览器登录时,我订阅此频道

pubnub = PUBNUB.init({
   subscribe_key : '<subscriber-key>'
});

pubnub.subscribe({
  channel: "<unique-channel-name>",
})
然后,呈现的页面将有三个字段用于初始化pubnub:

<%= my_pubnub_subscriber_key %>
<%= john-channel %>
<%= john-key %>

原来的问题仍然存在。如果Jane去John家,打开John主页的源代码,复制3个键,回家创建自己的客户端,她可以订阅John的通知。我不知道我的通知接收者是真的登录了还是只是复制了密钥

我的想法正确吗?为了防止这种可能性,我应该定期重新生成通道名称或身份验证密钥,例如当用户注销时或每天重新生成?

使用ACL/Access Management保护PubNub上的数据流
嗨,好奇的观察者!我有一个小提示:你必须像对待会话ID一样对待你的
auth_密钥(Facebook、Gmail和Twitter就是这样工作的)。我将在下面写更多的细节。首先确保发出REST调用,而不是将密钥添加到页面的源代码中。这是更安全的,并允许您更灵活地使用您的安全。感谢您的快速响应。我明白你想说什么,这帮助我更好地理解pubnub。我对我的问题进行了编辑,以提供更详细的背景。Facebook也存在同样的问题。我可以打开你的FB页面,从网络选项卡复制你的
auth_密钥
,并访问你的Facebook页面。然而,如果你想增加一层额外的预防措施,从PubNub的角度防止这种情况发生,你可以遵循:我明白了。现在,我将使用REST调用和通道名/auth密钥重新生成。很高兴知道更复杂的安全性是可能的。谢谢。使用PubNub Access Manager查看最新文档-
John
- john-channel
- john-key-authorizing-read-on-john-channel

Jane
- jane-channel
- jane-key-authorizing-read-on-jane-channel
<%= my_pubnub_subscriber_key %>
<%= john-channel %>
<%= john-key %>