新聞中心
最大重試次數(shù)

隨著互聯(lián)網(wǎng)的發(fā)展,安全防護(hù)越來越重要。保護(hù)帳號安全就顯得尤為重要。本文將以Redis為例,介紹如何針對賬號登入最大重試次數(shù)設(shè)置,保護(hù)賬號安全。
在定義存儲賬號登入重試次數(shù)的KEY時,采用散列類型,格式為:“user:{userId}:RETRY”,如“user:123:retry”,用來存儲特定賬號的登入重試次數(shù)。
然后,登入前先驗證是否超過最大重試次數(shù),若超過,拋出超過重試次數(shù)異常,直接返回響應(yīng)。具體代碼如下:
“`java
//判斷當(dāng)前帳號重試次數(shù)是否超出
String key = String.format(“user:%d:retry”, userId);
if(jedis.exists(key)) {
if (Integer.parseInt(jedis.get(key)) > MAX_RETRY_TIMES) {
throw new RetryException(“try too many times”);
}
}
登入成功時清除該key,防止未授權(quán)成功的情況下,重試次數(shù)被無節(jié)制增加。對應(yīng)的代碼如下:
```java
//成功登入后刪除該key
String key = String.format("user:%d:retry", userId);
if(jedis.exists(key)) {
jedis.del(key);
}
判斷該key是否存在,若存在,將“重試次數(shù)”值加1;不存在,重試次數(shù)初始值為1,并將值設(shè)置進(jìn)Redis中,代碼如下:
“`java
//如果重試次數(shù)key存在 將重試次數(shù)+1 并更新到redis
String key = String.format(“user:%d:retry”, userId);
if(jedis.exists(key)) {
jedis.incr(KEY);
} else {
//如果不存在將重試次數(shù)設(shè)置為1并更新到redis
jedis.set(key, 1);
}
通過上述方法,可以有效保護(hù)賬號安全,尤其是用戶名和登錄密碼重試次數(shù)限制,防止惡意破解帳號,保護(hù)各類賬號安全。
成都網(wǎng)站營銷推廣找創(chuàng)新互聯(lián),全國分站站群網(wǎng)站搭建更好做SEO營銷。
創(chuàng)新互聯(lián)(www.cdcxhl.com)四川成都IDC基礎(chǔ)服務(wù)商,價格厚道。提供成都服務(wù)器托管租用、綿陽服務(wù)器租用托管、重慶服務(wù)器托管租用、貴陽服務(wù)器機(jī)房服務(wù)器托管租用。
網(wǎng)頁名稱:使用Redis保護(hù)賬號安全設(shè)置登錄名密碼(redis設(shè)置登錄名密碼)
瀏覽地址:http://www.5511xx.com/article/cdegsed.html


咨詢
建站咨詢
