我有一个 Web 应用程序,我的用户已经在 HTTP 中进行了身份验证。HTTP 身份验证后,我想接收视频通话。对于这个任务,我选择了一个 WebSockets 服务器(我写了一个小的 PHP CLI 脚本)。
有一个问题,我找不到在我的 WebSocket 守护程序上对经过身份验证的用户进行身份验证的方法。(因为它是 CLI 应用程序,它可以与每个实例的许多用户一起使用。)
我认为,最好将用户在握手请求中发送的标头发送到我的 WebSocket 服务器。我解析了 cookie 并使用 and 创建了一个会话session_id()
,session_start()
但我不能为多个用户执行此操作,只能为一个用户执行此操作。
在许多板上,建议通过 JS 发送用户 ID 和一些密钥来识别用户,但这并不安全。也许我可以发送带有散列用户密码的用户 ID,我将其存储在 html 中的某处(js 内联常量)?你怎么看?
在 WebSocket 服务器上对用户进行身份验证的最佳方法是什么?请记住,该用户已经通过 HTTP 进行了身份验证。