Windows和Windows Phone

时间:2016-01-19 12:25:03

标签: c# ssl windows-phone-8.1 signalr windows-10-universal

我有一个与SignalR中心通信的Xamarin.Forms应用程序。通信使用我自己的SSL证书,但不受信任。使用ICertificatePolicy界面并实施ServicePointManager.ServerCertificateValidationCallback在Android和iOS上处理不受信任的认证没有问题。但是,我无法为Windows 8.1,Windows Phone 8.1和Windows 10 Universal App找到合理的替代方案。

是否存在替代方案?没关系,如果它的平台特定,我可以使用Xamarin的DependencyService。但是,它应该触发一个事件,传递证书,这样我就可以询问用户是否接受了特定的证书。

更新

正如我刚刚发现的那样,根本没有调用ICertificatePolicy方法,只留下ServicePointManager.ServerCertificateValidationCallback方法(适用于iOS和Android)。在Windows Phone 8.1和Windows 10 Universal App中是否有一些替代此类?

更新2

我尝试通过将自签名证书包含在Windows 10应用程序中并编写Windows Phone 8.1中提供的代码来关注this guide。没用。

然后我尝试实施this workaround。即使这样也行不通。

我的最后一次尝试是在this tutorial之后创建一个受信任的SSL证书,但即使在完全遵循这些步骤之后,我最终得到了一个不受信任的证书。当然,我无法连接Windows 10和Windows Phone 8.1。

似乎唯一剩下的选择是使用HttpBaseProtocolFilter,如this answer中所述,但我不知道如何在SignalR客户端中实现它。

是否存在任何功能性解决方案?

0 个答案:

没有答案