【问题标题】:Java WebStart permission differences between XP and Vista/Windows 7XP 和 Vista/Windows 7 之间的 Java WebStart 权限差异
【发布时间】:2011-07-27 22:52:47
【问题描述】:

我在尝试在 Windows Vista 或 Windows 7 上运行生产 Java WebStart 应用程序时遇到问题。此 WebStart 应用程序是受信任的,并且应该具有读取/写入/加载 dll 和其他本机库的完全权限。

它在 Windows XP 上完美地完成了这一切,但在 Vista/Windows 7 上却无法访问某些 dll。

如果我完全在本地运行应用程序而不是 WebStart,它可以访问 dll。

我发现了以下链接:http://www.java.com/en/download/help/6000061000.xml

这基本上解释了无论您喜欢与否,Vista/Windows 7 上的 WebStart 应用程序不会也永远不会以完全相同的权限运行。

除了完全放弃 WebStart 之外,有人知道提高安全性的解决方法吗?有没有其他人遇到过类似的问题,即使您没有弄清楚,您尝试过哪些无效的方法?也欢迎任何其他建议。

【问题讨论】:

  • 更新:我禁用了 UAC,关闭了受保护区域,以管理员身份运行所有可能的操作,除了牺牲我在祭坛上出生的第一个孩子。
  • 您将无法将链接更新到它现在在 Oracle 下的位置,对吗?
  • @Chris Aldritch,我讨厌甲骨文这样做!我再也找不到这些信息了,但如果我找到了,我会发布它。

标签: java dll windows-7 windows-vista java-web-start


【解决方案1】:

问题在于,尽管 applet 或 webstart 应用程序具有提升的权限,但它们都放置在 LocalLow 目录下的 Java 插件缓存中。

LocalLow 目录在 Vista 和 Windows 7 中设置为 Low Integrity。

这意味着虽然小程序或 Web 启动应用程序可能在计算机上具有完全的读/写权限,但由于可执行文件是从低完整性目录运行的,它们只被允许访问低完整性文件和文件夹也是。

我解决这个问题的方法是将 Java 插件缓存文件夹定位在 LocalLow 下,并将其完整性级别更改为 Medium。除非明确设置或系统文件夹,否则默认情况下所有文件夹都被视为中等完整性。

我是怎么做到的?我下载并使用了一个漂亮的命令行工具,叫做 chml http://www.minasi.com/apps/

虽然我意识到我造成了安全风险,但我认为它仅限于具有所有权限的 Java 插件应用程序,本质上,它的安全性不亚于简单地使用 XP,事实上更安全,因为这些 Java 应用程序仍然无法访问系统文件夹或资源。

【讨论】:

    猜你喜欢
    • 2011-01-16
    • 1970-01-01
    • 2010-12-09
    • 1970-01-01
    • 2010-12-04
    • 2011-02-25
    • 2012-02-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多