【发布时间】:2021-06-22 12:32:09
【问题描述】:
我知道答案几乎肯定是否定的,但我想知道您是否可以从用户计算机上的服务器运行代码(在他们的许可下)。
我有一个在远程 IIS 上运行的 ASP.NET 应用程序。我希望应用程序能够访问用户计算机上的 PCI 板并对其进行一些工作。据我所知,仅在浏览器中运行 JS 是无法做到这一点的。
我知道这对用户来说是一个巨大的安全漏洞,但他们可以根据需要选择加入或退出。
另一种选择是让应用程序已经在用户的计算机上,并在必要时由服务器运行,但我只是想知道这是否可能。
【问题讨论】:
-
您要么在服务器上、在用户的浏览器(JavaScript 或 WASM c#)中运行代码,要么给用户一个 exe。
-
如果您希望服务器控制安装在用户机器上的应用程序,您需要在应用程序和服务器之间建立通信通道。让您的应用程序作为 Windows 服务或在 Windows 启动时运行,并打开 TCP 连接或其他任何东西,服务器可以通过该连接向客户端发送命令并接收数据作为回报。或者让应用通过 HTTP 轮询服务器以进行工作。
-
您应该看看
SignalR或gRPC。这两件事都可以在受限且安全的区域内控制方法的执行。
标签: c# asp.net browser websecurity