如何把谷歌兩步驗證設計到產品中
編輯導讀:驗證在互聯網產品中非常常見,目的是為了確保用戶的賬戶資產安全。而谷歌兩步驗證通常被設計在交易類或金融類APP中,本文作者對此進行了分析,希望對你有幫助。
一、關于谷歌兩步驗證
谷歌兩步驗證通常被設計在交易類或金融類APP中。
這類APP為確保用戶賬戶資產安全,在用戶進行登錄/交易操作時,均需要進行谷歌兩步驗證(又稱雙重認證)。平臺提供給用戶密鑰綁定到谷歌身份驗證器中,每個用戶的密鑰都是不相同的,這可以保障安全唯一性。用戶的動態密碼按照時間或使用次數不斷動態變化,每個密碼只能使用一次,目的是保護用戶賬戶資金安全,防止資金被盜。
在登錄環節中,除了要輸入賬號和密碼,還要求用戶輸入自己手機的一個動態密碼(谷歌驗證碼),為帳戶多增加了一層保護。也就是說,即使有人盜取了用戶的密碼,也會因不能使用用戶的手機而無法登錄帳戶。在交易環節中,也是同樣的道理。
谷歌身份驗證器相當于銀行的eToken(身份認證設備):通過用戶名與密碼登錄手機銀行后,支付、轉賬時要用到動態口令,以加強安全級別。不過銀行的動態口令載體通常是硬件,而谷歌身份驗證器是個手機應用,相對更方便。
谷歌兩步驗證具有普適性:谷歌身份驗證器應用適用于Android、iPhone 或黑莓手機。即使在手機沒有信號或數據連接,該應用也能正常工作。
二、設計業務全流程
谷歌兩步驗證的狀態分為已綁定和未綁定。通常情況下,用戶只可綁定,但無法自行解綁。綁定可以根據下面的步驟進行,而解綁通常只能由運營人員操作。在用戶未丟失動態密碼的場景下,為了讓用戶能夠自行決定是否使用兩步驗證,我們增加了已綁定狀態的開啟/關閉功能,這樣就能避免無法解綁谷歌驗證情況給用戶帶來的困擾。需要填寫動態驗證碼的位置常有:登錄環節、交易環節等。
綁定谷歌兩步驗證流程
以交易類APP為例:
原型展示:
開/關谷歌兩步驗證流程
只有已綁定谷歌兩步驗證的用戶,才可以操作開啟/關閉谷歌驗證。
關閉驗證
- 涉及到兩步驗證關閉后的安全問題(谷歌兩步驗證狀態開啟的時候,在交易過程中會要求輸入谷歌驗證碼,關閉狀態則不需要),所以會設計相應的安全提示(比如:安全項更改,24小時內無法交易),同時也需要手機驗證碼和谷歌驗證碼的雙重驗證,才能關閉谷歌驗證。
- 也要考慮用戶可能丟失谷歌驗證碼/手機丟失/不小心誤刪綁定在谷歌身份驗證器上的賬戶信息等情況,所以有必要設計重置谷歌驗證的功能(通常,可以在用戶填寫谷歌動態驗證碼的頁面增加重置谷歌入口),即使用戶無法填寫驗證碼,也可以通過提交身份信息,去重置谷歌驗證。(重置谷歌驗證步驟:通常需要公司運營人員審核,然后開發初始化用戶的谷歌兩步驗證,最后用戶端的谷歌驗證入口會變回未綁定狀態)。
開啟驗證
而在開啟流程中,步驟相對簡單,因為對賬戶安全方面的問題影響不大。
原型展示:
登錄流程
在登陸流程中需要注意的點比較多,包括但不限于:
- 考慮APP是否同時有登錄和解鎖(指紋/面容/手勢)形式,需要界定登錄和解鎖之間的邏輯關系;
- 考慮用戶多次驗證碼輸錯的情況下,是否需要暫時凍結賬號。如:兩步驗證錯誤累計3次,賬戶已鎖定,請2小時后重試;
- 考慮用戶丟失谷歌驗證碼情況下的處理方式。如:重置谷歌驗證。
原型展示:
交易流程
以轉賬流程為例:
填寫完對應金額,在確認轉賬的這一步中,需要填寫谷歌動態驗證碼,以確保賬戶安全。
原型展示:
小結
谷歌兩步驗證在國外的應用比較普及,國內更多的是通過短信驗證和eToken的這種方式代替了兩步驗證,最終目的都是增強用戶賬戶的安全性。相對于谷歌兩步驗證,其他驗證方式對用戶體量大的公司的成本是比較高的。
在登錄環節中,需要考慮的細節比較多,尤其是在原有的基礎上增加谷歌兩步驗證時,需要結合APP屬性和具體用戶場景,制定一系列登錄規則,打造安全設置的閉環,避免測試出很bug。
作者:干貨產品經理,公眾號:干貨產品經理
本文由 @干貨產品經理 原創發布于人人都是產品經理,未經許可,禁止轉載
題圖來自 pexels,基于 CC0 協議
- 目前還沒評論,等你發揮!