SSL を介したリモートサーバーへのセキュアな接続を行うには、ColdFusion のすべての現在のバージョンは ColdFusion の証明書 truststore に存在するリモートシステムの SSL 証明書が必要です。これには、<cfdocument>、<cfhttp>、<cfldap> などからのコールがあります。既定の truststore は JRE の cacerts ファイルです。通常、このファイルは次の場所にあります。
- サーバーの設定: cf_root/runtime/jre/lib/security/cacerts
- JRun 4 設定の Multiserver/J2EE :
jrun_root/jre/lib/security/cacerts - Sun JDK インストール: jdk_root/jre/lib/security/cacerts
- 他の J2EE アプリケーションサーバーおよび Java 仮想マシン(JVM)については、マニュアルを参照してください。
Java keytool (または GUI ラッパー)を使用して、リモートサーバーの SSL 証明書を ColdFusion の truststore にインポートします。keytool は Java SDK の一部で、通常は次の場所にあります。
- サーバーの設定:
cf_root/runtime/bin/keytool - JRun 4 設定の Multiserver/J2EE :
jrun_root/jre/bin/keytool - Sun JDK インストール:
jdk_root/bin/keytool - 他の J2EE アプリケーションサーバーおよび Java 仮想マシン(JVM)については、マニュアルを参照してください。
Java 1.4.2 keytool には次のインポート用の構文が用意されています。
-import [-v] [-noprompt] [-trustcacerts] [-alias <alias>] [-file <cert_file>] [-keypass <keypass>] [-keystore <keystore>] [-storepass <storepass>] [-storetype <storetype>] [-provider <provider_class_name>]
Java 1.6.0 keytool には次のインポート用の構文が用意されています。
-importcert [-v] [-noprompt] [-trustcacerts] [-protected] [-alias <alias>] [-file <cert_file>] [-keypass <keypass>] [-keystore <keystore>] [-storepass <storepass>] [-storetype <storetype>] [-providername <name>] [-providerclass <provider_class_name> [-providerarg <arg>][-providerpath <pathlist>]
この証明書は識別符号化規則(DER)形式の X.509 証明書でなければなりません。
リモートサーバーの証明書を証明書ファイルから JRE の truststore にインポートするには、コマンドプロンプトに以下を入力します。
keytool -import -v -alias someServer-cert -file someServerCertFile.cer -keystore JAVA_HOME\jre\lib\security\cacerts -storepass changeit
例:
C:\JRun4\jre\bin>keytool -importcert -v -alias wa-cert -file C:\temp\test.cer -keystore C:\JRun4\jre\lib\security\cacerts -storepass changeit
JAVA_HOME の場所は、「java.home」引数を持つ jvm.config からコピーできます。「java.home」引数は、JRE (Java ランタイム環境)のパスの値を受け入れます。
デフォルトでは、jvm.config は以下にあります。
Coldfusion スタンドアローン: C:\ColdFusion8\runtime\bin
Coldfusion Multiserver : C:\JRun4\bin
cacerts truststore の初期設定のパスワードは「changeit」です。次の単一のコマンドを使用して、インポートを確認できます。
keytool -list -v -keystore JAVA_HOME\jre\lib\security\cacert -alias myServer-cert -storepass changeit
例:
C:\JRun4\jre\bin>keytool -list -v -keystore C:\JRun4\jre\lib\security\cacerts -alias wa-cert -storepass changeit
メモ:基礎となる J2EE サーバーとして JRun を使用し(サーバー設定または JRun 設定の Multiserver/J2EE のいずれか)、内部 JRun Web サーバー(JWS) 用の SSL を有効にしている場合は、この証明書を Secure JWS 用の jrun.xml ファイルに定義された truststore にインポートする必要があります(JRE keystore ではなく)。デフォルトでは、ファイルは「trustStore」であり、一般に JRun 構成の Multiserver/J2EE については jrun_root/lib に、または ColdFusion Server 構成については cf_root/runtime/lib に位置します。同じ Java keytool を使用して trustStore を管理します。
追加情報
- ColdFusion MX: LDAP ディレクトリサーバーとのセキュアな SSL 接続の設定(技術ノート tn_19139)
- Java プラットフォームセキュリティ関連ツールの概要