Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 从程序内部管理HTTPS服务器证书?_.net_Ssl_Https_Ssl Certificate_Netsh - Fatal编程技术网

.net 从程序内部管理HTTPS服务器证书?

.net 从程序内部管理HTTPS服务器证书?,.net,ssl,https,ssl-certificate,netsh,.net,Ssl,Https,Ssl Certificate,Netsh,我想从.NET代码内部执行以下操作: 在存储中创建自签名证书,获取其指纹 将现有证书文件导入存储。同样,获取指纹 按照“netsh http add sslcert”配置使用此证书的HTTPS端口。我可以简单地从程序内部运行这个控制台命令,但如果有更好的方法就好了 顺便说一下,第3项是我需要第1项和第2项中指纹的原因。这可能吗?请查看System.Security.Cryptography.X509Certificates命名空间 值得注意的是,X509Store类将至少完成您所指的一件事情:将

我想从.NET代码内部执行以下操作:

  • 在存储中创建自签名证书,获取其指纹
  • 将现有证书文件导入存储。同样,获取指纹
  • 按照“netsh http add sslcert”配置使用此证书的HTTPS端口。我可以简单地从程序内部运行这个控制台命令,但如果有更好的方法就好了

  • 顺便说一下,第3项是我需要第1项和第2项中指纹的原因。这可能吗?

    请查看
    System.Security.Cryptography.X509Certificates
    命名空间

    值得注意的是,
    X509Store
    类将至少完成您所指的一件事情:将现有证书导入到存储中。e、 g

    X509Store store = new X509Store(StoreName.Root, StoreLocation.LocalMachine);
    try
    {
     store.Open(OpenFlags.ReadWrite);
     store.Add(
         new X509Certificate2(@"Certificates\MyCertificate.pfx", "password"));
    }
    finally
    {
     store.Close();
    }
    

    另见:


    在创建证书的另一部分中,我发现了以下内容:。。。如果您不打算调用像
    makecert.exe
    这样的控制台工具,那么很可能最终实现类似的功能