2015-01-17 44 views
1

下午好,记住用户的websocket

我希望有人能够帮助我一个概念。我有一个websocket服务器将JSON消息推送给用户,我已经编码了许多管理功能,将广播推送给用户,并在需要时断开用户连接。

我希望能够做的事情之一是想出一个'近'万无一失的'禁止'用户如果需要连接到服务器的方式。这是我有点失落的地方,如果我去了cookie路线,那么cookie可能被清除并且不再有效,我不能使用会话ID,因为一旦它们断开,他们得到新的会话ID,而且IP地址也是有问题的,因为许多人将使用移动动态连接。

我喜欢关于如何最好地实现记忆用户的方式的任何提示,所以如果我禁止他们,当他们去重新连接,我可以阻止他们。

我运行的服务器是supersocketserver,而客户端是HTML5。

回答

1

鉴于目前的限制条件,禁止某人访问您的网站的方式并不“万无一失”。

出于隐私原因,没有永久的方法来识别给定的浏览器。有cookie,有IP地址,甚至有一些邪恶的“perma-cookies”试图在许多地方存储小块的识别信息(例如flash cookies和其他插件数据),以试图使其变得困难(但并非不可能)让用户清除它们。正如你已经知道的那样,IP地址并不是永久性的,并不总是只与一个用户绑定。

而且,当然用户当然可以使用不同的浏览器或计算机或移动设备。

因此,控制访问的常用方法是要求用户在系统中使用您的服务之前在系统中创建一个帐户。然后,如果您想禁止用户,则禁止该帐户。由于您希望阻止用户创建新帐户,因此您可以在帐户注册时收集其他身份信息。您需要和可以验证的信息越多,用户创建越来越多的帐户就越困难。如果你真的想要让用户难以创建更多帐户,这将变得非常有用,因为你需要一些识别信息,你可以验证这些信息并且很难让流氓用户复制(信用卡,电子邮件地址,家庭住址等)。你在这里走多远,你付出多少努力取决于你想让一个被禁止的用户有多少。

+0

感谢您的建议,看起来像我可能需要注册过程,并这样做。如果用户确实进行连接,这不是世界末日,因为它基本上是单向通信,但某种形式的控制更有用。再次感谢您的建议。 – user1829564