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

隨著互聯(lián)網(wǎng)的發(fā)展,安全防護(hù)越來越重要。保護(hù)帳號(hào)安全就顯得尤為重要。本文將以Redis為例,介紹如何針對(duì)賬號(hào)登入最大重試次數(shù)設(shè)置,保護(hù)賬號(hào)安全。
在定義存儲(chǔ)賬號(hào)登入重試次數(shù)的KEY時(shí),采用散列類型,格式為:“user:{userId}:RETRY”,如“user:123:retry”,用來存儲(chǔ)特定賬號(hào)的登入重試次數(shù)。
然后,登入前先驗(yàn)證是否超過最大重試次數(shù),若超過,拋出超過重試次數(shù)異常,直接返回響應(yīng)。具體代碼如下:
“`java
//判斷當(dāng)前帳號(hào)重試次數(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”);
}
}
登入成功時(shí)清除該key,防止未授權(quán)成功的情況下,重試次數(shù)被無節(jié)制增加。對(duì)應(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ù)賬號(hào)安全,尤其是用戶名和登錄密碼重試次數(shù)限制,防止惡意破解帳號(hào),保護(hù)各類賬號(hào)安全。
成都網(wǎng)站營(yíng)銷推廣找創(chuàng)新互聯(lián),全國(guó)分站站群網(wǎng)站搭建更好做SEO營(yíng)銷。
創(chuàng)新互聯(lián)(www.cdcxhl.com)四川成都IDC基礎(chǔ)服務(wù)商,價(jià)格厚道。提供成都服務(wù)器托管租用、綿陽服務(wù)器租用托管、重慶服務(wù)器托管租用、貴陽服務(wù)器機(jī)房服務(wù)器托管租用。
本文標(biāo)題:使用Redis保護(hù)賬號(hào)安全設(shè)置登錄名密碼(redis設(shè)置登錄名密碼)
文章網(wǎng)址:http://m.5511xx.com/article/cdegsed.html


咨詢
建站咨詢
