我们正在开发一个本地服务器应用程序(现在写在nodejs中),由我们的网站用来操纵本地文件和文件夹(浏览,上传,下载...)。使用自己的证书创建https服务器应用程序
基本上,客户安装了nodejs应用程序,该应用程序启动了一个监听127.0.0.1
的本地服务器。
然后,当网站上需要(例如)本地文件夹列表时,JS脚本查询本地服务器,它返回本地文件夹,并且它们显示在网站上。
问题是,当网站配置为HTTPS时,网站的JS拒绝与HTTP-non-S nodejs应用进行通信。
,我们正在探索各种选择:
-
使用部署在应用自签名证书
- ,并安装在信任他们的机器上,但我觉得会有的时候很多时候,它不会工作
- 使用
local.example.com
的“正确”证书,其中local.example.com
指向127.0.0.1的DNS条目,但似乎将私钥分发给大多数(如果不是全部的话)证书颁发机构的CGU禁止向公众分发私钥。
现在我想到了另一种意思。 “打包的”HTTPS服务器(用任何语言编写,我不在乎),“生活”在一个exe文件中,是否使用正确的SSL证书签名,使用应用程序的证书?
我不知道我是否有任何意义,我不太清楚证书...
谢谢!
请给我们提供一个参考,以便向CGU禁止向公众分发私人密钥 – AEonAX
另请参阅http://stackoverflow.com/a/22258328/2186591 – AEonAX
我们的系统管理员表示(关于CGU ),但我没有检查自己(我倾向于相信他)。是的,我看到了这个问题。指向localhost的公共DNS很有趣,但还有其他一些问题:例如,我们安装应用程序的一些客户没有互联网访问权限(高安全性限制)。而且我们必须分发公有DNS条目的私钥,因此存在很高的安全风险。 – thomasb