賬戶安全,產品經理的必修課
做一個產品,注冊登錄是必需的,但是你是否考慮過賬戶安全呢?
最近一直在做賬戶安全的需求,但在調研時發現,資料很少。于是只好邊做邊總結。在互聯網產品中,賬戶是最最基本的功能,太常見了,常見到被我們忽略。我們理所當然覺得,做一個產品,注冊登錄是必需的,可能很少會去想,為什么要有一個賬戶?賬戶的作用到底是什么?我們用戶的賬戶夠安全么?
賬戶,有必要么?
每次用個產品(網站、桌面客戶端、APP、后臺系統等)還要先注冊、填寫表單、登錄,真麻煩,能省去這個步驟么?如果你用的產品是個免費的工具,其實是沒什么問題的,因為每個人使用的都是相同的本地功能,且彼此之間毫無瓜葛。
但假設,這個工具有高級的付費功能,情況就不一樣了。我們需要讓服務端知道,哪些人是免費用戶,哪些人是付費用戶,并向付費用戶收費,然后開放高級權限。為了讓服務端知道誰是誰,誰有什么特征,誰能干什么,誰不能干什么,于是有了賬戶的概念。
在互聯網的世界中,一個個賬戶就好像一座座房子,注冊就是建房子,賬號是門牌號,密碼是鎖,登錄就是開門。
在付費類的工具產品中,免費用戶可能只打得開一兩間房子,而對于付費用戶,他們能解鎖這座房子的所有房間。
在即時通信類產品中,房子存儲了你的個人資料,聊天記錄,以及關系鏈。別人想獲得進入你房子參觀、與你交談的權利,需要事先征得你的同意。
在網游中,房子就是你,你就是房子。人民幣玩家可能手一揮買下一套大豪宅,而你仍在為小戶型的裝修費通宵刷副本。
從功能性的角度來看,賬戶是用戶權限的標識,存儲用戶信息的空間,甚至是用戶的代表。而從技術性的角度看,賬戶就是以userID為主鍵的一大串數據表記錄
好了,進入正題,花費這么多步驟,辛辛苦苦建好的房子,防盜工作如何開展?
驗證開門的你是誰?
有時候找到門牌號來開門的人很多,魚龍混雜,而我們只準主人進入房子。那么問題來了,如何驗證你是房子的主人?方式有很多:
- 密碼:能用鑰匙打開門的就是主人
- 驗證碼:增設一道門,并給出一把臨時的鑰匙,能用臨時鑰匙開門的就是主人
- 手勢密碼:能用手比劃出規定動作,就是主人
- 密保問題、購買記錄:記得問題的答案,或者主人曾經的所作所為,就是真正的主人
- 身份證號、銀行卡信息:能說出身份證號或銀行卡信息,就是真正的主人
- 指紋識別、聲紋識別或刷臉識別:指紋、聲紋或臉型匹配的話,就是真正的主人
無論采用哪種方式,驗證信息都需要在建房子的時候就做進去,不然,你拿什么來驗證?
對于最后一種方式,由于每個人的指紋、聲紋與臉型都是獨一無二的,而且幾乎無法復制。。??梢哉f安全性相當高。但由于技術限制等原因,目前大多數產品仍采用前幾種方式,或前幾種方式的組合,來保護賬戶。
如何保護賬戶安全?
1、阻止異常登錄
增加密碼復雜度:
注冊設置密碼,至少6位,英文+數字組合,英文必須有大小寫,等等。鑰匙的棱棱角角多了,自然很難復制,不容易被盜取。
登錄頻次限制:
短時間內登錄失敗次數達到一定量,再次登錄,則增設方式2,通過填寫圖片驗證碼或短信驗證碼,防止賬號密碼被暴力驗證。
短時間內登錄失敗次數達到安全閥值時(如密碼錯誤5次),則對賬戶予以暫時凍結,凍結期結束再開放登錄操作。如下圖所示:
登錄設備更換限制:
賬戶與設備號綁定。每次登錄檢測與賬戶綁定的設備號,如果是一臺新的設備,則增設一道驗證方式。如下圖所示:
登錄IP變更限制:
每次登錄檢測IP地址,如果檢測到新的IP地址,則增設一道驗證方式。
2、知會用戶
檢測到異常登錄情況時,通過APP全局彈窗、短信、push或郵件等方式知會用戶,并提示接下來的步驟,一般都會提示用戶重置密碼,更新密保信息等。如下圖所示:
有人可能擔心,一道道的安全驗證,會不會影響到操作上的體驗?
在賬戶安全的問題上,絕不能因為所謂的操作流暢性就降低安全標準。尤其是對于賬戶安全要求很高的產品,寧可讓用戶多做幾步驗證,最大程度地確保驗證的準確性。
在交互上,用戶會存在操作負擔與認知負擔,減少認知負擔的優先級理應高于減少操作負擔。如果因為減少操作負擔,造成了賬戶安全問題,極大地增加了用戶的認知負擔,是非常得不償失的行為。
本文由 @?岸泥 原創發布于人人都是產品經理。未經許可,禁止轉載。
題圖來自PEXELS,基于CC0協議
請教樓主,在判斷短時間內登錄失敗次數達到安全閾值時,是以賬號+登錄設備來判斷是否超過安全閾值,還是只以賬號判斷(包括不同設備之間的嘗試)?
幫助很大,感謝原創!
厲害了,??
謝謝!
蟹蟹小伙伴,剛好用的到 ??
哈哈,我的榮幸
??
感覺應該是帳號 帳戶
恰恰不是。
賬戶是一個綜合性的概念,賬號就是比較具體的登錄名/用戶名/手機號/郵箱等。從關系上來說,賬號是從屬于賬戶的。