javascript - 如何从网络服务器为 FF 和 IE 安装 SSL 客户端证书?

标签 javascript .net internet-explorer firefox ssl

登录后,我希望网页能够为 firefox 和 MSIE-8+ 网站客户端提供下载和安装网站唯一 SSL 客户端证书的能力,这样他们就无需再次登录机器。

后端简单易行——我在我的 linux 网络服务器上有一个目录 其中键入“make USER=$username ${username}.crt.pkcs12”将创建一个新的 客户端 key 和有效的签名 PKCS-12 SSL 客户端证书文件。

但是如何最好地提供一个单一的方法来登录(使用密码) MSIE 和 firefox 用户可以下载这些证书并调出 “安装客户端证书”浏览器 GUI 对话框?

直接将证书推送为mime类型的文件就很简单了 ? - 说“应用程序/x-pkcs7-certreqresp”?? 所以提示用户保存文件;但我希望他们被提示 将此网站的证书添加到 SSL 证书管理器的客户端 证书商店。 Then I found this for firefox .

所以这很简单
但我能找到MSIE is this .

因此从 javascript 调用 firefox'x 安全管理器 API 很简单, 但我无法从 MSIE 的 javascript 中找到这样做的方法——一个人需要 调用 .NET C# 代码来访问 .NET API,而 X509Store API 似乎 不导出到 MSIE javascript。

在我看来,选项是在我的 linux 上提供一个单一的 .NET 网络服务 Web 服务器并将来自 MSIE 客户端的证书请求重定向到 此服务,然后可以下载客户端运行的 .NET 代码 安装证书?

或者我可以让 MSIE 客户端下载“Install_Cert.VB”可视化基本脚本 将运行“WinHttpCertCfg.exe”?

或者是否有一些我只是找不到的神奇 MSIE 安全管理器 javascript API?

抱歉,我从 1992 年开始就是 Windows 拒绝者;我只使用 Linux/Solaris/BSD/MacOS,无法访问 Windows 机器。

有没有人以前来过这里/有什么建议可以提供? 如果是这样,将不胜感激! 提前致谢, 杰森

最佳答案

可能不是您期望得到的答案,但您可以做的最简单的事情是创建一个 ActiveX,它将证书放入 IE 中正确的证书存储区。由于 ActiveX 仅由 IE 处理,您将拥有特定于 IE 的解决方案,并且您将只需要一个版本的 ActiveX 控件。对于 Firefox(以及 Chrome 和 Opera),您需要寻找其他解决方案。

关于javascript - 如何从网络服务器为 FF 和 IE 安装 SSL 客户端证书?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5531178/

相关文章:

javascript - Applescript 迭代 HTML 页面的元素

c# - 灯具对属性自动生成的约束

c# - 如何避免这个 stackoverflow 异常?

javascript - 如何在IE的控制台中输出xml?

javascript - 使用 lodash 从对象数组中获取唯一的 [key,value]

javascript - 使用媒体查询添加类或其他属性

javascript - Redux 获取操作

c# - ThreadSafety 和静态字段 - 混淆?

python - Internet Explorer WebDriver 未在机器人框架中启动

javascript - 防止IE卡住?