silverlight 接受无效证书

标签 silverlight ssl webrequest

我正在使用“WebRequest”/“WebResponse”框架类在 silverlight 中执行 https web 请求。 问题是:我向一个网址发出请求,例如:https://12.34.56.78 我收到了一个 versign 签名的证书,该证书的主题是一个域名,例如:www.mydomain.com。 因此,这会导致远程证书不匹配错误。

第一个问题:我能否以某种方式接受无效证书并获取 WebBresponse 内容? (即使涉及使用其他库,我也愿意接受)

其他详细信息:(对于那些对为什么我需要这个场景感兴趣的人)

我正在尝试授予客户端访问部署在测试服务器上的 silverlight 应用程序的权限。

客户端访问 silverlight 应用程序:www.mydomain.com/app

然后我向:https://xx.mydomain.com 提出一些休息请求

问题是我不想在 https://xx.mydomain.com 上做请求,因为那是在我们的生产服务器上。出于这个原因,我使用 https://12.34.56.78而不是 https://xx.mydomain.com .

客户端有一些防火墙/代理,如果我简单地更改他的主机文件并映射 https://xx.mydomain.com到 12.34.56.78,Web 请求不会解析到映射的 IP。 我这样说是因为如果我尝试在他的网络上 webrequests 失败,在我的网络上我可以毫无问题地使用主机更改。

更新:通过将测试版本部署到替代版本来解决问题:https://yy.domain.com并允许用户为测试目的进行配置,我请求的基本 url 是:https://yy.domain.com .

使用在主题或替代主题中包含 IP 的证书也可能有效,但需要花费一些钱才能由经过认证的提供商颁发,而且效果不会很好,因为 IP 可能会发生变化。

最佳答案

经过更多研究后,Microsoft 似乎不会很快添加此功能,除非存在非测试/调试用途的场景。 请参阅:http://connect.microsoft.com/VisualStudio/feedback/details/368047/add-system-net-servicepointmanager-servercertificatevalidationcallback-property

关于silverlight 接受无效证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5952360/

相关文章:

multithreading - 在 Silverlight UI 线程中,执行 InvokeAsync 时会发生什么情况?

ssl - golang SSL认证

c# - WebRequest.Create 抛出 IOException "The specified registry key does not exist."

c# - Thread.Start(WebRequest.GetResponse) 与 WebRequest.BeginGetResponse

silverlight - 如何更改 Silverlight DatePicker 控件中的日期格式?

c# - 在 Silverlight 和 MVVM 的组合根中保持 DI 容器的使用

Chrome 的 JavaScript 替代方案,关于 window.parent

ssl - 用于使用 Rest API 的 Nginx Mutual Auth

.net - 如何获取.NET中证书的 "purpose"(客户端身份验证证书)?

c# - 使用 webrequest 上传文件