我发现“启用操作系统的受限环境(本机沙箱)”将添加到8u51的Java控制面板中。但我找不到任何文件。
答案 0 :(得分:1)
从官方Release Notes for JDK 8 and JDK 8 Update Releases我们知道:
- 原生沙箱仅适用于Windows平台。
可以通过Java控制面板启用或禁用本机沙箱 - >高级设置 - >启用操作系统的受限环境(本机沙箱)或将
deployment.security.use.native.sandbox
属性设置为true在deployment.properties
档案中。默认情况下禁用原生沙箱。
启用本机沙箱后,沙箱小程序或Web启动应用程序将在受操作系统提供的受限环境中运行。这不会影响所有权限应用程序,它们将继续像以前一样运行。
对于“例外站点列表”(ESL)中包含的应用程序或使用部署规则集(DRS)时,将禁用本机沙箱。
使用HTML applet标记部署的沙盒小程序包含来自Class-Path清单属性的所有权限JAR文件,将在原生沙箱中运行。
在这种情况下,当这样的applet尝试访问所有权限的JAR文件时,将显示一个特殊警告对话框,通知用户applet可能无法正常工作。
在启用原生沙箱的某些情况下,将禁用自定义预加载器:
- 当沙箱小程序或Web启动应用程序初始化时,将禁用自定义预加载器,而是使用默认预加载器。初始化应用程序后,Java VM将在启用本机沙箱的情况下重新启动,并将使用自定义预加载器。
- 对于所有权限应用程序,如果自定义预加载器位于具有沙箱权限的JNLP文件中,则将禁用自定义预加载器,直到用户同意从安全对话框运行应用程序,该对话框授予应用程序无限制访问权限(特权)。
目前,没有比此更多的文件了。总而言之,在Java平台中,本机沙箱是一种特定的Windows功能,它使用操作系统中的一组API来改进沙盒。
Windows应用商店应用应使用相同的API集。有一篇关于此的文章:Windows Store Apps live in the Sandbox。它说:
在沙盒中也意味着该应用无法直接访问在应用沙盒外部运行的任何其他应用或服务。 Windows本身通过在运行时环境中使用一组定义的API来促进对其他应用程序或服务的访问。