使用webhooks在Ably Realtime中获得有关频道生命周期事件的通知时,将access_token作为websocket url查询参数的一部分发送是否安全?
答案 0 :(得分:1)
从安全角度来看,存储访问令牌的位置并不重要。在普通的HTTP请求中,它将存储在标头中,或者在websocket连接建立后的消息中存储。但是,客户端的许多websockets不支持客户端标头,并且对于可以检查流量的攻击者来说,这两者都可以同样访问。这些天连接默认超过TLS,因此从外部您无法访问查询参数,也无法访问消息内容。
传统上,在查询参数中使用凭证被认为是不好的做法,因为URL可以存储在代理日志,浏览器历史记录等位置。但是,这些问题都不适用于websockets(浏览器获胜) “保留页面连接的历史记录”,并且当存在TLS隧道时,代理无权访问URL。当非TLS交互是默认的时,就会产生这种担忧。为了进行比较,大多数OAuth流导致使用access_token查询参数进行端点访问。