【问题标题】:RMI over SSL, How do I integrate truststore and keystore into application?RMI over SSL,如何将信任库和密钥库集成到应用程序中?
【发布时间】:2012-11-30 12:42:37
【问题描述】:

我按照SSL/TLS-based RMI Socket Factories的教程进行操作

而且我已经能够生成密钥库和信任库。 目前只有服务器对自己进行身份验证。

当我将 keystore 和 trustore 文件放在我的 Eclipse 项目的根文件夹中并在 Windows 控制台中手动启动(或在 Eclipse 中添加 VM 参数)时:

$ java -Djavax.net.ssl.trustStore=truststore -Djavax.net.ssl.trustStorePassword=trustword RmiRegistry &

$ java -Djavax.net.ssl.keyStore=keystore -Djavax.net.ssl.keyStorePassword=password HelloImpl &

$ java -Djavax.net.ssl.trustStore=truststore -Djavax.net.ssl.trustStorePassword=trustword HelloClient

一切正常。现在,如果我想发送我的申请(这是为了分配)。我可以将 trustore 和 keystore 放在哪里以及如何让更正器启动

$ java RmiRegistry &

而不是

 $ java -Djavax.net.ssl.trustStore=truststore -Djavax.net.ssl.trustStorePassword=trustword RmiRegistry &

【问题讨论】:

    标签: java authentication ssl rmi


    【解决方案1】:

    您需要在 Java 运行时环境的 cacerts 文件中添加一个新的受信任机构。该文件位于$JRE_HOME/lib/security/。默认密码为changeit

    或者,您可以在代码中配置启动时的属性:

    System.setProperty("javax.net.ssl.trustStore", "path to truststore");
    System.setProperty("javax.net.ssl.trustStorePassword", "trustStorePassword");
    
    System.setProperty("javax.net.ssl.keyStore", "path to keystore");
    System.setProperty("javax.net.ssl.keyStorePassword", "keyStorePassword)";
    

    【讨论】:

    • 我需要将这些行放在每个 main 的开头吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-24
    • 2010-09-24
    • 2018-11-11
    相关资源
    最近更新 更多