2015-10-19 64 views
2

我有一個java spring web應用程序,目前它具有正常的身份驗證流程。我需要爲它添加一個雙因素身份驗證實現。爲此,我們可以使用第三方提供商,如谷歌或任何其他提供商。將兩個因子身份驗證添加到我的Web應用程序

+0

請閱讀指南[我如何問一個很好的問題(http://stackoverflow.com/help/how-to-ask ),特別是關於最小,完整和可驗證示例(MCVE)的部分。這將幫助你爲自己解決問題。如果你這樣做,仍然卡住,你可以回來發佈你的MCVE,你試過的,以及結果是什麼,所以我們可以更好地幫助你。 – JeffC

+0

@ JeffC讀了很多,但找不到解決方案。最後決定發佈到stackoverflow得到一個幫助。至少如果我能得到一個簡單的指南或起點將能夠繼續 – mahedhanu

回答

2

這裏有一個good package that I wrote這在Java代碼中實現了雙因子身份驗證。從READ_ME

複製,以得到這個工作你:

  1. 正確初始化隨機數發生器。
  2. 使用generateBase32Secret()爲用戶生成密鑰。
  3. 撕掉與用戶賬號關聯的數據庫中的密鑰。
  4. 顯示由qrImageUrl(...)返回給用戶的QR圖像URL。
  5. 用戶使用該映像將密鑰加載到其身份驗證器應用程序中。

每當用戶登錄時:

  1. 用戶輸入從所述認證應用到登錄形式的數量。
  2. 從數據庫中讀取與用戶帳戶關聯的祕密。
  3. 服務器將用戶輸入與generateCurrentNumber(...)的輸出進行比較。
  4. 如果他們是平等的,則允許用戶登錄。
+0

這種解決方案如何與Stormpath提供的商業產品不同? –

+0

呃,它是免費的和開源的?否則我不確定@PradeepKumarTR。 – Gray