Windows 証明書ストア

Windows 証明書ストアを使用すると、サーバーとの SSL 通信のために、クライアントの証明書と秘密鍵を Windows 証明書ストアに格納できます。

クライアント向けの Windows 証明書ストアは新しい機能で、SSL 通信証明書および秘密鍵を、Insight/Certificates/<CertName>.pem ファイルではなく、Windows 証明書ストアに格納できます。Windows 証明書ストアの使用は、他のアプリケーションに証明書ストアを使用する場合、および 1 か所で証明書管理を行いたい場合に適しています。また、Windows 証明書ストアが提供するその他の Windows 監査ログを使用したいユーザーに適しています。

メモ

ライセンスサーバーを使用したライセンスは、既存の <Common Name>.pem ファイルを使用して管理されており、証明書ストアから取得した証明書は、指定したサーバーとの通信にのみ使用されます。

前提条件

  1. certmgr.msc ファイルへのアクセス権を持っていて、証明書と鍵を Personal ストアにインポートできる必要があります。(これは、デフォルトではほとんどの Windows ユーザーに当てはまります。)

  2. 設定を行うユーザーは、OpenSSL コマンドラインツールのコピーを持っている必要があります。

  3. サーバーおよびクライアントは、カスタム証明書の使用Certificates ディレクトリではなく、Windows 証明書ストアにクライアント証明書を格納するための手順が記されています)で説明されているとおりに、既にカスタム SSL 証明書を使用するように設定されている必要があります。

Windows 証明書ストアの設定

クライアント向けの Windows 証明書ストアは、次の手順で有効になります。

手順 1:ユーザーの SSL 証明書および秘密鍵を Windows 証明書ストアに読み込む。

カスタム証明書の使用で、SSL 証明書および鍵を次のディレクトリに配置するように指示されます。

< 
<filepath>
  DWB Install folder 
</filepath>>\Certificates\

証明書の名前は <Common Name>.pem(Analytics Server 1.pem など)になります(trust_ca_cert.pem ファイルではありません)。

証明書と秘密鍵が読み込めるようになる前に、.pem 形式から .pfx 形式(pkcs12.pfx など)に変換しておく必要があります)。

  1. コマンドプロンプトまたはターミナルを開き、次のディレクトリに移動します。

    <CommonName>.pem c: cd \<DWB Install folder \Certificates
    
  2. 次の引数(および実際の openssl ファイル名)で .pem を実行します。

    openssl pkcs12 -in "<Common Name>.pem" -export -out "<Common Name>.pfx"
    

    書き出しパスワードを求めるメッセージが表示されたら、Enter キーを押して入力をスキップします。

  3. ファイル名を指定して実行、スタートメニューまたはコマンドラインから certmgr.msc を実行します。

  4. 現在のユーザーの​個人​証明書ストアを開きます。

  5. 証明書​を右クリックして、すべてのタスクインポート​をクリックします。

    現在のユーザー」オプションが選択されていることを確認して、「次へ」をクリックします。

  6. 参照」をクリックし、以前作成した <CommonName>.pfx ファイルを選択します。ファイル拡張子ドロップダウンボックスを X.509 証明書から Personal Information Exchange または​すべてのファイル​のどちらかに変更する必要があります。

    ファイルを選択して、「開く」をクリックし、「次へ」をクリックします。

  7. パスワードは入力せず、「このキーをエクスポート可能にする」および「すべての拡張プロパティを含める」オプションのみが選択されていることを確認します。

    次へ」をクリックします。

  8. 証明書をすべて次のストアに配置する」が選択されていることと証明書ストアが「個人」にリストされていることを確認します。(上級ユーザーの場合、この時点で別のストアを選択できますが、後で設定を変更する必要があります。)

  9. 「次へ」​をクリックし、「完了」​をクリックします。インポートが成功したことを示すダイアログボックスが表示されると、ストアの証明書フォルダーに証明書が表示されます。

    メモ

    発行先」および「発行者」フィールドには特に注意を払います。これらは、次の手順で必要になります。

手順 2:Insight.cfg ファイルを編集する。

Insight.cfg ファイルは、Data Workbench に Windows 証明書ストア機能を使用することを指示するために、編集する必要があります。このファイルの各サーバーエントリには、いくつかの追加のパラメーターが指定されている必要があります。パラメーターが省略されると、ワークステーションは既存の証明書設定を使用するデフォルト設定になります。パラメーターが指定されているが誤った値の場合、ワークステーションはエラー状態を入力し、ユーザーはエラー情報についてログファイルを参照する必要があります。

  1. Insight.cfg ファイルを開きます(Insight インストールディレクトリにあります)。

  2. 設定したいサーバーエントリまでスクロールします。すべてのサーバーで Windows 証明書ストアを使用したい場合、serverInfo オブジェクトのベクトルにあるすべてのエントリに対して、これらの修正を行う必要があります。

  3. Insight.cfg ファイル内に、次のパラメーターを追加します。この作業は、ワークステーションから実行するか、これらのパラメーターを手動で serverInfo オブジェクトに追加することで実行できます(このファイルでは、タブ文字ではなく必ず通常のスペースを使用してください。また、スペルや文法の間違いがないように注意してください)。

    SSL Use CryptoAPI = bool: true  
    SSL CryptoAPI Cert Name = string: <Common Name>  
    SSL CryptoAPI Cert Issuer Name = string: Visual Sciences,LLC  
    SSL CryptoAPI Cert Store Name = string: My 
    

    bool 型のパラメーターは、この機能を有効または無効に設定するものです。証明書名は、証明書マネージャーの「発行先」に一致します。証明書の発行者名は、「発行者」に一致し、「ストア名」は、証明書ストア名に一致する必要があります。

    メモ

    証明書マネージャー(certmgr.msc)の「個人」という名前は、実際は「My」という名前の証明書ストアを参照しています​**。**​その結果、推奨のとおりに SSL 通信証明書および鍵(.PFX)を「個人」証明書ストアにインポートする場合、SSL CryptoAPI Cert Store Name 文字列を "My" に設定する必要があります。このパラメーターを "Personal" に設定すると、機能しなくなります。これは、Windows 証明書ストアに独特のものです。

    事前定義されたシステムストアの完全なリストについては、次の場所から入手できます:https://msdn.microsoft.com/en-us/library/windows/desktop/aa388136(v=vs.85).aspx。お使いのシステムには、その他の証明書ストアがある場合があります。「個人」(My など)以外のストアを使用したい場合、証明書ストアの正規名を入手し、Insight.cfg ファイルに指定する必要があります。(システムストア名「My」は、Windows ドキュメントでは、「My」および「MY」と一貫性なく呼ばれています。このパラメーターは、大文字と小文字が区別されないようです。)

  4. これらのパラメーターを追加して、値が Windows 証明書マネージャーのリストと一致するのを検証したら、Insight.cfg ファイルを保存します。

これで、ワークステーションを開始(またはサーバーから切断/再接続)できます。Data Workbench は、証明書ストアから証明書および秘密鍵を読み込んで、通常どおりに接続します。

ログ出力

証明書が見つからない場合や有効でない場合は、HTTP.log ファイルに次のエラーメッセージが記録されます。

ERROR Fatal error: the cert could not be found!
メモ

L4 ログフレームワークを有効にするには、L4.cfg ファイルをセットアップします(セットアップ方法についてはアカウントマネージャーにお問い合わせください)。

このページ