新聞中心
Apache Shiro是一個(gè)開(kāi)源的安全框架,用于針對(duì)認(rèn)證、授權(quán)、會(huì)話管理等復(fù)雜的安全場(chǎng)景,提供簡(jiǎn)潔的安全API,實(shí)現(xiàn)快速、高效的安全控制。結(jié)合Redis,就可以實(shí)現(xiàn)高效穩(wěn)定的認(rèn)證訪問(wèn)控制。

一、優(yōu)勢(shì)
Redis基于內(nèi)存,存儲(chǔ)數(shù)據(jù)速度快,對(duì)數(shù)據(jù)庫(kù)壓力減輕。與Shiro結(jié)合,能保證處理認(rèn)證、授權(quán)等耗時(shí)、計(jì)算量大的請(qǐng)求,可提供比普通數(shù)據(jù)庫(kù)更快速的交互體驗(yàn)。即在一定時(shí)間內(nèi)避免重復(fù)認(rèn)證和授權(quán),降低系統(tǒng)性能消耗,實(shí)現(xiàn)安全性的雙重保障。
二、代碼實(shí)現(xiàn)
1)使用Jedis實(shí)現(xiàn)對(duì)Redis的操作,并配置Redis
在項(xiàng)目中引入Jedis依賴,并配置redis:
redis.clients
jedis
2.9.0
String ip = “l(fā)ocalhost”;//redis服務(wù)器IP
int port = 6379;//redis服務(wù)器端口
int timeout = 1000;//連接超時(shí)時(shí)間(毫秒)
Jedis jedis = new Jedis(ip, port, timeout);//定義jedis實(shí)例
2)結(jié)合shiro,在shiro過(guò)濾器中實(shí)現(xiàn)對(duì)jedis操作:
@Override
public boolean isAccessAllowed(ServletRequest request,ServletResponse response, Object mappedValue) {
//返回 true 表示允許訪問(wèn);false表示禁止訪問(wèn)
//從redis中查詢當(dāng)前的URL的訪問(wèn)權(quán)限信息
String perms = jedis.get(request.getRequestURL().toString());
if(StringUtils.isBlank(perms)) {
return false;
}
else {
//該URL允許訪問(wèn)
return true;
}
}
三、總結(jié)
結(jié)合Shiro與Redis,可以實(shí)現(xiàn)對(duì)系統(tǒng)進(jìn)行高效穩(wěn)定的認(rèn)證訪問(wèn)控制,保證用戶登錄認(rèn)證及授權(quán)機(jī)制的安全性。
代碼實(shí)現(xiàn)力求簡(jiǎn)潔,降低技術(shù)難度,使用戶能輕松實(shí)現(xiàn)Redis與Shiro結(jié)合配置,更加節(jié)約企業(yè)資源,提高系統(tǒng)效率。
成都網(wǎng)站推廣找創(chuàng)新互聯(lián),老牌網(wǎng)站營(yíng)銷公司
成都網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)(www.cdcxhl.com)專注高端網(wǎng)站建設(shè),網(wǎng)頁(yè)設(shè)計(jì)制作,網(wǎng)站維護(hù),網(wǎng)絡(luò)營(yíng)銷,SEO優(yōu)化推廣,快速提升企業(yè)網(wǎng)站排名等一站式服務(wù)。IDC基礎(chǔ)服務(wù):云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開(kāi)發(fā)經(jīng)驗(yàn)、服務(wù)器租用、服務(wù)器托管提供四川、成都、綿陽(yáng)、雅安、重慶、貴州、昆明、鄭州、湖北十堰機(jī)房互聯(lián)網(wǎng)數(shù)據(jù)中心業(yè)務(wù)。
文章標(biāo)題:Shiro與Redis結(jié)合實(shí)現(xiàn)高效穩(wěn)定的認(rèn)證訪問(wèn)控制(shiro和redis)
當(dāng)前URL:http://www.fisionsoft.com.cn/article/codoedc.html


咨詢
建站咨詢
