Apacheでのクライアント認証はBASIC認証が有名ですが、より安全な認証方法が、クライアント証明書を利用する方法です。以下で、クライアント証明書利用設定の入門部分を紹介しますが、最初のポイントは、以下の2点です。Apacheの設定ファイルで行います。設定ファイルの名称や位置はApacheのバージョン、利用環境によって異なりますが、httpsのVirtualHost設定を行っているファイルで行います。httpsのVirtualHost設定の最小要件は、一般に以下のような要素で構成されています。/path/to/DigiCertCA.crt以下が、上記のVirtualHostにクライアント証明書による認証を追加した最も基本的な設定例です。10#</Directory>※墨太文字部分が追加した部分です。SSLCACertificateFileでクライアント証明書を発行した認証局の中間証明書、root証明書を指定します。ファイルの書式はpemです。ファイルは以下のような内容になります。CERTIFICATE—–https接続設定で「SSLCertificateChainFile」ではなく「SSLCACertificateFile」を利用している場合は、そのファイルにクライアント証明書を発行した認証局の中間証明書、root証明書を追加します。クライアント証明書を発行した認証局の中間証明書、root証明書の取得方法は以下を参照してください。認証局の中間証明書、root証明書を取得するクライアント認証は特定のディレクトリ以下を対象とすることもできます。>...</Location>を使ってディレクトリを指定します。.htaccessファイルでの指定も有効です。require」がクライアント認証を要求する指定です。「SSLVerifyDepth」はクライアント(ブラウザ)が提出したクライアント証明書の正当性をroot証明書によって確認するよう要求する指定です。有効な証明書を持っていないことを決定する前に、どれくらい深く確認しなければならないかを指定します。高度なクライアント証明書利用設定より厳密なクライアント認証を行うために以下のディレクティブを利用することができます。SSLRequireクライアント証明書に含まれる情報やそれ以外のクライアント情報を判定し、認証を行うことができます。使われるのが「SSL_CLIENT_S_DN」による判定です。「SSL_CLIENT_S_DN」はクライアント証明書名を示します。Ltd./CN=*creative-japan.org”)と対応しています。Ltd.」で部署名が「Support」、「Planning」、「Marketing」のどれかだった場合認証が成功します。variables」を参照してください。SSLOptionsSSLOptionsでは「StdEnvVars」「ExportCertData」「FakeBasicAuth」「StrictRequire」「OptRenegotiate」の機能を指定できます。+FakeBasicAuthのように「+」記号付きで指定します。※+FakeBasicAuthが指定された場合、クライアント証明書のsubjectをBasic認証のユーザー名に利用することができます。Directiveを参照してください。OpenSSLを参照してください。認証局の中間証明書、root証明書を取得する「SSLCACertificateFile」で利用する中間証明書、root証明書を取得する方法は、クライアント証明書をインストールしたブラウザによって異なります。「certmgr」が表示されます。左メニューで「個人」->「証明書」の順にクリックし、右ペインで対象のクライアント証明書をダブルクリックします。証明書ウィンドウで「証明書のパス」タブをクリックします。DigiCert中間証明書を選択し、「証明書の表示」ボタンをクリックします。DigiCert中間証明書の証明書ウィンドウが開きます。「詳細」タブをクリックします。「発行者」を選択し、「ファイルにコピー」ボタンをクリックします。「証明書のエクスポートウィザード」で「次へ」をクリックします。X.509(.CER)」を選択し「次へ」をクリックします。開いた「エクスポートするファイル」ページで「参照」をクリックします。し、「保存」をクリックします。「エクスポートするファイル」ページで「次へ」をクリックします。「証明書のエクスポートウィザードの完了」ページで「完了」をクリックし、最終確認で「OK」をクリックします。取得することが困難ですので、一旦、クライアント証明書をエクスポートします。エクスポート手順は、以下の「Firefox」を参照してください。※コードサイニング証明書についての説明ですので、「コードサイニング証明書」を「クライアント証明書」に読み替えてください。エクスポートされたクライアント証明書をWindows証明書ストアにインポートします。インポート手順は、以下を参照してください。※コードサイニング証明書についての説明ですので、「コードサイニング証明書」を「クライアント証明書」に読み替えてください。インポートされた証明書から認証局の中間証明書、root証明書を取得する方法は、「Chrome・IE・Egeの場合」とまったく同一です。