JBoss服务器上的客户端身份验证

时间:2015-03-16 13:12:15

标签: authentication ssl jboss jboss-eap-6

我正在尝试为在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。浏览器配置为每次都要求提供证书。

如何将服务器配置更改为预期的行为?

1 个答案:

答案 0 :(得分:0)

我找到了答案。解决方案是将签署了客户端证书的CA证书导入信任库,而不是导入客户端证书本身。 导入CA证书后,将显示由CA签名并导入浏览器的每个证书。