我的ASP.NET应用程序有一个.p12
文件,可通过HTTPS连接到Web服务。
我正在尝试将.p12
文件导入本地计算机/我的商店。 .p12
文件包含多个证书。一个包含私钥,另一个是完成链的CA证书。
目前我正在使用`System.Security.Cryptography.X509Certificates.X509Certificate2对象的Import方法将此文件导入商店。今天我注意到CA证书没有导入,只有使用此方法导入包含私钥的主证书。在进一步审查MSDN后,我发现了有关导入方法的以下规则:
请注意,PFX / PKCS12证书可以包含多个证书。在这种情况下,使用与私钥关联的第一个证书,如果未找到私钥,则使用第一个证书。
有人可以向我建议另一种以编程方式导入.p12
文件的方法,该文件实际上会导入文件中的所有证书吗?我正在使用 PowerShell 来执行此功能。
答案 0 :(得分:3)
不使用X509Certificate2.Import方法,而是使用X509Certficate2Collection.Import方法。它将为您提供.p12文件中的所有证书。
然后,您可以将每个证书添加到其适当的商店。