对Java小程序进行签名

对Java小程序进行签名,java,swing,applet,signed-applet,Java,Swing,Applet,Signed Applet,我已经使用Verisign证书签署了一个Java小程序jar 当Java小程序从html/javascript运行时,会出现一个对话框,询问未知证书是否需要信任&Java应用程序是否应该运行。单击Run按钮(表示同意)并选中(勾选)复选框(表示每次都不会询问用户)时,将显示Java小程序窗口 请确认即使在使用属于受信任的第三十方认证机构(CA)的证书(如Verisign)对Java小程序进行签名后,请求确认是否运行不受信任的Java应用程序的第一个警报对话框是否正常被询问 这取决于浏览器的配置。

我已经使用Verisign证书签署了一个Java小程序jar

当Java小程序从html/javascript运行时,会出现一个对话框,询问未知证书是否需要信任&Java应用程序是否应该运行。单击Run按钮(表示同意)并选中(勾选)复选框(表示每次都不会询问用户)时,将显示Java小程序窗口


请确认即使在使用属于受信任的第三十方认证机构(CA)的证书(如Verisign)对Java小程序进行签名后,请求确认是否运行不受信任的Java应用程序的第一个警报对话框是否正常被询问

这取决于浏览器的配置。除非证书的签名者是浏览器已配置为自动接受的签名者,否则仍将提示用户至少接受一次证书


请记住,您的代码正在请求在用户的计算机上执行特权操作的权限。仅仅因为您的身份已由受信任的第三方验证,并不意味着用户必须自动信任您的代码,这取决于浏览器的配置。除非证书的签名者是浏览器已配置为自动接受的签名者,否则仍将提示用户至少接受一次证书


请记住,您的代码正在请求在用户的计算机上执行特权操作的权限。仅仅因为您的身份已被可信的第三方验证,并不意味着用户必须自动信任您的代码

,以澄清Dan的回答:是的,它总是第一次询问用户。这是Java插件的默认配置。配置可以更改,但这将是一种非常糟糕的做法。

为了澄清Dan的回答:是的,它总是在第一次询问用户。这是Java插件的默认配置。配置可以更改,但这是一种非常糟糕的做法。

PS出于好奇,小程序为什么要签名?据我所见,考虑到现代浏览器的所有本机功能,现在不太需要签名小程序。我能想到的主要例外是批量文件上传,以及像任何使用用户相机或麦克风的媒体一样的实时媒体。问题的第一行非常清楚地指出,“我已经使用Verisign证书签署了Java小程序jar。”PS出于好奇,你的小程序为什么要签名?据我所见,考虑到现代浏览器的所有本机功能,现在不太需要签名小程序。我能想到的主要例外是批量文件上传,以及像任何使用用户相机或麦克风的媒体一样的实时媒体。问题的第一行非常清楚地指出,“我已经使用Verisign证书签署了Java小程序jar。”我还指的是机构IT部门的常见做法,即在浏览器中预装自动信任的某些“作者”。@Sarel Botha根据您的回答,我们是如何更改JRE插件的配置的,这样它就不会要求用户许可。我们可以通过编程或手动方式完成吗?查看java控制面板。我不知道你是否能用最新的JRE完全关闭提示。在64位计算机上使用以下命令:
C:\ProgramFiles(x86)\Java\jre7\bin\javaws.exe-viewer
。您可能可以通过编程方式编辑%USERPROFILE%\AppData\LocalLow\Sun\Java\DeploymentBy“configuration”中的文件来实现这一点。我还指的是机构IT部门的常见做法,即使用某些“作者”预加载浏览器自动信任。@Sarel Botha根据您的回答,我们如何更改JRE插件的配置,使其不会请求用户权限。我们可以通过编程或手动方式完成吗?查看java控制面板。我不知道你是否能用最新的JRE完全关闭提示。在64位计算机上使用以下命令:
C:\ProgramFiles(x86)\Java\jre7\bin\javaws.exe-viewer
。通过编辑%USERPROFILE%\AppData\LocalLow\Sun\Java\Deployment中的文件,您可能可以通过编程实现这一点