クライアント証明書

クライアント証明書は、ID+パスワードによる認証などと並んだ認証方法の一つで、SSL通信が必須である認証方式。(Basic認証はSSL通信は必須ではないが、パスフレーズが暗号化されない点では、盗聴リスクがあることに留意しなければならない。)
クライアント証明書を使用した認証の流れについては、Apacheでのクライアント認証の仕組みに記載されているが、通信相手を信頼する方法は、公開鍵暗号方式を利用する点では、サーバ証明書と同一だが、下記の点で異なる。

  1. 公開鍵暗号方式で共有した共通鍵によって通信の暗号化を保証する方法がクライアント証明書には含まれていない点
  2. と秘密鍵を保持している端末が異なる。(サーバ(サーバ証明書の場合)とクライアント(クライアント証明書の場合))が

クライアント証明書は、秘密鍵を保持しているだけに、サーバ証明書と同様に正しく管理さえされていればなりすましによる認証の可能性が限りなく減らせる。ID+パスワードによる認証とあわせて、多要素認証とすることが出来れば、さらになりすましの可能性を減らせる一方で、証明書の配布と管理が煩雑である面を持つ。

気軽にクライアント証明書を試すには、下記2ステップとなる。
1.自己証明局を作成する。
オレオレ認証局の作り方~SSL証明書を無料で作る方法 on CentOS 5
2.認証方法の変更とクライアント証明書の作成方法
オレオレ認証局でクライアント認証 ~ ウェブの Basic 認証をリプレース
なお、上記では、Webサーバの設定にSSLVerifyClientオプションが登場してくるが、この意味合いについては、ApacheでIP制限とクライアント認証をor条件で運用するに記載されている。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です