如何在机器根存储中安装Fiddler的根证书

时间:2013-10-29 14:16:36

标签: c# ssl fiddlercore

我们如何使用Fiddler Core在计算机根存储中安装Fiddler根证书? 我们可以使用certmgr来完成它,但使用FiddlerCore来做它会很棒。它似乎有方法来测试和安装除机器根存储之外的所有东西:(!?

FiddlerCore有以下方法:

  • Fiddler.CertMaker.rootCertExists() to“确定自签名根证书是否存在” 如果返回false,我们可以调用 Fiddler.CertMaker.createRootCert ()来安装证书。

  • Fiddler.CertMaker.rootCertIsTrusted()以测试Fiddler的根证书是否在根存储中。 如果返回false,我们可以调用 Fiddler.CertMaker.trustRootCert ()来信任证书。

  • Fiddler.CertMaker.rootCertIsMachineTrusted()检查“机器根商店中是否是Fiddler的根证书?” 如果它返回false ???我们该怎么做才能解决这个问题???

1 个答案:

答案 0 :(得分:5)

Fiddler book中详细介绍了这个主题,这是对使用FiddlerCore进行编程的有用参考。

要机器信任根,您的代码必须以管理员身份运行,并且必须使用.NET API:

private static bool setMachineTrust(X509Certificate2 oRootCert)
{
  try
  {
    X509Store certStore = new X509Store(StoreName.Root, 
                                        StoreLocation.LocalMachine);
    certStore.Open(OpenFlags.ReadWrite);

    try
    {
      certStore.Add(oRootCert);
    }
    finally
    {
      certStore.Close();
    }
    return true;
  }
  catch (Exception eX) 
  {
     return false;
  }    

}