經(jīng)驗分享|To B 產(chǎn)品的登錄安全
![](http://image.woshipm.com/wp-files/img/73.jpg)
企業(yè)級服務(wù)產(chǎn)品,產(chǎn)品安全是用戶選擇時的關(guān)鍵因素,在登錄安全,密碼安全,設(shè)備安全等三個方面都要做到周全且極致。
多設(shè)備同時登錄并不是不安全
目前市面上多數(shù)產(chǎn)品都是單設(shè)備登錄的,即一臺手機終端+一臺電腦終端,當(dāng)使用其他設(shè)備登錄同一帳號時,需要將其他設(shè)備登出,保證同一帳號同一時間僅可在一臺設(shè)備登錄;用慣微信QQ的用戶有時會與我反饋,說這樣使用起來產(chǎn)品多安全,只能一個設(shè)備登錄,你的產(chǎn)品采用同樣的策略,用戶也不會有所不爽。
但實際上,即使產(chǎn)品支持多設(shè)備登錄,也非不安全,在使用上,既滿足了工作場景下的多設(shè)備的方便使用,在帳號安全上其實并沒有形成相對的劣勢。只是在產(chǎn)品設(shè)計上,要更多的考慮很多功能設(shè)置項的全局統(tǒng)一性,對于服務(wù)端統(tǒng)一處理、終端與服務(wù)端請求的即時性和弱網(wǎng)下的請求處理的即時性要求并相對較高,因為用戶不會管你是不是本地操作還是服務(wù)端操作,他們要的是一樣的體驗。
設(shè)備授權(quán)一定要操作簡單且流程閉環(huán)
多設(shè)備登錄,需要對設(shè)備授權(quán)登錄及設(shè)備管理進行閉環(huán)設(shè)計,比較常用的授權(quán)方式為短信驗證碼授權(quán),也可以做設(shè)備之間的快速授權(quán),但由于目前蘋果推出新規(guī)定,IOS設(shè)備的deviseID已不唯一,因此設(shè)備之間已無法用deviseID做唯一設(shè)備標(biāo)記,因此短信驗證碼為更平穩(wěn)的做法,也是比較安全的做法。
單設(shè)備登錄提升安全性,也可以做設(shè)備登錄授權(quán)。
設(shè)備管理中的授權(quán)記錄,授權(quán)取消可操作,及登錄日志的記錄是閉環(huán)流程的方式
密碼安全要結(jié)合登錄框架設(shè)計,雙管齊下
技術(shù)角度上來看,要盡量少的將密碼暴露在登錄過程中,即像網(wǎng)頁端輸入帳號密碼的形式可以考慮在整個登錄框架中進行弱化處理,對這種形式的登錄方式也要盡量做好雙因子校驗,即密碼校驗+手機號校驗。
保證設(shè)備安全基礎(chǔ)之上,盡量通過設(shè)備授權(quán)其他端,比如網(wǎng)頁端或者桌面端去進行登錄,比較典型的列子是微信。
密碼修改有兩種流程設(shè)計方式:
- 驗證手機號后直接修改密碼(手機號驗證越來越常用,也相對安全)
- 驗證舊密碼,設(shè)置新密碼(這種比較老套了)
關(guān)于密碼的強度設(shè)計,不同安全等級會有不同設(shè)計
關(guān)于密碼的強度設(shè)計,不同安全等級會有不同設(shè)計,可以在服務(wù)端配置一套規(guī)則,隨時根據(jù)反饋和數(shù)據(jù)調(diào)整,不需要跟隨發(fā)版。
下面是我在設(shè)計整套密碼規(guī)則時在網(wǎng)上搜來的相對詳盡的打分規(guī)則,大家可以參考:
密碼長度:
- 0 分: 小于等于 6 個字符
- 10 分: 6 到 10 字符
- 25 分: 大于等于 10 個字符
字母:
- 0 分: 沒有字母
- 10 分: 全都是?。ù螅懽帜?/li>
- 20 分: 大小寫混合字母
數(shù)字:
- 0 分: 沒有數(shù)字
- 10 分: 1 個數(shù)字或數(shù)字連續(xù)或數(shù)字連續(xù)
- 20 分: 大于等于 3 個數(shù)字
符號:
- 0 分: 沒有符號
- 10 分: 1 個符號
- 25 分: 大于 1 個符號
獎勵:
- 0 分: 字母和數(shù)字
- 2 分: 字母、數(shù)字和符號
- 5 分: 大小寫字母、數(shù)字和符號
減分:
- -10 分: 3位及以上連續(xù)數(shù)字字母或3位及以上重復(fù)數(shù)字字母
- -20 分: 字母、數(shù)字和符號
- 5 分: 大小寫字母、數(shù)字和符號
最后的評分標(biāo)準(zhǔn):
- >= 90: 非常安全
- >= 80: 安全(Secure)
- >= 70: 非常強
- >= 60: 強(Strong)
- >= 50: 一般(Average)
- >= 25: 弱(Weak)
- >= 0: 非常弱
基于打分標(biāo)準(zhǔn)啟發(fā),以下是我整理設(shè)計的密碼規(guī)則,重點是加入了弱密碼的檢校和提醒,以及密碼強度檢測,大部分對密碼安全有要求的需求,以下規(guī)則基本可滿足(轉(zhuǎn)載請標(biāo)注出處,謝謝):
| 目標(biāo)
靈活化密碼規(guī)則
排除掉簡單密碼:123456a 123qwe 123abc 111aaa
常規(guī)密碼標(biāo)準(zhǔn):6到20位字母和數(shù)字的組合? 密碼強度達到一般即符合標(biāo)準(zhǔn) **弱密碼標(biāo)準(zhǔn)下 30及以上
中等密碼標(biāo)準(zhǔn):6到20位字母和數(shù)字的組合?密碼強度需達到強 ?**50分及以上
強密碼標(biāo)準(zhǔn):6到20位字母和數(shù)字的組合?密碼強度需達到非常強 ?**70分及以上
| 密碼規(guī)則
?
基本規(guī)則:6到20位字母和數(shù)字的組合
增加弱密碼庫:密碼庫基礎(chǔ)
在以上基礎(chǔ)上,密碼強度檢測:一般-強-非常強(調(diào)整文案思考:能降低用戶絞盡腦汁設(shè)置密碼的心理壓力,并能給用戶所設(shè)置密碼點信心,不出現(xiàn)弱字眼,弱密碼就不讓用戶成功設(shè)置)
【一般】密碼標(biāo)準(zhǔn):基礎(chǔ)密碼規(guī)則即為一般密碼
【強】密碼標(biāo)準(zhǔn): 大小寫混合字母 或 包含符號 或 密碼長度大于12個字符
【非常強】密碼標(biāo)準(zhǔn):大小寫混合字母 且 包含符號
| 提示文案
密碼設(shè)置提示文案:
用戶設(shè)置的密碼為弱密碼庫中密碼,則提示“您設(shè)置的密碼太過常用,極易被破解,請更換設(shè)置”,不允許提交
強度檢測提示文案:
?
一般:大小寫混合字母或加入符號可提高密碼強度
強:大小寫混合字母或加入符號可提高密碼強度
非常強:密碼已很安全,請牢記
| 弱密碼庫(維護在服務(wù)端,可隨時擴展)
?
123qwe
qwe123
1234qwer
qwer1234
abc123
123abc
abcd1234
1234abcd
password
qq123456
123456qq
123456a
a123456
123qweasd
qweasd123
1q2w3e4r
q1w2e3r4
1q2w3e4r5t
q1w2e3r4t5
有些需求下,并不需要打分機制那么復(fù)雜的設(shè)計,以下是簡化版的設(shè)計(轉(zhuǎn)載請標(biāo)注出處,謝謝):
| 基礎(chǔ)規(guī)則:
6-20位字母和數(shù)字的組合
| 補充條款:
不可以包含5個及以上重復(fù)數(shù)字/字母
不可以包含5個及以上連續(xù)數(shù)字(正序/倒序)
| 不能是以下10個常用密碼:
Top 10 most used password :
123qwe
1234qwer
abc123
abcd1234
password
qq123456
123qweasd
1q2w3e4r
q1w2e3r4
1q2w3e4r5t
服務(wù)端擴展規(guī)則后 用戶再次登錄時觸發(fā)判斷 終端web端跳轉(zhuǎn)至重置密碼頁面 希望服務(wù)端可給出補充提示
- “不可包含5個及以上重復(fù)數(shù)字或字母”
- “不可包含5個及以上連續(xù)數(shù)字”
- “你設(shè)置的密碼太簡單了,為了企業(yè)信息安全,請重新設(shè)置”
對于企業(yè)級服務(wù),擴展場景設(shè)計補充:管理員可設(shè)置安全等級
不同企業(yè)對于安全等級要求不同,管理員能力也參差不齊,因此在產(chǎn)品設(shè)計上會糾結(jié),是不是為用戶想多了,是不是過度設(shè)計,一時陷入這個度的考慮糾結(jié)中,可以考慮將這些強度和規(guī)則整合成幾個等級的安全等級選擇,把這個選擇權(quán)還給企業(yè)本身,如是管理員可開啟是否強制用戶掃碼登錄,管理員可以強制用戶將個人密碼全部設(shè)置為強度極強的密碼。
登錄續(xù)期如何設(shè)計
對于手機終端用戶是無感知票據(jù)續(xù)期這件事的,升級也多為覆蓋升級,用戶通常使用體驗為一直打開app就可以用,沒有提示過重新登錄或直接踢出。
對于終端基本都是無限續(xù)期的處理,網(wǎng)頁端則不盡相同,有7天票據(jù)過期,也有5天票據(jù)過期,最好的方式是進行登錄頻度的記錄和計算,按照用戶使用頻率,按照一定規(guī)律為其在網(wǎng)頁端登錄續(xù)期,盡量少的將用戶直接踢出。
另外,特殊身份,比如企業(yè)管理員可每次登錄都需要驗證身份,票據(jù)也可以設(shè)計的短一些;還可以根據(jù)用戶IP等計算用戶的常用地點,常用地點+-5公里等規(guī)則可以作為用戶是否異常登錄的依據(jù),也可以因為用戶一直在常用地點登錄作為自動續(xù)期的依據(jù)。
登錄過程的安全提醒不可缺少
即使在設(shè)備授權(quán)的基礎(chǔ)之上,也要補齊對于其他設(shè)備嘗試登錄的異常提醒,其他設(shè)備異常登錄的提醒等。
以下都屬于異常登錄:
- 密碼多次嘗試登錄失敗
- 設(shè)備嘗試獲取授權(quán)失敗
- 不再常用地點登錄
今天先說這么多,謝謝大家!
本文由 @ShirleyW 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。
加雞腿
密碼強度的打分規(guī)則很有參考價值。
寫的非常好~
謝謝 ??