証明書認証の使用(パスワードなし)

証明書認証(パスワードなし)を使用するには、次の手順を実行します。

  1. クライアント証明書をDER形式に変換します。
$ openssl x509 –in postgresql.crt -out postgresql.crt.der -outform
der
  1. クライアントキーをDER形式に変換します。
$ openssl pkcs8 -topk8 -outform DER -in postgresql.key -out
postgresql.key.pk8 –nocrypt
  1. クライアントファイル(postgresql.crt.der、postgresql.key.pk8)とルート証明書をクライアントマシンにコピーし、Javaプログラムで次のプロパティを使用してテストします。
String url = "jdbc:edb://snvm001:5444/edbstore";
     Properties props = new Properties();
     props.setProperty("user","enterprisedb");
     props.setProperty("ssl","true");
     props.setProperty("sslmode","verify-full");
     props.setProperty("sslcert","postgresql.crt.der");
     props.setProperty("sslkey","postgresql.key.pk8");
     props.setProperty("sslrootcert","root.crt");
  1. Javaプログラムをコンパイルしてテストします。
$ java -Djavax.net.ssl.trustStore=mystore -classpath
.:./edb-jdbc18.jar pg_ssl public