我想知道是否有人知道在
javascript或PHP中是否可以测试客户端是否在浏览器中安装了特定的客户端证书.
问题是我们已经安装了服务器证书但是要被客户端识别,他们需要2个客户端证书,使他们能够识别我们的服务器证书颁发者的权限.我们想在浏览器中测试这两个证书,如果没有,我们建议客户端下载它们,然后再进入https模式…
有人可以帮忙吗?如果您知道答案,请详细说明您的答案.
您可以使用javascript从安全(https)源请求已知文件,从而在客户端执行此操作.如果请求失败则表示客户端拒绝接受您的证书(或其他网络错误),此时您可以弹出一条消息,要求用户安装带有根证书链接的根证书.
这必须从非安全页面完成.否则用户可能会拒绝您的证书,并且永远不会加载页面,因此您的javascript永远不会运行
它不能在PHP中完成,因为PHP(服务器端)无法确定客户端浏览器是否安装了特定的root
但是,我不会这样做.获得适当的证书.
您似乎对SSL的工作方式了解不足.我建议花些时间了解SSL的工作原理以及如何使用证书.
DC
了解如何通过javascript发送和接收http响应阅读此页面..
http://www.w3schools.com/XML/xml_http.asp
它可用于发送和接收任何文本数据,而不仅仅是xml.它实际上很容易实现,但您必须了解浏览器版本问题.
DC