2014-04-03 67 views
1

假設我有一個Web瀏覽器和兩個服務器的場景:第一個服務器(web)是面向Internet的,第二個(worker)是內部服務器。內部web使用worker,但來自外部的每個請求都由web收到。使用服務器端證書進行客戶端身份驗證

所以你總是有:

browser -> web -> worker 

現在我想,以確保使用SSL連接都:

  • web應使用服務器端證書的瀏覽器可以驗證。
  • worker應使用服務器端證書web可以驗證。
  • web應使用客戶端(!)證書worker可以驗證。

在這種情況下:這是好重新使用的web服務器端證書作爲客戶端證書worker,或者是它更好地使用兩個單獨的證書嗎?

有什麼最佳做法我應該留意?

回答

2

這裏有兩個方面:安全方面和「技術」方面。

技術方面是對於服務器端和客戶端證書,證書的證書KeyUsage和ExtKeyUsage擴展名是不同的。工人將檢查這些擴展的價值並抱怨。這將會發生,除非你在worker上實現自定義驗證器(在這種情況下你想要的任何證書都可以工作)。

安全方面是,如果私鑰因任何原因泄漏,擁有不同的證書(以及私鑰)會在一定程度上增加安全性。

相關問題