Java Web Start是否要求启用Java浏览器插件?

Java Web Start是否要求启用Java浏览器插件?,java,security,applet,java-web-start,jnlp,Java,Security,Applet,Java Web Start,Jnlp,为了保护我们的用户免受Malicius小程序的攻击,我想禁用Java浏览器插件 在一个测试(JRE7)中,我注意到停用插件也会禁用JavaWebStart。我们需要使用一个Web Start应用程序,因此除了启用浏览器插件之外,似乎别无选择 这是否正确,或者是否有一种方法可以在不启用浏览器插件的情况下使用Web Start 测试步骤: 在命令窗口中,我输入以下命令 爪哇 出现以下错误框: 它的信息被翻译成 无法下载此应用程序,因为Internet上的Java是 解散。您可以通过Java

为了保护我们的用户免受Malicius小程序的攻击,我想禁用Java浏览器插件

在一个测试(JRE7)中,我注意到停用插件也会禁用JavaWebStart。我们需要使用一个Web Start应用程序,因此除了启用浏览器插件之外,似乎别无选择

这是否正确,或者是否有一种方法可以在不启用浏览器插件的情况下使用Web Start


测试步骤:

  • 在命令窗口中,我输入以下命令

    爪哇

  • 出现以下错误框:

它的信息被翻译成

无法下载此应用程序,因为Internet上的Java是 解散。您可以通过Java服务器在此系统上激活Java 控制面板

我在Java控制面板中没有看到激活“Java over Internet”的选项。当我启用浏览器插件时,可以启动JavaWebStart应用程序

如果执行JNLP文件的本地副本,则会显示相同的错误消息

jawas

jnlp文件(稍微清理):


...
...
...
...
...
...
*
在这里试试这个,它谈到在浏览器之外运行jnlp文件。您需要java来运行jnlp文件,因为您已在浏览器中禁用java插件,它可能无法从浏览器中运行应用程序。

AFAIK,“java控制面板”的“安全”选项卡上的“在浏览器中启用java内容”复选框同时控制小程序和web start。实际上,在Mac上,等效的复选框称为“启用小程序插件和Web启动应用程序”


因此,您不太可能通过Java控制面板实现这一点。但是,您可以在“控制面板”中将“全局Java”设置保持为打开状态,并在每个浏览器中分别禁用Java。

是的,我知道该复选框确实会影响插件和webstart

我看到两个选择:

  • 您可以看到,您可以增加安全权限,以尝试并确保恶意软件不会通过证书运行。选择“非常高”,如果需要在浏览器中运行代码,请将其添加到异常列表中

  • 更改每个浏览器以分别拒绝浏览器中的java。但据我所知,这对IE不起作用

  • 在浏览器中禁用Java内容

    Internet Explorer

    在IE中完全禁用Java的唯一方法是通过Java控制面板禁用Java,如上所述

    Chrome

    单击Chrome菜单,然后选择设置。
    在“设置”窗口的底部,单击“显示高级设置” 向下滚动至隐私部分,然后单击内容设置。
    在内容设置面板中,向下滚动至插件部分。
    在插件部分下,单击禁用单个插件。
    在插件面板中,滚动到Java部分。单击禁用以禁用Java插件。
    关闭并重新启动浏览器以启用更改。
    注意:或者,您可以通过在浏览器地址栏中键入about:plugins来访问插件设置

    Firefox

    从Firefox菜单中,选择Tools,然后单击Add-ons选项
    在加载项管理器窗口中,选择插件
    单击Java(TM)平台插件以选择它
    单击Disable(如果按钮显示Enable,则Java已被禁用)

    Safari

    选择Safari首选项
    选择安全选项
    选择允许插件,然后单击管理网站设置
    单击Java项目,在访问其他网站时从下拉列表中选择Block
    单击完成,然后关闭Safari首选项窗口

    在浏览器中更改java的系统范围首选项:

  • 在Java控制面板中,单击安全选项卡
  • 选择“在浏览器中启用Java内容”选项
  • 单击应用,然后单击确定以确认更改
  • 重新启动浏览器以启用更改

  • 与允许Java在浏览器上下文中执行并依赖每个浏览器分别禁用Java相比,似乎有一个更细粒度的选项:

    让您向Java运行时指定允许Java从中执行代码的URL。这样,您就不必关心用户如何配置浏览器。Java部署规则似乎是msj121中的“托管”对应项(想想:组策略)


    对我来说,这似乎是最安全的选择,因为您可以集中定义,只有您提到的一个JWS应用程序的URL可以执行,所有其他JWS应用程序或小程序都将被阻止。

    Java webstart是否作为JNLP托管,可以独立于浏览器下载和执行?这不需要启用javaplugin@ringbearer查看我的编辑和jnlp文件,它看起来像是离线执行permitted@mjn因此,如果您可以单独下载jnlp,那么它将不会在浏览器的上下文中执行,因此您不需要激活插件。但这与脱机执行无关。@haywire当我执行
    jawas
    时,会出现相同的错误消息,它可能无法从浏览器运行应用程序
    -如果我不想从浏览器运行应用程序,为什么必须启用浏览器插件?p、 你回答中的链接坏了我很糟糕,我刚刚编辑了链接?您不想从浏览器运行应用程序,然后不在浏览器中启用它。只需保存jnlp文件并按链接中所述运行即可
    只需保存jnlp文件并按链接中所述运行即可
    ——当我输入jawas时,会出现相同的错误消息Java控制面板中的此标签被误导
    <?xml version="1.0" encoding="UTF-8"?>
    <jnlp spec="1.0+" codebase="https://example.com/path/to/" href="webstartapp.jnlp">
        <information>
            <title>...</title>
            <vendor>...</vendor>
            <homepage href="..." />
            <description>...</description>
            <description kind="short">...</description>
            <description kind="tooltip">...</description>
            <offline-allowed />
        </information>
        <security>
            <all-permissions />
        </security>
        <resources>
            <j2se version="1.7+" initial-heap-size="128m" max-heap-size="256m" />
            <jar href="Client/lib/Launcher.jar" main="true" />
        </resources>
        <application-desc main-class="com.veda.launcher.Start">
            <argument>...</argument>
            <argument>*</argument>
        </application-desc>
    </jnlp>