【问题标题】:Applet debugging issue- applet security warning not displaying when certificates removed小程序调试问题 - 删除证书时不显示小程序安全警告
【发布时间】:2011-03-21 10:31:56
【问题描述】:

我们有一个签名的 Java 小程序,它通过 javascript 从 aspx 调用(我们并不是真正的 Java 开发商店,主要是 C# 开发人员)。

我需要通过这个小程序进行调试,但我遇到了一个在我同事的机器上看不到的问题。

为了将 netbeans 调试器附加到小程序,我们通常通过 Java 控制面板从“受信任的证书”存储中删除所有证书,删除所有缓存的小程序(通过 Java 控制面板),然后在下载小程序时运行,我们看到安全警告。此时我们可以附加 netbeans 调试器,好的安全警告(检查“始终信任”复选框),然后在小程序代码中遇到断点,从那里进行调试。

但是,无论我做什么,我都没有看到安全警告,这使得附加到小程序有点困难。我删除了我们的证书,删除了所有缓存的小程序,我什至“抓住了稻草”并删除并重新安装了 JDK(我们使用的是 1.6 更新 7、更新 10 和更新 20;我们知道的所有更新都适用于我们的实现)。我就是无法显示安全警告。

就像我已经永久打开了“始终信任”标志。

感谢您的任何想法。

【问题讨论】:

    标签: java security debugging netbeans applet


    【解决方案1】:

    安全警告仅在小程序签名时出现。否则小程序没有任何权限,所以认为没有必要显示警告。

    您可以简单地使用新的(不受信任的、自签名的)密钥对您的小程序进行签名,也许这会有所帮助。

    【讨论】:

    • 我们正在使用我们颁发的证书签署应用程序(我们的用户应该信任我们 )但我可以生成一个新证书并用它签署小程序,这应该会产生警告。谢谢,如果使用另一个答案中提到的挂起选项没有成功,我可能会尝试
    • 我最后对小程序进行了自签名只是为了获得安全警告。这很有效,非常感谢您的帮助!现在我无法附加调试器,但这是另一个问题(它是:link
    【解决方案2】:

    您可以尝试使用(非嵌入式)Java Web Start 启动小程序。使用 JWS 启动您将失去 JS 功能,但应该重新获得对权限的轻松控制。

    【讨论】:

    • 谢谢,我对 Java 生态系统有点陌生。不要以为您知道一个很好的教程来解释如何最好地使用 JWS 通过小程序进行调试。
    【解决方案3】:

    抱歉,这不是您问题的直接答案,但如果您想要在启动时暂停 JVM 以进行调试,您可以在 JVM 选项中使用 suspend=n 选项,如下所示:

    -Djava.compiler=NONE -Xnoagent -Xdebug -Xrunjdwp:transport=dt_socket,address=2502,server=y,suspend=n
    

    这样,JVM 会自动挂起,等待来自调试器的连接。

    【讨论】:

    • 我在 JRE 的运行时参数 '-agentlib:jdwp=transport=dt_shmem,address=jdbconn,server=y,suspend=n' 中有以下内容和它似乎没有暂停。
    • 我只是用suspend=y试了一下,也没有运气。我对运行时参数有点不知所措。因此,我们将不胜感激。
    猜你喜欢
    • 2017-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-08
    • 1970-01-01
    • 2011-04-16
    • 2012-10-14
    相关资源
    最近更新 更多