2
私は多数の単一証明書を拡張子.p12のファイルとして保存しています。これらの証明書をすべて1つの.pfxファイルにまとめて、これらの証明書をクライアントマシンにインポートする作業を少なくしたいと考えています。 ここに私が試したことがあります。ファイルを作成しますが、.pfxファイルをインポートすると問題が発生します。 Windows証明書インポートウィザードは、最初の証明書のみをインポートし、それ以降はすべて無視します。私はそれらを組み合わせようとしている方法で、ファイルのフォーマットに何らかの問題があるので、私は仮定します。私はこれを行う正しい方法がわからない。何か案は?複数の.p12証明書を1つの.pfxファイルに結合する方法
private void btnCombineCerts_Click(object sender, EventArgs e)
{
String dateString = DateTime.Now.ToString("yyyyMMdd");
String timeString = DateTime.Now.ToString("hhmmssff");
String path = Directory.GetCurrentDirectory() + @"\certs\CombinedCerts\";
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
List<X509Certificate2> certs = new List<X509Certificate2>();
foreach(var certFile in fDialog.FileNames)
{
X509Certificate2 cert = new X509Certificate2(certFile);
certs.Add(cert);
}
foreach(X509Certificate2 cert in certs)
{
byte[] certStream = cert.Export(X509ContentType.Pfx);
using (var stream = new FileStream(path + dateString + "CombinedCerts" + timeString + ".pfx", FileMode.Append))
{
stream.Write(certStream, 0, certStream.Length);
}
}
}
これは完全に機能します。ありがとうございました。また、Exportメソッドにはパスワードのパラメータが追加されます。これは追加のボーナスです。 – smitty1