什么是网页java小程序可以在我的计算机上访问?

时间:2016-11-29 18:40:46

标签: java security applet

那么,在我在网络浏览器中运行applet之前,我需要在发布商中拥有多少信任?

换句话说,我知道java applet是在浏览器的沙箱中运行的,但是this article表明applet实际上可以访问存储在本地计算机上的文件。

请您澄清在现代浏览器(如Firefox 50)中运行的Java applet的安全限制吗?

1 个答案:

答案 0 :(得分:3)

  

我知道java applet是在浏览器的沙箱中运行的,但本文建议applet实际上可以访问存储在本地计算机上的文件。

Java applet可能存在三个不同级别的安全性。

  1. 第一个是你描述的'沙盒'。他们只能从他们自己的服务器访问资源,本地文件系统上没有任何内容,除非他们是使用Java Web Start& amp;从而可以访问JNLP API的服务。

    您可能会注意到其中两项服务是FileOpenService / FileSaveService!如果小程序使用这些,将通过一个对话框提示最终用户允许该操作,该对话框说明小程序正在尝试做什么,并要求允许继续(显示文件选择器并从那里开始)。这些服务提供了一个“文件类似”对象,它比普通File API提供的更有限。例如,它不会提供资源的路径,只是它的名称和对内容的访问权。
  2. 可以在启动文件中指定级别 - '(J2EE)应用程序客户端权限'。此级别将删除使用JNLP API服务的提示。
  3. 通过请求和授予“所有权限”获得最高级别的访问权限。然后,applet应该具有对File个对象的完全访问权限,能够与启动它的服务器之外的服务器进行通信,等等。在这种模式下,他们仍然不允许做的少数事情之一是调用System.exit(n)有效地“杀死JRE” - 这是其他桌面应用程序中常见的事情。
  4. 但是后来有JRE错误,这就搞砸了。 Sun,然后是Oracle,保持安全性非常低(并且经常),以至于许多浏览器制造商完全取消了对网页中applet(以及其他需要插件的嵌入式对象)的支持。

    有关详细信息,请参阅Java Plugin support deprecatedMoving to a Plugin-Free Web

      

    ..在我在网络浏览器中运行applet之前,我需要在发布商中拥有多少信任?

    我无法为你回答,但我认为我需要亲自了解他们,并且在我控制的任何浏览器中运行他们的代码之前完全信任他们的完整性能力

    话虽如此,我认为我没有安装单个浏览器甚至支持小程序,而且我完全没有动力去设置内容,这可能是一个很好的观点,我是否' d允许小程序在这台PC上运行。