我正在设计一个使用WebApi通过Intranet进行通信的C#服务器 - 客户端应用程序,我一直在寻找一种加密通信的方法。我发现我可以根据自己的需要使用自签证书。我的问题是 - 在程序安装过程中是否可以在客户端导入证书?我想围绕它创建一些自动化,所以每次安装新客户端时我都不需要手动完成。
P.S - 这是我在堆栈溢出中的第一个问题所以如果您认为我应该提供更多信息,我将很乐意这样做
答案 0 :(得分:0)
您的问题的答案是是或否,具体取决于私钥属性在创建期间是否已标记为可导出。由于它是自签名证书,因此用于创建一个证书的大多数工具始终启用此属性。因此,您应该能够在 .pfx 扩展名中将源证书中的证书与私钥一起导出,然后在目标计算机上导入此证书文件。
我假设您不担心证书信任,因为您使用的是自签名证书。
<强>更新强>
要通过MMC导入证书,请参阅此处提供的说明:Export a certificate with private key
您可以使用 certmgr.exe 或 certutil.exe 通过命令行导入证书。见:
类似于 PowerShell ,您可以使用 Import-Certificate
命令行开关。请参阅此文章以供参考:
https://technet.microsoft.com/en-us/itpro/powershell/windows/pkiclient/import-certificate
另见此主题:Import Certificate to Trusted Root but not to Personal [Command Line]