我有一個java spring web應用程序,目前它具有正常的身份驗證流程。我需要爲它添加一個雙因素身份驗證實現。爲此,我們可以使用第三方提供商,如谷歌或任何其他提供商。將兩個因子身份驗證添加到我的Web應用程序
2
A
回答
2
這裏有一個good package that I wrote這在Java代碼中實現了雙因子身份驗證。從READ_ME
複製,以得到這個工作你:
- 正確初始化隨機數發生器。
- 使用generateBase32Secret()爲用戶生成密鑰。
- 撕掉與用戶賬號關聯的數據庫中的密鑰。
- 顯示由qrImageUrl(...)返回給用戶的QR圖像URL。
- 用戶使用該映像將密鑰加載到其身份驗證器應用程序中。
每當用戶登錄時:
- 用戶輸入從所述認證應用到登錄形式的數量。
- 從數據庫中讀取與用戶帳戶關聯的祕密。
- 服務器將用戶輸入與
generateCurrentNumber(...)
的輸出進行比較。 - 如果他們是平等的,則允許用戶登錄。
+0
這種解決方案如何與Stormpath提供的商業產品不同? –
+0
呃,它是免費的和開源的?否則我不確定@PradeepKumarTR。 – Gray
0
您可以查看該帖子。擴展您的UsernamePasswordAuthenticationFilter
How to add a parameter to login page and access in loadUserByUsername method spring security 4
請閱讀指南[我如何問一個很好的問題(http://stackoverflow.com/help/how-to-ask ),特別是關於最小,完整和可驗證示例(MCVE)的部分。這將幫助你爲自己解決問題。如果你這樣做,仍然卡住,你可以回來發佈你的MCVE,你試過的,以及結果是什麼,所以我們可以更好地幫助你。 – JeffC
@ JeffC讀了很多,但找不到解決方案。最後決定發佈到stackoverflow得到一個幫助。至少如果我能得到一個簡單的指南或起點將能夠繼續 – mahedhanu