我有一个Java CXF客户端,连接到一个SSL安全的Web服务并进行双向身份验证。
我已经在客户端上正确配置了我的密钥库和信任库,并且它可以正常工作。
我担心的是我的密钥库只包含一个客户端证书,在CXF配置中无法说“对于这个SSL通信,你将使用这个证书”。 因为我只有一个证书,所以在SSL握手期间选择正确的证书不难。 但是,这个客户端将部署在一个环境中,可能会与多个具有自己证书的客户端一起使用,每个客户端都由同一认证机构签名。当服务器要求使用特定机构签名的客户端证书时,将无法区分一个证书和另一个证书。 在这种情况下,我该如何告诉CXF(或Java)使用正确的证书?
我需要建立与客户端证书一样多的SSL上下文吗? (即拥有N个密钥库,每个密钥库只包含一个证书)。 还是有一种方法(在CXF conf或Java中)可以说“在这个上下文中使用这个证书”?
提前感谢您的帮助。
我担心的是我的密钥库只包含一个客户端证书,在CXF配置中无法说“对于这个SSL通信,你将使用这个证书”。 因为我只有一个证书,所以在SSL握手期间选择正确的证书不难。 但是,这个客户端将部署在一个环境中,可能会与多个具有自己证书的客户端一起使用,每个客户端都由同一认证机构签名。当服务器要求使用特定机构签名的客户端证书时,将无法区分一个证书和另一个证书。 在这种情况下,我该如何告诉CXF(或Java)使用正确的证书?
我需要建立与客户端证书一样多的SSL上下文吗? (即拥有N个密钥库,每个密钥库只包含一个证书)。 还是有一种方法(在CXF conf或Java中)可以说“在这个上下文中使用这个证书”?
提前感谢您的帮助。