2010-12-10 13 views
2

背景:從桌面應用程序,用戶將導航到SSL加密的門戶網站,如果他們是首次登錄,則必須輸入用戶名/密碼。我希望能夠安全地堅持他們的用戶會話。我正在考慮使用加密的cookie,存儲他們的用戶名和唯一的會話令牌/密鑰,但想知道客戶端證書在安全性方面提供了哪些優勢。在SSL加密的Cookie中保存會話與客戶端證書

我看到的方式目前理解:

加密的Cookie中:

  • 保存在用戶的機器上,就像任何其他的cookie
  • 由於整個網站是SSL,內容該cookie不能被篡改
  • 易於實現
  • 當用戶再次登錄時,無效令牌/鑰匙,併發出一個新的

問題:

  • 任何試圖與保存的會話來訪問計算機上的門戶網站就能,但這是任何一個問題持續的會話,對吧?
  • 我怎麼知道計算機A是計算機A而不是計算機B複製計算機A的cookie?

客戶端證書:

  • 在屁股疼痛安裝
  • 將唯一識別人的計算機(或者可以將其限制在用戶帳戶)的門戶網站
  • 如果客戶證書被盜,則帳戶被盜用

問題:爲了保持最安全的用戶會話,加密的cookie是否足夠或者是否需要安裝客戶端證書?他們有什麼不同?

+0

我不確定任何一種方法是否「非常安全」。持久會話永遠不可能是安全的,因爲訪問客戶端機器的人總是可能直接進入你的系統,無論是未授權用戶,辦公室清潔工,無論誰。假設這不是問題,那麼兩種解決方案之間的安全差異就不會那麼重要。 – 2010-12-15 16:48:38

回答

0

2面驗證(客戶端證書)並不意味着持續的會話。每次用戶訪問該頁面時,都會使用客戶端證書對該站點進行身份驗證。根據客戶端策略(或AD),用戶可以輸入PIN以提交證書或從安裝到證書存儲區的證書列表中進行選擇。