首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HttpListenerRequest未返回客户端证书

HttpListenerRequest未返回客户端证书
EN

Stack Overflow用户
提问于 2011-08-23 04:33:02
回答 1查看 1.6K关注 0票数 1

我正在使用HttpListener创建一个非常基本的web服务器。我已经将其设置为使用SSL,使用httpcfg工具绑定到适当的端口和证书。这似乎运行得很好。现在我想使用客户端证书身份验证。因此,我在HttpListenerRequest对象上添加了一个对GetClientCertificate的调用,但它总是返回null。我的测试客户端非常简单:

代码语言:javascript
复制
HttpWebRequest webReq = (HttpWebRequest) WebRequest.Create("https://127.0.0.1:8080/ssltest/");
webReq.ClientCertificates.Add(new X509Certificate2("ssltest.pfx", "ssltest"));
webReq.GetResponse();

我注意到httpcfg工具有一个指示是否应该协商客户端证书的标志,因此我尝试指定该标志(-f 2),但我仍然无法获得客户端证书。我也遇到了this Microsoft support issue,它看起来非常相关,但我使用的是最新的httpc2.0service pack,我还尝试了.NET标志,这两个都应该可以避免这个问题。

我假设我在这里遗漏了一些明显的东西。有什么想法吗?

编辑:我刚刚找到了this question,它看起来非常相关(甚至可能是重复的?)。不幸的是,这个问题也没有公认的答案。建议的答案对我已经尝试过的东西(带有适当标志的httpcfg工具)提出了建议。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-23 22:31:23

根据http://support.microsoft.com/kb/895971/en-us的说法,HttpWebRequest.ClientCertificates.Add已经执行了验证,因此证书在客户端无法通过验证,并且永远不会被发送。

上面的链接包含放松验证的代码...永远不要在生产中使用它!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7153268

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档