0

我遵循了基于 SSL/TLS 的 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

一切正常。现在,如果我想发送我的申请(这是为了分配)。我可以将信任库和密钥库放在哪里以及如何允许更正器启动

$ java RmiRegistry &

而不是

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

1 回答 1

0

您将需要向 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)";
于 2012-11-30T14:16:42.777 回答