Hello! 欢迎来到小浪资源网!


浏览器为何无法访问我的电脑硬件信息,而其他软件却可以?


浏览器为何无法访问我的电脑硬件信息,而其他软件却可以?

浏览器无法获取用户硬件信息的缘由

问题:
浏览器为何无法访问用户电脑的硬件信息,而安装的软件却能访问?是否安全考虑并不重要?

答案:

信任至关重要。安装软件表明授予其在授权范围内执行任何操作的权限。浏览器却不然。

浏览器充当与网站连接的”窗口”。它无法代表用户信任这些网站,也无法承担由此产生的后果,包括浏览器自身及其用户的损失。

此外,浏览器很难区分不同的网站是否值得信任,因为它们可以链接到任何网站。因此,为了保护用户,浏览器将硬件访问权限严格限制。

以前,Internet Explorer (IE) 的 ActiveX 几乎拥有操作系统的所有权限。虽然 IE 设置了限制,但这些限制很容易绕过。许多网银业务需要安装认证控件,这些控件在用户许可下获得了广泛的权限。

然而,这带来了一系列安全问题:用户只能信任控件不会滥用这些权限。即使是大公司也不能完全保证,特别是对于信誉不佳的小网站。如果出现问题,浏览器将承担责任。

近年来,JS 标准有限地开放了 API 访问权限,以增强 Web 使用,而不是来满足一些无关紧要或过分的要求。

获取硬件信息的其他方法:

虽然浏览器无法直接获取硬件信息,但仍有一些替代方法:

  • 打包成 electron 软件(浏览器)
  • 创建 C 端软件,配置本地 http 服务以响应所需信息

相关阅读