我的c#解决方案在哪里保存其客户端证书?

时间:2016-06-04 21:19:26

标签: c# visual-studio

我设法建立了一个需要客户端证书的IIS网站,我也得到了代码,但是当我将代码发送给其他人时,它仍然使用我的证书。

这是我的代码:

private async Task<Pas> testPas(string loc)
    {
        System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls;
        using (var client = new HttpClient(new HttpClientHandler { UseProxy = false, ClientCertificateOptions = ClientCertificateOption.Automatic }))
        {
            client.BaseAddress = new Uri("https://somesite.tk");
            client.DefaultRequestHeaders.Accept.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
            HttpResponseMessage response = await client.GetAsync(loc).ConfigureAwait(false);
        }
    }

我认为这是因为ClientCertificateOptions.Automatic检索证书并将其存储在项目的某个地方,但我不知道。

即使我安装了另一个有效个人证书,它也会尝试选择我测试过的那个。

编辑:找到解决方案。 虽然真的很奇怪,但它似乎导入了我在Chrome中使用的证书。当我更改我在Chrome中使用的证书时,应用程序也将使用该证书,但在控制台(mmc)中更改它将无效。

0 个答案:

没有答案