IE ブラウザーと IIS 6 の間で HTTPS 経由のクライアント証明書認証を実装する必要があるという特殊な状況があります。ブラウザーと IIS は、ブラウザーが SSL ポートで IIS に接続することのみを許可するファイアウォールによって分離されています。
IIS と同じネットワーク上に内部証明書サーバーがあります。IIS 用の SSL サーバー証明書を生成し、それをインストールしました。SSL のみを許可し、クライアント証明書を要求するように IIS を構成しました。
ここでの制限は、ブラウザ マシンが切断されたネットワーク上にあるため、CA のhttp://caserver/CertSrv URL にアクセスして、通常のようにクライアント証明書を要求できないことです。
ルート CA の公開鍵に対して CSR を生成できる方法があれば、それを CA サーバーにコピーしてクライアント証明書を生成できると考えました。しかし、IE または証明書 MMC には、これを行うための準備がないようです。証明書 MMC は、CA への直接接続を必要とするようです。
誰もこれを以前に解決しましたか?
参考までに、参照されているすべてのサーバーは Windows Server 2003 を実行しています。
更新: CertReq.exe コマンド ライン ツールを指摘してくれた Jonas Oberschweiber と Mark Sutton に感謝します。これを使用して CSR を生成し、その結果、正常にインストールされるクライアント証明書を生成しました。ただし、IE は、問題の IIS サーバーにアクセスするときに、このクライアント証明書を送信していないようです。それでも 403.7 "禁止: SSL クライアント証明書が必要です" が生成されます。その理由は、クライアント証明書のサブジェクト フィールドが IE を実行しているアカウントのユーザー ID と一致しないため、おそらく一致しないクライアント証明書を送信していないためだと思われます。サブジェクトは、CSR を送信し、ファイアウォールの反対側でクライアント証明書を生成するために使用したユーザーのものと一致します。
件名フィールドは重要ですか? IE がこの証明書を送信できるようにするために他に何かする必要がありますか?