繁体   English   中英

如何防止本地计算机访问WebSocket

[英]How to prevent local computer access to WebSocket

我可以阻止其他网站(例如example.com)通过WebSocket访问和使用我的服务器资源。 我的意思是他们无法通过指向"ws://47.80.151.189:1234"类的东西来访问服务器并使用其资源(带宽,内存)或接收从其发送的数据。 这是一个node.js服务器。

但是,我的本地计算机仍然可以接收从该WebSocket url发送的数据。 即使在以下文件位置,它仍然可以接收数据: file:///D:/test.html

我不希望数据暴露给任何人。 因此,我该如何避免这种情况,谢谢。

您可以通过检查origin HTTP标头来限制浏览器的连接。

当在浏览器中运行的JavaScript脚本打开与某个服务器的WebSocket连接时,它将origin标头设置为包含打开WebSocket的JavaScript的原始HTML的URL(主机)。

请注意,非浏览器客户端不需要提供origin标头和/或可以伪造任何东西。

当然,您也可以基于连接客户端的源IP进行限制。 或者您可以要求某种身份验证。

暂无
暂无

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

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