我的学校网页有自我托管证书(你必须手动安装)我希望创建程序,在我点击一个按钮后安装一个certificate.cer(从visual studio资源)到本地用户 - “受信任的根证书权限”你知道如何在Visual C#中编码吗?
答案 0 :(得分:48)
要以编程方式将证书添加到当前用户的受信任根存储区,请使用X509Store和X509Certificate2类。例如:
string file; // Contains name of certificate file
X509Store store = new X509Store(StoreName.Root, StoreLocation.CurrentUser);
store.Open(OpenFlags.ReadWrite);
store.Add(new X509Certificate2(X509Certificate2.CreateFromCertFile(file)));
store.Close();
另见" How can I install a certificate into the local machine store programmatically using c#?"。
另一个选项是Certificate Manager command line (certmgr.exe)工具,具体为:
certmgr /add cert.cer /s Root
其中" cert.cer"是你的证书。这会将其导入到当前用户的受信任根存储中。但是,certmgr.exe是Visual Studio和Windows SDK的一部分,可能无法自由分发。