SSL + クライアント証明書を必要とする Web アプリケーションの開発環境をセットアップしようとしています。サーバーとクライアントは同じで、私のラップトップです。
ネットで見つけたいくつかの異なるチュートリアルを使用して、これまでに行ったこと:
- 自己署名ルート CA
を作成しました - このルート CA を使用して「サーバー」証明書を作成し、この証明書で IIS ssl を構成しました。
- すべての役割を持つ「クライアント」証明書を作成しました (同じルート証明書を引き続き使用します)。
証明書の作成に使用されるコマンドは次のようになります。
makecert -n "CN=Dev Client" -iv DevCA.pvk -ic DevCA.cer -pe -ss my -sr localmachine -sv DevClient.pvk DevClient.cer
pvk2pfx -pvk DevClient.pvk -spc DevClient.cer -pfx DevClient.pfx
したがって、クライアント証明書とサーバー証明書の両方に同じルート証明書があります。
次に、私は:
- 現在のユーザーとローカル マシンの両方の "信頼できる機関ストア" にルート証明書を追加しました -
"現在のユーザー" の "個人ストア" にクライアント証明書を追加し
ました - サーバー証明書を "個人ストア" に追加しました「ローカルコンピュータ」
クライアント証明書のプロパティを確認すると、ルート証明書が正しく見つかりました。
しかし、問題は、IIS では機能しないことです。
クライアント証明書を「必須」に設定すると、HTTP 403.4 が禁止されました
クライアント証明書を「承認済み」に設定すると、サイトは実際に機能しますが、証明書を受け取りません
誰かがこれを機能させる方法を知っていますか?