我使用的是 Java Web 服务客户端,它通过 HTTPS 连接到 Web 服务。服务器端的机器有多个IP地址,我想通过它的任何一个IP访问这个Web服务。客户端只能通过基于 IP 的 URL 访问服务器,而不是 DNS 可解析的主机名。
由于WS客户端通过Java keytool构建证书时建立的IP SAN扩展是根据建立的IP SAN扩展来验证证书身份的,我想知道是否可以构建一个枚举多个IP SAN扩展的证书?到目前为止,我只能为每个证书建立一个 IP,但是,当我尝试通过任何其他 IP (a.b.c.d) 访问 WS 时,我收到一条错误消息,指出该证书不是使用该 IP 制作的:
java.security.cert.CertificateException:找不到与 IP 地址 a.b.c.d 匹配的主题备用名称
如果这是不可能的,你建议我如何规避这个问题?
谢谢
最佳答案
已经找到了怎么做……很抱歉用这个愚蠢的问题打扰你们……很简单:
san=ip:a.b.c.d,ip:e.f.g.h
谢谢,
瑞克。
关于java - 具有多个 IP SAN 扩展的证书,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20194286/