【问题标题】:Authentication in Golang WebSocket applicationGolang WebSocket 应用程序中的身份验证
【发布时间】:2015-03-21 00:41:33
【问题描述】:

我正在尝试在主要使用 WebSockets 的应用程序中实现用户身份验证,但我不确定如何开始。

我正在使用 Gorilla mux 和 websocket 包。

我曾考虑过使用here 描述的方法(文件 main.go 和 auth.go),但是这种方法是否可以防止经过身份验证的用户以某种方式劫持彼此的套接字,就像this article 中描述的那样?

有人可以推荐一个好的 Go 方法或包吗?

【问题讨论】:

  • @ThunderCat 好吧,看来我误解了这篇文章。是因为它是 Socket.IO 特有的吗?

标签: security authentication go websocket gorilla


【解决方案1】:

upgrading 与 WebSocket 协议的连接之前,像对普通 HTTP 请求一样进行身份验证。使用您将用于普通 HTTP 请求的任何方法或包。

一个 WebSocket 连接可以被劫持到一个普通的 HTTP 连接可以被劫持的程度。 WebSocket 协议在这里没有引入任何新问题。

Socket.io 是 WebSockets、长轮询和其他技术之上的一层,用于将事件从服务器发送到浏览器客户端。 Socket.io 的问题不一定适用于直接使用 WebSocket。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-04
    • 1970-01-01
    • 2018-12-23
    • 2016-10-25
    • 2015-07-03
    • 2012-11-23
    相关资源
    最近更新 更多