我试图为运行在JBoss上的应用程序配置客户端身份验证。预期的结果是应用程序请求用户提供证书,如果提供了可信的证书,他将能够使用应用程序。
我已经生成了证书,并将一个证书添加到trustore (JBoss.keystore)中,并配置了standalone.xml文件如下:
<connector name="https" protocol="HTTP/1.1" scheme="https" socket-binding="https" enable-lookups="false" secure="true">
<ssl name="ssl" key-alias="ssl alias" password="password" certificate-key-file="..\standalone\configuration\JBoss.keystore" protocol="TLSv1.2" verify-client="true"/>
<virtual-server name="my-host" />
</connector>我认为设置安全属性true可以做到这一点,但是浏览器不要求用户证书,而是立即返回错误ERR_BAD_SSL_CLIENT_AUTH_CERT。浏览器被配置为每次请求证书(如果需要的话)。
如何将服务器配置更改为预期的行为?
发布于 2015-03-18 13:29:19
我找到了答案。解决方案是将签署客户端证书的CA证书导入信任存储库,而不是导入客户端证书本身。导入CA证书后,将显示由CA签名并导入浏览器的每个证书以从中选择。
https://stackoverflow.com/questions/29077721
复制相似问题