ClickOnce是沙盒技术,具有不可选择的功能吗?

时间:2011-12-09 20:06:52

标签: .net clickonce sandbox

我在一个锁定的公司机器上点击一次(ssh!不要告诉任何人),并且一旦安装成功并运行,就像是便携式应用程序一样,即使我不是管理员,没有安装权。

然后我创建了一个测试.NET应用程序和一个ClickOnce安装程序。作为开发人员,我不得不选择加入沙箱。 (如果我是一个恶意开发人员,我显然不会选择加入任何沙盒)当我戴上我的最终用户帽并尝试安装它时,我得到了一个黄色的盾牌以及我应该如何担心互联网,但是没有关于此应用程序可能执行的操作的其他线索,不像Android商店应用程序。

ClickOnce是否提供任何沙箱?是不是有意成为沙盒技术,或者它只是.msi或setup.exe文件的替代品?

1 个答案:

答案 0 :(得分:3)

ClickOnce不是SandBox,但它确实允许SandBoxing。

ClickOnce应用程序缓存中安装了ClickOnce应用程序,该缓存特定于用户(并存储在用户文件夹中的模糊文件夹中。)但是,如果任何网络管理设置阻止用户执行某些任务,ClickOnce不会“神奇地”启用它们。

相反,ClickOnce为开发人员提供了一种在上下文中发布应用程序的方法,该应用程序允许用户安装软件包,即使他们未获得安装系统范围软件的直接权限。 ClickOnce应用程序还有一个数据文件夹,可以存储可以在更新或卸载/重新安装周期中保留的信息。即使具有该功能,开发人员也可以创建一个可以在Windows中执行任何操作的应用程序。但是,当用户启动应用程序时,如果他们没有执行此类任务的关联权限,则应用程序将收到权限异常。

我希望能让它更加清晰。如果生效,ClickOnce应用程序对提升权限并不特殊。 ClickOnce应用程序与通过MSI安装时的对应部分没有什么不同,但可执行文件和工作数据的存储位置除外。一种机制对安装程序的限制比另一种机制少一些。就是这样。