makecert.exeを使用せずにASP.NETでクライアント証明書をオンザフライで生成することは可能ですか?生成された証明書は、特定のCA証明書で署名する必要があります(特定のCA証明書はファイルシステムに保存され、実行時に選択されます)。生成された証明書は、データを取得するために別のサーバーへのWeb要求に添付する必要があります。X.509(非自己署名)クライアント証明書をプログラムで生成する
流れ:
ユーザーIIS上のASP.NETページを求めて - >証明書がASP.NETを使用してIIS上で生成される - >付属の証明書を使用して別のサーバを呼び出す - >データが返され、上に示されていますユーザーの要求されたページ
私は、.NET Frameworkによってネイティブに実行するための方法を見つけるし、などさまざまなオプション探求ができませんでした:
- CertEnroll.dllを - このインタフェースは、古いIEnroll4インターフェイスを置き換えます。唯一の証明書要求の作成をサポートようです - IX509Enrollmentを:http://msdn.microsoft.com/en-us/library/aa377809(v=VS.85).aspx
- 弾む城 - 私はあなたの応答を事前に(ライセンスの問題)
感謝を使用することができない場合がありますオープンソースプロジェクト。
ご使用のケースを少し改善してください。要求ごとに証明書を生成する理由は何ですか? – Doobi
あなたは[Bouncycastle license](http://www.bouncycastle.org/csharp/licence.html)を実際に読んでいましたか? –
Doobi - はい。私は要求ごとに証明書を生成し、おそらくIIS上でユーザーのためにキャッシュしたいと思います。 GregS - 現在、サードパーティのコンポーネントが含まれていない場合は、解決策を見つける必要があります。 – soguy