先日、証明書を利用するシステムの証明書の入れ替え後、システムが利用できない状態になりました。
ちなみに、証明書はコンピューターの信頼されたルート証明書に格納しています。
証明書を差し替えると、普通は問題なく利用できると思っていたのですが、どうも原因が不明。切り分けで、ユーザーを変えてみると、使えるユーザーと、使えないユーザーがいました。
どうも以前の証明書を使っていたユーザーが利用できいない状態という事が分かりました。そこで、考えられるのが、証明書のキャッシュが効いているのではという事で、以下の情報を参考に、キャッシュのクリアを行ないました。
Windows XP の [SSL 状態のクリア] オプションについて(マイクロソフト)
https://support.microsoft.com/ja-jp/help/290345
情報が少し古くて、Windows XPの情報ですが、Windows7でもこの項目があります。
[インターネット オプション] ダイアログ ボックスで [コンテンツ] タブの [SSL 状態のクリア] をクリックすると、SSL (Secure Sockets Layer) キャッシュからクライアント認証の証明書をすべて削除することができます。
SSL セッション (https:// を使用する場合) では、身元を照合するために、サーバーから証明書が求められたときに、選択された証明書がキャッシュに保存されます。選択された証明書は、コンピュータを再起動するまでキャッシュに残しておくことができますが、[SSL 状態のクリア] をクリックすると、コンピュータを再起動せずに、キャッシュから証明書をすべて削除することができます。
この情報によると、クライアント認証の証明書がコンピューターを再起動するまでキャッシュに残るとありますね。
と言うことで、これを実行するか、コンピューターを再起動する事で、問題を回避することができます。証明書関連のトラブルって多岐にわたるので、切り分けも一つ一つ行なう必要がありますね。
以前使っていた証明書で使えていて、証明書切り替え後に使えなくなった場合は、今回の情報が参考になるかもしれませんね。