2011-05-20 90 views
1

我试图配置Apache Tomcat以使用SSL连接与客户端身份验证(双向身份验证)。我的证书是CA签名的。 如果我将证书和客户端证书放在tomcat信任库中,一切都正常。如果我没有在Tomcat truststore中放置CA证书,Tomcat将不会信任客户端。Apache Tomcat SSL问题

我需要tomcat truststore中的CA证书吗?

如果我将CA证书放在truststre中,那么Tomcat将信任具有由相同CA签名的证书的每个客户端。

回答

1

您将信任或授权与验证混淆在一起。 SSL证书的唯一目的是证明对方是他自称的人,即建立自己的身份。您需要决定是否相信CA在签署CSR之前验证身份的过程,如果是,则将其证书放入信任库。

无论您希望身份访问系统的某些部分是一个完全不同的问题,您必须通过授予身份的角色数据库以不同方式解决问题。这是LDAP特别擅长的,但是您也可以在Tomcat中使用DBMS甚至XML文件。看看Tomcat Realms如何做到这一点。

你不能做的是尝试使用信任库作为该数据库。这不是它的目的,也不是它或PKI设计的目的。这就是为什么你尝试以这种方式使用它的原因。

3

是的,您需要信任库中的CA.如果您不愿意将CA放入信任库,则不应使用CA.

关于您的最后一段,您还可以检查客户端证书的专有名称以进一步授权。

+1

'进一步身份验证':否,身份验证已完成。你的意思是'授权'。同意你第一点100%。 – EJP 2011-05-20 23:26:42

+0

@EJP:已更正。 – Jumbogram 2011-05-20 23:39:32