我需要在Intranet中使用Java applet安装我们的网站。这将在Apache下运行,并包含部署所需的所有applet的JNLP和JAR文件。与this question相反,我的Java小程序由Thawte证书签名。
主要问题如下:可信证书签署的Java小程序是否会在Intranet中的客户端计算机上启动?
由于在applet启动之前我不知道如何验证证书,我无法回答我自己的问题。我发现this article解释了证书的撤销选项,但我不确定撤销检查是否与第一个applet启动时证书的验证相同。
我通过在客户端计算机上禁用Internet连接并设置到本地服务器的有线连接来执行测试。我也不确定这样的测试是否干净,因为我的客户端计算机在连接到Internet之前运行了这个签名的applet。无论如何,在测试之前我去了Java Control Panel
> Security
> Manage Certificates
并从Trusted Certificates
中删除了证书。当我每次收到Security Warning
对话框打开包含applet的页面时:
您想运行此应用程序吗?
运行此应用程序可能存在安全风险
风险:此应用程序将以不受限制的访问方式运行,这可能会使您的计算机和个人信息面临风险。提供的信息不可靠或未知,因此除非您熟悉其来源,否则建议不要运行此应用程序
无法确保用于识别此应用程序的证书尚未被撤销
接受风险会将证书添加到Java控制面板中的受信任证书列表中。这是否意味着Java或/和Web浏览器自己识别证书?
在客户端计算机上的Java控制面板中将Perform certificate revocation checks on
选项设置为Do not check (not recommended)
可获得所需的结果 - 将提示用户像往常一样启动已签名的applet,并可在将来禁用此类消息。设置此选项是否足以在Intranet中运行applet?
答案 0 :(得分:1)
答案是肯定的,但关闭撤销检查会给您的客户带来安全风险。仅当运行applet的计算机位于托管网络(如公司网络)且没有Internet连接时,才建议这样做。请记住,吊销检查是一个全局选项,无法针对每个小程序或域进行设置。 您也可以查看this thread。