【发布时间】:2016-06-08 08:19:34
【问题描述】:
我开发了一个 Java 应用程序,它使用签名板来捕获生物特征签名。 Pad 已插入客户端计算机,因此我需要在每台本地计算机上运行 java 控制器。为此,我们运行一个包含 Jetty 服务器的 JAR。我们使用 websockets 协议从浏览器启动签名过程,并将数据发送到 Jetty 服务器。
问题:我们需要为 websocket 安全连接创建一个证书,并且该证书必须为 127.0.0.1 发出,因为 Jetty 服务器在客户端本地机器上运行。
如果我创建自签名证书,该解决方案可以正常工作,但某些浏览器(例如 Firefox)不允许自签名证书作为可信证书,我怀疑 CA 是否为 127.0.0.1 颁发证书。
那么,最好的解决方案是什么?继续使用自签名证书?有没有其他办法?
【问题讨论】:
-
为什么是 127.0.0.1?插入计算机的外部设备(签名板)上的网络浏览器将无法使用此地址连接到客户端计算机。
-
网络浏览器不在签名板上。浏览器通过 websocket 将数据发送到 Jetty 服务器(都在客户端计算机中),java 控制器处理 Signature Pad。 Pad 在这里并不重要,问题在于同一台机器上的浏览器和 Jetty 之间的调用。
标签: java websocket jetty ssl-certificate