gpt4 book ai didi

java - 让 SSL 适合本地主机

转载 作者:行者123 更新时间:2023-11-30 11:44:24 26 4
gpt4 key购买 nike

我有一个在客户端机器上运行的 Java 应用程序,它接收来自 Web 应用程序的 ajax 请求。其中一些想要使用该服务的 Web 应用程序仅在 https 下提供服务。

我的 java 应用程序现在可以很好地接受和处理 SSL 请求,但我必须首先在浏览器中导航到服务器并接受证书。

https://localhost:my_port 上监听的 java 应用程序中安装“真实证书”的最佳方法是什么?

在 Windows 上,我似乎可以让安装程序将自签名证书添加到机器接受列表中。我还考虑过为 thisApp.myDomain.com 获取经过验证的证书,然后更改主机文件以将该地址指向 127.0.0.1,但更改主机文件似乎是恶意的并且我担心它会被反病毒软件检测到。

“主”应用程序是一个基于网络的系统。这个基于网络的系统的一些用户希望能够打印到指定计算机上的特殊打印机。 java 应用程序将安装在这些计算机上,然后 Web 应用程序将 ajax 请求发送到与打印机交互的 java 应用程序。最终用户需要能够使用简单的一键式安装程序来安装此 Java 服务。 Web 应用程序是从进行打印的机器上的浏览器运行的,因此是本地主机。

如前所述,网络应用程序需要通过 https 连接到网络服务器(目前驻留在亚马逊)。除了 Chrome 提示内容不安全之外,与本地打印服务器的连接不需要是 https,而且 chrome 是我们用户目前使用最广泛的浏览器。

有什么想法或建议吗?

最佳答案

如果您所说的“真实”证书是指由受信任的 CA 签名的证书,那么我认为答案是您可能不能。我认为受信任的 CA 不会为您颁发证书。

我上面链接的答案建议您通过获取 CA 证书来设置自己的 CA。其他替代方案是 127.0.0.1 的自签名证书,或调整您的 DNS 解析(例如,通过客户端计算机的“主机”文件),以便具有有效证书的某些名称解析为客户端计算机上的环回地址。


顺便说一句 - 关闭证书验证不是可行的方法。最好将自签名证书添加到(例如)用户浏览器的受信任证书列表中。


如果我遇到你的情况,我想我会更改任何需要 HTTPS 的 127.0.0.1 请求。请求不需要 HTTPS,或者将 IP 地址更改为客户端自己的 IP 地址。

关于java - 让 SSL 适合本地主机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10799170/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com