2011-05-20 168 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