我需要在Windows Phone 8.0应用程序中通过HTTPS连接到Web服务。似乎Microsoft没有提供关于此问题的客户端SSL支持。
我真的需要知道如何处理WP8中的证书。哪个是正确的证书?哪些证书需要导入?
场景:我有一个https终端点:
根据Microsoft的说法:在大多数情况下,您不需要采取任何措施来启用此功能,只需使用以https://协议方案开头的地址即可。然后,Windows Phone会检查Web服务返回的证书,如果该证书来自于Windows Phone OS 7.1的SSL根证书中列出的受信任机构之一,则Windows Phone应用程序平台将与Web服务一起使用证书加密所有进一步的通信,包括如前所述的身份验证凭据交换。尽管您可以在Windows Phone上安装受信任的证书,但在当前版本中,Windows Phone应用程序平台不向应用公开这些证书的值。因此,在当前版本中,您无法使用存储在根存储区中的证书实现双向身份验证场景-客户端除接收证书外还发送自己的证书到Web服务。
我真的需要知道如何处理WP8中的证书。哪个是正确的证书?哪些证书需要导入?
场景:我有一个https终端点:
https://10.1.1.2
,当我从我的PC连接到那里时,会提示我查看和安装服务器的证书。证书名称“根CA”被本地保存。同样的证书在移动设备上安装没有问题。当我从移动互联网浏览器打开https://10.1.1.2
时,它会通知我网页是安全的,并让我选择关闭或继续页面。我点击继续,https://10.1.1.2
的交易就会发生。每次我通过移动互联网浏览器访问相同的URL时,都不会向最终用户发出关于安全性的警告。根据Microsoft的说法:在大多数情况下,您不需要采取任何措施来启用此功能,只需使用以https://协议方案开头的地址即可。然后,Windows Phone会检查Web服务返回的证书,如果该证书来自于Windows Phone OS 7.1的SSL根证书中列出的受信任机构之一,则Windows Phone应用程序平台将与Web服务一起使用证书加密所有进一步的通信,包括如前所述的身份验证凭据交换。尽管您可以在Windows Phone上安装受信任的证书,但在当前版本中,Windows Phone应用程序平台不向应用公开这些证书的值。因此,在当前版本中,您无法使用存储在根存储区中的证书实现双向身份验证场景-客户端除接收证书外还发送自己的证书到Web服务。
那么,这个过程可以吗?我不能使用Microsoft默认信任的证书颁发机构之一。我需要编写代码吗?