繁体   English   中英

PHP和node.js共享会话标识

[英]PHP and node.js shared session identification

我正在寻找使用node.js和socket.io传递消息等的聊天/消息传递系统。

但是,系统将使用通过PHP会话的php身份验证系统。 显然,我需要某种方式来知道所连接的node.js用户X是经过PHP身份验证的用户X?

经过一些研究,使用Memcache与节点共享php会话(通过存储在JSON等中)似乎相当普遍。 但是,仍然存在识别哪个连接的节点用户是哪个存储的php会话的问题?

我的第一个想法是使用PHP设置的cookie,利用PHPSESSID值等,但是可以肯定的是,用户可以将该cookie修改为其他人的PHPSESSID和bazinga? (显然,他们要么必须知道PHPSESSID,要么必须非常擅长猜测,但这似乎还是一个安全漏洞?

您对此有何想法? 是实现我想要的最好的方法吗?

实际上,使用PHP会话ID应当足够安全,这就是任何PHP站点都可以处理身份验证的程度。 用户登录后,必须在浏览器中保存某种“令牌”,以使站点知道他们是谁,以便可以确定他们已登录。 您可以创建自己的会话,也可以使用已经创建的会话(如果这样更方便)。 想法是会话ID值足够长且足够复杂,以至于在对特定用户的身份验证有效期间无法猜测它。

如果要进一步保护用户,请确保您一直在使用SSL连接,这样就不会监听会话ID。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM