【问题标题】:Install certificate .cer and pfx on setup desktop program c#在设置桌面程序 c# 上安装证书 .cer 和 pfx
【发布时间】:2018-04-13 13:55:18
【问题描述】:

如何在我的安装过程中安装两个证书(带有密码的 pfx)?我需要两个位于个人->证书上的证书,因为这台电脑上的所有用户都使用桌面程序。

我正在使用 .net 3.5

谢谢。

【问题讨论】:

  • 您介意更详细地定义“我的设置”吗?您是否已经在使用特定供应商的设置软件,或者您正处于创建设置项目的计划阶段?

标签: c# pfx certificate-store cer


【解决方案1】:

以下将从.PFX 文件中提取公钥和私钥并将其解析为X509Certificate2 对象(X509Certificate 类型不支持私钥并且无法理解 V2 和 V3 属性)。然后,您将X509Certificate2 对象传递给当前设置为LocalMachine 的本地证书存储库,因为我猜根据您附加的图像,这就是您想要的位置。

X509Certificate2 cert = new X509Certificate2(@"C:\key.pfx", "test1234", X509KeyStorageFlags.MachineKeySet | X509KeyStorageFlags.PersistKeySet); //Saves in the local machine store - accessible for all users

  using (var store = new X509Store(StoreName.My, StoreLocation.LocalMachine))
  {
     store.Open(OpenFlags.ReadWrite); //Set to Write - You need Admin Permissions
     store.Add(cert); //Add Private Cert to Store
  }

我建议您先阅读 Paul Stovell 撰写的post,然后再深入研究,因为权限可能是一场噩梦,尤其是在域环境(Active Directory)中。

【讨论】:

    猜你喜欢
    • 2011-04-22
    • 2013-09-10
    • 1970-01-01
    • 2017-11-22
    • 2021-01-26
    • 1970-01-01
    • 2015-09-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多