我正在尝试将Apache Tomcat配置为使用SSL连接和客户端身份验证(双向身份验证)。我的证书是CA签名的。 如果我把CA证书和客户端证书一起放在tomcat truststore中一切正常。如果我没有将CA证书放在tomcat信任库中,Tomcat就不会信任客户端。
我是否需要在tomcat truststore中使用CA证书?
如果我将CA证书放在truststre中,那么Tomcat将信任每个拥有由同一CA签名的证书的客户端。
答案 0 :(得分:3)
是的,您需要信任库中的CA.如果您不愿意将CA放入信任库,则不应使用CA。
关于您的最后一段,您还可以检查客户证书的专有名称以进一步授权。
答案 1 :(得分:1)
您将信任或授权与身份验证混淆。 SSL证书的唯一目的是证明同伴是他所说的人,即建立他的身份。您需要在签署CSR之前决定是否信任CA的验证身份的程序,如果是,则将其证书放入信任库。
您是否希望该身份访问系统的某些部分是一个完全不同的问题,您必须通过授予身份的角色数据库以不同的方式解决这个问题。这是LDAP特别擅长的,但您也可以在Tomcat中使用DBMS甚至XML文件。看看Tomcat领域如何做到这一点。
您不能做的是尝试将信任库用作该数据库。这不是它的用途,而不是它或PKI的设计目的。这就是为什么你试图以这种方式使用它时遇到的问题。