0

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 が禁止されました
クライアント証明書を「承認済み」に設定すると、サイトは実際に機能しますが、証明書を受け取りません

誰かがこれを機能させる方法を知っていますか?

4

1 に答える 1

0

使用する必要があります

makecert ... -sky exchange

サーバー証明書と

makecert ... -sky signature

クライアント証明書の場合、サーバーには接続を保護する機能があり、クライアントには自分自身を認証する機能があります。

于 2014-07-21T21:10:54.973 に答える