CAC 認証のトラブルシューティング

内容
casp1032jp
内容
このセクションには、CAC 認証の使用中に、指定した問題を解決するためのトラブルシューティングのヒントが含まれています。
Java ヒープ サイズおよび OutOfMemory エラー
問題の状況:
CRL と共に 
CA Spectrum
 CAC 認証を使用すると、「Java ヒープ サイズ」や「OutofMemory」などのエラーが表示されます。
解決方法:
OneClick サーバのメモリの設定が低すぎます。これらのエラーを表示しないようにするには、以下の手順を実施します。
  1. CRL ディレクトリから、いくつかの CRL を削除します。
  2. OneClick サーバを再起動します。
  3. OneClick Web サーバのメモリ設定」で説明されているように、サーバ上で使用可能なメモリの量を増やします。
  4. CA Spectrum
     CAC 認証を再度使用します。
    注:
     このエラーが引き続き表示される場合、CRL と共に
    CA Spectrum
     CAC 認証を実行するのに十分なメモリがない可能性があります。
認証後に OneClick クライアントがロックされる
プラットフォーム: Linux のみ
問題の状況:
OneClick クライアントに対して CAC 認証を使用しています。これは Linux サーバで起動しています。runoc スクリプトを起動した後、クライアントは起動後すぐに失敗します。OneClick クライアントがロックされ、利用できなくなります。場合によっては、証明書エラーが表示されます。アプリケーションを終了する必要があります。何度か試してみると、クライアントが起動し、期待どおり動作します。
解決方法:
SSL ハンドシェイクが完了する前に、OneClick クライアントと Tomcat サーバの間の SSL 接続がタイムアウトした場合に、この状況が発生します。
この問題を解決するには、クライアントおよび Tomcat サーバに設定されているタイムアウト期間を長くします。Linux では、クライアントは OneClick の起動するためのスクリプト(runoc)を使用します。このスクリプトの -ssltimeout パラメータを変更して、SSL がハンドシェイクを完了までの時間を長くすることができます。タイムアウトを長くすると、コネクションが確立されている間にハンドシェイクを完了することができます。
まず、サーバを再設定し、接続タイムアウトを 5 分にします。
以下の手順に従います。
  1. $TOMCAT_ROOT
    /conf/ に移動します。
  2. 任意のテキスト エディタを使用して、編集のために server.xml ファイルを開きます。
  3. ファイル内で SSL Connector エレメントを探します。
  4. connectionTimeout パラメータを変更し、5 分に相当する値をミリ秒単位で入力します。
    connectionTimeout="300000"
    注:
     サーバ設定は、ミリ秒単位です。
  5. 変更を有効にするために、OneClick サーバを再起動します。
新しい -ssltimeout パラメータを使用して OneClick クライアントを起動できるようになりました。
以下の手順に従います。
  1. OneClick クライアントで runoc スクリプトを起動するディレクトリに移動します。たとえば、/opt/CA_OC とします。
  2. -ssl timeout パラメータを使用して、runoc スクリプトを呼び出します。たとえば、以下のコマンドを入力します。
    ./runoc - ssltimeout <value>
    この例では、値 300 (秒単位で 5 分に相当)を使用します。
    注:
     クライアント設定は秒単位です。
    OneClick クライアントのタイムアウト設定は 5 分となり、tomcat サーバ上で設定したタイムアウトに一致するようになりました。
OneClick クライアントの低パフォーマンス
プラットフォーム: Windows
問題の状況:
OneClick クライアントは起動に長い時間がかかります。クライアントが起動した後も、マウスのクリックやナビゲーションの操作に反応するまで、ユーザは長時間待たなければなりません。動作は非常に低速なため、ほとんど使用できません。
解決方法:
この動作は、「javaws.reuseConnections」 Java System プロパティのデフォルト設定(「false」)に起因するものです。
CA Spectrum
 の旧バージョンで、デフォルト値は「true」でした。環境内で Web プロキシやロード バランサを使用するユーザが標準設定のまま、簡単に接続を確立できるようにするため、変更を行いました。接続を再利用せずに、SSL 証明書の確認が、クライアントからサーバへのすべてのリクエストで実行されます。この作業は、ラウンドトリップの観点から見ると、コストがかかります。
「javaws.reuseConnections」 Java Runtime System プロパティの値を「true」に変更します。
プロパティ設定を変更するには、oneclick.jnlp ファイルを編集します。
以下の手順に従います。
  1. 以下のディレクトリに移動します。
    <$SPECROOT>/tomcat/webapps/spectrum/
  2. 任意のテキスト エディタを使用して、編集のために oneclick.jnlp ファイルを開きます。
  3. 「<resources>」行のすぐ下に、次の行を追加します。
    <property name="javaws.reuseConnections" value="true"/>
  4. 開いている OneClick クライアントをすべて再起動します。
OneClick クライアントの低パフォーマンス
プラットフォーム: Linux
問題の状況:
OneClick クライアントは起動に長い時間がかかります。クライアントが起動した後も、マウスのクリックやナビゲーションの操作に反応するまで、ユーザは長時間待たなければなりません。動作は非常に低速なため、ほとんど使用できません。
解決方法:
この動作は、「javaws.reuseConnections」 Java Runtime System プロパティのデフォルト設定(「false」)に起因するものです。
CA Spectrum
 の旧バージョンで、デフォルト値は「true」でした。環境内で Web プロキシやロード バランサを使用するユーザが標準設定のまま、簡単に接続を確立できるようにするため、変更を行いました。接続を再利用せずに、SSL 証明書の確認が、クライアントからサーバへのすべてのリクエストで実行されます。この作業は、ラウンドトリップの観点から見ると、コストがかかります。
「javaws.reuseConnections」 Java runtime プロパティの値を「false」から「true」に変更します。
Linux のクライアントのプロパティ設定を変更するには、runoc スクリプトを編集します。
以下の手順に従います。
  1. runoc スクリプトをインストールしたディレクトリに移動します。
  2. 以下のように、スクリプトの最後の行に「-Djavaws.reuseConnections=true」を追加します。
    $JRE_HOME/bin/java -Djavaws.reuseConnections=true -classpath
  3. スクリプトを保存します。
  4. 開いている OneClick クライアントをすべて再起動します。
OneClick コンソールが[コンソールの開始]を起動しない
プラットフォーム: Windows
問題の状況:
CAC を有効にすると、[コンソールの開始]が OneClick コンソールから起動されません。
解決方法:
この動作は、Java コントロール パネルの「TLS 1.2 の使用」の設定によるものです。 
OneClick コンソールを開く前に、Java コントロール パネルの「セキュリティの詳細設定」から「TLS 1.2 の使用」オプションを無効化する必要があります。
以下の手順に従います。
  1. コマンド プロンプトを開きます。
  2. 以下のコマンドを入力して、Java コントロール パネルを起動します。
    javaws -viewer
  3. [詳細設定]タブをクリックします。
  4. [セキュリティの詳細設定]セクションに移動し、[TLS 1.2 の使用]オプションを無効化します。
  5. [OK]をクリックして、変更を保存します。
証明書パスを構築できない
問題の状況:
「証明書パスを構築できません」というエラーが表示されます。
解決方法:
このエラーは、SSL が設定されているが、クライアント認証用のオプションが「true」に設定されていない場合に発生します。ユーザが 
CA Spectrum
 CAC 認証で OneClick サーバにアクセスしようとする場合、CAC 証明書を事前に提示しません。その結果、
CA Spectrum
 CAC 認証は証明書のパスを構築しようとしますが、使用できる証明書がありません。
OneClick サーバでのセキュア ソケットの設定」を参照してください。clientAuth が「true」に設定されていることを確認し、OneClick サーバを再起動します。
証明書ステータスを判断できない
問題の状況:
「証明書ステータスを判断できません」というエラーが表示されます。
解決方法:
このエラーは通常、CRL の有効期限が切れたときに発生します。認証局から新しい CRL を取得し、古い CRL を置き換えます。OneClick サーバを再起動します。
証明書が失効した
問題の状況:
「証明書が失効しました」エラーが表示されます。
解決方法:
このエラーは、CAC 証明書が失効していることを示しています。CRL のエンティティによって、または OCSP レスポンダが証明書が有効ではなくなったことを示しているために失効が発生します。