TLS(Transport Layer Security)の設定

Contrast Javaエージェントは、Contrastサーバと通信するために安全なTLS接続を使用しています。

ContrastのSaaS版では、セキュリティが強力な「TLS 1.2」接続を行い、業界標準の認証局(CA)によって署名された証明書を使用しています。 ただし、オンプレミス版をご利用のお客様は、エンタープライズCAを使用するためにJavaエージェントを設定し、JavaエージェントがTLSハンドシェイクでクライアント証明書を送信するよう設定する必要があります。

Contrast Javaエージェントは、TLSの構成に標準のJava暗号化アーキテクチャ(JCA)を使用しています。具体的に、Javaエージェントは、システムの「TLS」のjavax.net.ssl.SSLContextを使用します。そのため、ほとんどのユーザは、標準のjavax.net.ssl.trustStoreシステムプロパティを使用して、エージェントが信頼できる証明書を指定できます。また、標準のjavax.net.ssl.keyStoreシステムプロパティを使用して、TLSサーバがクライアント証明書を要求する際にエージェントから送信される証明書を指定することもできます。

以下は、カスタムキーストアとトラストストアを使用して、Javaエージェントを設定している例です。

java \
  -javaagent:contrast.jar \
  -Djavax.net.ssl.trustStore=/etc/pki/tls/my-enterprise-truststore.p12 \
  -Djavax.net.ssl.trustStorePassword=changeit \
  -Djavax.net.ssl.trustStoreType=PKCS12 \
  -Djavax.net.ssl.keyStore=/etc/pki/tls/server-client-certificate.p12 \
  -Djavax.net.ssl.keyStorePassword=password \
  -Djavax.net.ssl.keyStoreType=PKCS12 \
  -jar my-server.jar