我的客户端应用程序使用 HttpClient 调用 Azure 应用服务,如下所示:
HttpClientHandler handler = new HttpClientHandler();
if (I detect a certificate is needed)
{
httpClientHandler.ClientCertificates.Add(cert);
httpClientHandler.ClientCertificateOptions = ClientCertificateOption.Manual;
}
var client = new HttpClient(handler);
var result = await client.GetAsync("http://www.contoso.com/");
如果我可以检测到页面需要它,我只想添加客户端证书。例如,如果您将 URL 粘贴到需要客户端证书的浏览器中,则浏览器会提供用户可以选择的证书选项。我的应用程序中也有一个证书列表,但只想在服务器需要时显示它。
我可以致电服务器并返回 403,然后提供我的列表。但是,出于其他身份验证原因,它可能是 403,因此会产生误导。
我想我在问 - “浏览器如何检测 URL 需要客户端证书”
谢谢