如何让JavaWebStart使用Windows证书存储下载jar文件?
我遇到了以下情况:我们有一个使用JavaWebStart的应用程序,它部署在客户站点上。分发应用程序的服务器也安装在客户站点上。现在,一些客户要求我们使用SSL来更好地将应用程序集成到他们现有的系统中(这些系统只使用SSL),并且至少有一些客户使用他们自己的认证链 为了将支持降至最低,我最初的目标是要求客户将其根证书安装到单个密钥库中。但是,该应用程序是从第三方应用程序启动的,该应用程序使用.NET dll(由我们提供)启动我们的应用程序,现在还需要使用SSL从服务器下载jnlp文件。因此,对于只使用单个密钥库的问题,我目前的解决方案是在我们自己的Java应用程序中使用Windows密钥库如何让JavaWebStart使用Windows证书存储下载jar文件?,java,ssl,https,java-web-start,Java,Ssl,Https,Java Web Start,我遇到了以下情况:我们有一个使用JavaWebStart的应用程序,它部署在客户站点上。分发应用程序的服务器也安装在客户站点上。现在,一些客户要求我们使用SSL来更好地将应用程序集成到他们现有的系统中(这些系统只使用SSL),并且至少有一些客户使用他们自己的认证链 为了将支持降至最低,我最初的目标是要求客户将其根证书安装到单个密钥库中。但是,该应用程序是从第三方应用程序启动的,该应用程序使用.NET dll(由我们提供)启动我们的应用程序,现在还需要使用SSL从服务器下载jnlp文件。因此,对于
KeyStore.getInstance("Windows-ROOT");
然后将其送入SSLSocketFactory。此外,通过这种方式,.NETDLL也可以加载jnlp文件,而不会出现任何问题
然而,剩下的最后一步是让JavaWebStart从服务器下载jar文件,而不必将证书安装到一个Java密钥库中,到目前为止我还没有实现这一点。这就是我的问题:
有没有办法将Java WebStart(仅Java WebStart程序本身)配置为使用Windows证书存储来验证证书?这只是对其他对此主题感兴趣的人的一个更新:到目前为止,我还没有找到一个解决方案来实现这一点。但是,如果您没有其他依赖项(如我的例子中的.NET),您也可以尝试通过检查系统属性(通过WebStart运行时)来加载Java WebStart正在使用的存储。我认为我的问题将完全通过您编写的部分解决方案得到解决“使用keystore.getInstance(“Windows根目录”)在我们自己的Java应用程序中使用Windows密钥库;你能解释一下怎么把它送到SSLSocketFactory吗?我还没弄清楚。