相关疑难解决方法(0)

Httplistener支持https

似乎有很多令人困惑的,有时是冲突的信息,关于使.net HTTPListener https能够.我的理解如下:

  • 一个人的c#代码需要一个https前缀(例如https://*:8443),以便监听器理解它需要在此端口上为SSL请求提供服务.

  • 实际的SSL握手发生在幕后并由http.sys(安装在Windows机器上的某处)进行处理; C#代码不必显式管理ssl握手,因为它发生在封面下.

  • 需要在计算机上安装"x509可信证书" httpListener,并且某种程度上证书需要绑定到端口8443(在此示例中)

我的理解是否正确?如果没有,请教育我.

关于x509证书,我的理解是:

  • 使用makecert创建X509证书.此证书存储在个人存储中,需要转移到可信存储(这是http侦听器所在的位置).似乎我可以certMgr用来执行移动,或者我可以mmc用来实现移动.似乎还有超过1 X509证书格式(DER,Base64,pks,PSWD保护pks私有等)..有,我应该使用首选格式?

一旦我将证书带入可信商店,我就需要将它绑定到tcp端口.我在Win7上:我应该使用httpcfg还是netsh

任何提示/建议将不胜感激.

.net httplistener x509certificate

59
推荐指数
4
解决办法
6万
查看次数

如何将 SSL 与 HttpListener 与 mkbundle 的 Mono 应用程序一起使用

我有一个用 Mono 构建的 .NET 应用程序,我已经使用mkbundle. 这样最终用户就不需要自己安装 Mono 了。

该应用程序使用 ServiceStack,它在后台使用HttpListener. 我需要通过启用 SSL 的 HTTP 端点公开 Web 服务。

通常,您会httpcfg -add -port 1234 -p12 MyCert.pfx -pwd "MyPass"在配置期间运行类似的操作(所有这些实际上只是将证书复制到特定路径),并且HttpListener会自动将证书绑定到端口。

所以HttpListener在运行时从特定路径加载证书。

那条路径是硬编码的吗?或者有什么方法可以告诉它使用来自另一个位置的证书,因为最终用户不会安装 Mono?

mono ssl httplistener mkbundle servicestack

5
推荐指数
1
解决办法
2296
查看次数