Javascript 如何控制Tamper Monkey dashboard安装的脚本,以便用户无法禁用脚本

Javascript 如何控制Tamper Monkey dashboard安装的脚本,以便用户无法禁用脚本,javascript,google-chrome-extension,tampermonkey,Javascript,Google Chrome Extension,Tampermonkey,我有一个内部web门户(仅从Chrome打开),在其中我使用TamperMonkey暂时隐藏了一些选项。因此,此脚本将仅在少数内部系统中设置。有没有办法禁用Tamper Monkey中的选项,用户无法在Tamper Monkey仪表板中禁用这些脚本?这是从组织层面进行的 有没有办法将此脚本直接放入我的Web服务器?没有。您不能这样做任何用户脚本都不能更改任何扩展或浏览器设置。 甚至一个扩展也不能直接干扰其他扩展 浏览器开发人员非常努力地阻止他们发现的(合理的)此类攻击的所有向量 您的最佳选择是

我有一个内部web门户(仅从Chrome打开),在其中我使用TamperMonkey暂时隐藏了一些选项。因此,此脚本将仅在少数内部系统中设置。有没有办法禁用Tamper Monkey中的选项,用户无法在Tamper Monkey仪表板中禁用这些脚本?这是从组织层面进行的


有没有办法将此脚本直接放入我的Web服务器?

没有。您不能这样做任何用户脚本都不能更改任何扩展或浏览器设置。

甚至一个扩展也不能直接干扰其他扩展

浏览器开发人员非常努力地阻止他们发现的(合理的)此类攻击的所有向量

  • 您的最佳选择是更改web门户应用程序以处理此问题。无论如何,它都不应该信任“浏览器”中的内容(始终验证您的应用程序输入)

  • 如果你把谷歌Chrome企业版强加给你的用户,你可以。这仍然不能阻止他们禁用Tampermonkey脚本,但是您可以编写一个自定义扩展来执行相同的操作

  • 如果您完全控制了目标机器,并且根据您尚未提供的详细信息,您可以将这些机器放入。虽然我不确定这是否会阻止他们点击关闭

  • 第二个最佳选择是员工培训、辅导和(最后手段)后果——如果这是一个工作场所

  • 另一种可能性是,如果你有足够的钱和时间,你可以用Chromium的源代码制作自己的浏览器



在用户的机器上放置一个限制某些操作的可执行文件也是可能的,但几乎肯定不具有成本效益。但如果你尝试这样的方法,你将是一个傻瓜,和/或政府,和/或骗子。

不,你不能那样做任何用户脚本都不能更改任何扩展或浏览器设置。

甚至一个扩展也不能直接干扰其他扩展

浏览器开发人员非常努力地阻止他们发现的(合理的)此类攻击的所有向量

  • 您的最佳选择是更改web门户应用程序以处理此问题。无论如何,它都不应该信任“浏览器”中的内容(始终验证您的应用程序输入)

  • 如果你把谷歌Chrome企业版强加给你的用户,你可以。这仍然不能阻止他们禁用Tampermonkey脚本,但是您可以编写一个自定义扩展来执行相同的操作

  • 如果您完全控制了目标机器,并且根据您尚未提供的详细信息,您可以将这些机器放入。虽然我不确定这是否会阻止他们点击关闭

  • 第二个最佳选择是员工培训、辅导和(最后手段)后果——如果这是一个工作场所

  • 另一种可能性是,如果你有足够的钱和时间,你可以用Chromium的源代码制作自己的浏览器



在用户的机器上放置一个限制某些操作的可执行文件也是可能的,但几乎肯定不具有成本效益。但如果你尝试这样的方法,你将是一个傻瓜,和/或政府,和/或骗子。

下面是我们如何解决这个问题的

我们创建了一个新的Chrome扩展,它使用了一个用户脚本。因此,我们没有依靠捣蛋机猴子,而是建造了自己的。
此外,当管理员将其发布到组织中时,我们可以控制Chrome扩展是否可以禁用。当有人禁用扩展时,我们也可以强制安装它。

下面是我们解决问题的方法

我们创建了一个新的Chrome扩展,它使用了一个用户脚本。因此,我们没有依靠捣蛋机猴子,而是建造了自己的。
此外,当管理员将其发布到组织中时,我们可以控制Chrome扩展是否可以禁用。另外,当有人禁用扩展时,我们可以强制安装它。

我认为,在实际更改已安装的扩展的源代码之前是不可能的。随机的想法是,可能有一种方法可以使用内置的用户脚本(而不是通过用户脚本管理器运行),同时阻止访问Chrome扩展页面,我认为这不是在不实际更改已安装的Tampermonkey扩展的源代码的情况下。随机的想法是,可能有一种方法可以使用内置的用户脚本(而不是通过用户脚本管理器运行),同时阻止访问Chrome extensions页面这确实是一种方法。你也测试过隐姓埋名吗?@Xan说得对!我们无法从清单文件自动启用扩展名。但必须手动完成。在我们的案例中,这不应该是一个问题,因为内部用户不会以匿名模式打开浏览器。此外,这只是一个暂时的解决办法,确实是这样做的。你也测试过隐姓埋名吗?@Xan说得对!我们无法从清单文件自动启用扩展名。但必须手动完成。在我们的案例中,这不应该是一个问题,因为内部用户不会以匿名模式打开浏览器。此外,这只是一个临时解决方案。虽然答案的精神是正确的,但Chrome的企业部署允许按照配置中的规定强制安装扩展。然而,用武力解决问题是不可能的;关于如何处理它,请参见OP自己的回复。@Xan,很高兴知道;更新了答案。这仍然是完全错误的方法,除非你在管理一个监狱或类似的机构。而且,它仍然无法防止真正的问题,即应用程序中不适当的数据审查。这肯定是一种脆弱的方法。您完全正确地认为在中更改应用程序