本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種基于會(huì)話控制與數(shù)據(jù)庫的網(wǎng)站路由訪問權(quán)限控制的方法及系統(tǒng)。
背景技術(shù):
隨著互聯(lián)網(wǎng)技術(shù)的高速發(fā)展,萬維網(wǎng)(web)應(yīng)用為我們生活中的各個(gè)方面帶來越來越多的便利,我們生活的很多部分都離不開互聯(lián)網(wǎng),然而,伴隨而來的是網(wǎng)站訪問安全性問題。在現(xiàn)代信息系統(tǒng)中,安全管理一直是重要部分。而訪問控制技術(shù)則是安全信息系統(tǒng)的重要環(huán)節(jié),它的主要任務(wù)是保證資源不被非法使用和訪問。在正常使用過程中,如果網(wǎng)站存在安全漏洞,強(qiáng)制訪問即訪問未授權(quán)的網(wǎng)頁會(huì)造成數(shù)據(jù)泄密,網(wǎng)站會(huì)遭受攻擊,因此,控制網(wǎng)站訪問權(quán)限可以保證數(shù)據(jù)的私密性以及網(wǎng)站的安全性,保證網(wǎng)站權(quán)限可控成了一個(gè)關(guān)鍵性問題。
通常情況下,在服務(wù)器端中建立數(shù)據(jù)庫,數(shù)據(jù)庫中包含用戶表、角色表、路由地址表和角色-路由地址表,在服務(wù)器接收到用戶訪問登錄請求后,服務(wù)器發(fā)出查詢指令對數(shù)據(jù)庫中表格(用戶表、角色表、路由地址表和角色-路由地址表)進(jìn)行查詢,通過角色與對應(yīng)登錄權(quán)限的關(guān)聯(lián),做出判斷用戶是否具有登錄權(quán)限。但也存在了一些弊端,每次用戶訪問統(tǒng)一資源定位符(url)地址時(shí)對數(shù)據(jù)庫訪問查詢,造成對數(shù)據(jù)庫的頻繁訪問,反應(yīng)速度變慢,增加服務(wù)器的壓力。
如發(fā)明專利cn106789989a公開了一種用戶權(quán)限驗(yàn)證方法及裝置,其具體公開了根據(jù)檢測到當(dāng)前登錄權(quán)限驗(yàn)證系統(tǒng)的操作用戶的操作請求時(shí),獲取與操作用戶的用戶id關(guān)聯(lián)的m個(gè)權(quán)限標(biāo)識,操作請求用于從目標(biāo)數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行操作;獲取與操作請求對應(yīng)的路由標(biāo)識;判斷m個(gè)權(quán)限標(biāo)識中是否存在與路由標(biāo)識相同的標(biāo)識;如果m個(gè)權(quán)限標(biāo)識中存在與路由標(biāo)識相同的標(biāo)識,進(jìn)入處理操作請求的控制器,減少了用戶權(quán)限判斷的代碼量,能夠避免遺漏權(quán)限判斷,從而提高了用戶權(quán)限驗(yàn)證的準(zhǔn)確性和執(zhí)行效率。
但是,在該種用戶權(quán)限驗(yàn)證方法及裝置下服務(wù)器端在數(shù)據(jù)庫中查詢訪問用戶信息以及驗(yàn)證訪問用戶登錄權(quán)限,會(huì)引起對數(shù)據(jù)庫的頻繁訪問,造成服務(wù)器壓力變大,如果在同一時(shí)間節(jié)點(diǎn)上有用戶對web進(jìn)行訪問登錄操作,當(dāng)服務(wù)器多線程任務(wù)達(dá)到峰值或溢出后有可能造成服務(wù)器的宕機(jī),從而造成數(shù)據(jù)流失,網(wǎng)站不能訪問等問題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明針對現(xiàn)有技術(shù)存在的問題,提出了一種網(wǎng)站路由訪問權(quán)限控制方法及系統(tǒng)。
本發(fā)明采用會(huì)話控制(session)技術(shù)保存儲存于數(shù)據(jù)庫中的用戶擁有權(quán)限的url路由信息(用戶表、角色表、路由地址表和角色-路由地址表),在服務(wù)器收到用戶登錄請求后在session文件中驗(yàn)證,如果在session文件中查詢到訪問的該url地址,直接訪問,且查詢到該用戶具有的所有url地址下次均可直接訪問;session文件被設(shè)置有數(shù)據(jù)銷毀周期,當(dāng)用戶首次登錄訪問后超過數(shù)據(jù)銷毀周期未登錄,則需再次登錄。
本發(fā)明是通過以下技術(shù)方案得以實(shí)現(xiàn)的:
一種網(wǎng)站路由訪問權(quán)限控制方法,包括如下步驟:
步驟s10,驗(yàn)證用戶信息保存于會(huì)話控制文件。
步驟s20,首次訪問統(tǒng)一資源定位符地址時(shí),讀取數(shù)據(jù)庫中該用戶信息對應(yīng)的所有統(tǒng)一資源定位符地址,并保存于會(huì)話控制文件中;再次訪問統(tǒng)一資源定位符地址時(shí),讀取會(huì)話控制文件。
作為本發(fā)明的優(yōu)選,在所述步驟s20中包括標(biāo)記步驟s21:
若所述用戶信息存在于所述會(huì)話控制文件中,則獲取當(dāng)前時(shí)間并進(jìn)行標(biāo)記。
作為本發(fā)明的優(yōu)選,在所述步驟s20中還包括判斷步驟s22:
判斷在步驟s21標(biāo)記的當(dāng)前時(shí)間標(biāo)記之前是否已有過時(shí)間標(biāo)記,若有,則再次進(jìn)行判斷;
獲得已存在的最早時(shí)間標(biāo)記到所述當(dāng)前時(shí)間標(biāo)記的相隔時(shí)間,若比系統(tǒng)預(yù)設(shè)數(shù)據(jù)銷毀周期長,則銷毀所述會(huì)話控制文件中從所述數(shù)據(jù)庫中獲得的用戶信息。
一種網(wǎng)站路由訪問方法:
步驟s01,服務(wù)器接收用戶登錄請求;
步驟s02,在會(huì)話控制文件中查詢用戶信息,若存在,則查詢數(shù)據(jù)庫讀取數(shù)據(jù)庫中該用戶信息對應(yīng)的所有統(tǒng)一資源定位符地址,并保存于會(huì)話控制文件中;
步驟s03,在會(huì)話控制文件中驗(yàn)證用戶是否具有當(dāng)前統(tǒng)一資源定位符地址的權(quán)限,若有權(quán)限,則成功訪問,若沒權(quán)限,則結(jié)束。
作為本發(fā)明的優(yōu)選,述訪問權(quán)限驗(yàn)證中步驟s02中還包括驗(yàn)證用戶信息未保存于會(huì)話控制文件時(shí),重定向至登陸界面。
作為本發(fā)明的優(yōu)選,所述步驟s03還包括判斷步驟:
判斷之前是否有登錄成功記錄,若有,則查詢所述會(huì)話控制文件中并登錄,若沒有則讀取數(shù)據(jù)庫中用戶所擁有的統(tǒng)一資源定位符權(quán)限地址集保存到會(huì)話控制文件中并判斷當(dāng)前統(tǒng)一資源定位符地址是否在所述統(tǒng)一資源定位符權(quán)限地址集中。
一種網(wǎng)站路由訪問系統(tǒng),包括:
登錄模塊,用于接收用戶登錄請求。
驗(yàn)證模塊,用于驗(yàn)證用戶信息保存于會(huì)話控制文件。
判斷模塊,用于判斷所述用戶是否首次登錄。
數(shù)據(jù)保存模塊,用于從數(shù)據(jù)控中獲取用戶信息以及所有統(tǒng)一資源定位符地址信息并保存至所述會(huì)話控制文件。
權(quán)限控制模塊,用于查詢所述會(huì)話控制文件中用戶信息并控制用戶是否能夠訪問當(dāng)前統(tǒng)一資源定位符地址。
作為本發(fā)明的優(yōu)選,所述登錄模塊具體包括:
接受請求單元,用于服務(wù)器接收用戶登錄請求。
攔截器,用于攔截獲得用戶名以及所述當(dāng)前統(tǒng)一資源定位符地址。
作為本發(fā)明的優(yōu)選,所述權(quán)限控制模塊中還包括標(biāo)記單元,用于獲取當(dāng)前時(shí)間并標(biāo)記。
作為本發(fā)明的優(yōu)選,所述判斷模塊中還包括判斷子單元,用于判斷在所述標(biāo)記單元標(biāo)記的當(dāng)前時(shí)間標(biāo)記之前是否已有過時(shí)間標(biāo)記,若已存在過時(shí)間標(biāo)記,則算出已存在的最早時(shí)間標(biāo)記到所述當(dāng)前時(shí)間標(biāo)記的相隔時(shí)間。
作為本發(fā)明的優(yōu)選,所述判斷模塊中還包括數(shù)據(jù)銷毀單元,用于觸發(fā)銷毀所述時(shí)間間隔超出所述預(yù)設(shè)數(shù)據(jù)銷毀時(shí)間周期的用戶所對應(yīng)的所述所有統(tǒng)一資源定位符地址數(shù)據(jù)和觸發(fā)銷毀用戶信息。
有益效果:
1、將數(shù)據(jù)庫保存用戶信息與權(quán)限信息保存于session文件中,在session文件中進(jìn)行權(quán)限驗(yàn)證,避免了用戶登錄訪問服務(wù)器數(shù)據(jù)庫權(quán)限驗(yàn)證時(shí)頻繁的對數(shù)據(jù)庫進(jìn)行查詢,避免了數(shù)據(jù)庫壓力,也使得權(quán)限驗(yàn)證更加高效。
2、由于session文件儲存在服務(wù)器中,占用服務(wù)器內(nèi)存,設(shè)定session數(shù)據(jù)銷毀時(shí)間周期,對超過數(shù)據(jù)銷毀時(shí)間周期的數(shù)據(jù)進(jìn)行銷毀,防止session文件中數(shù)據(jù)溢出,過多占用服務(wù)器內(nèi)存,造成運(yùn)行速度變慢,查詢出錯(cuò),甚至服務(wù)器宕機(jī)。
附圖說明
圖1為本發(fā)明一種網(wǎng)站路由訪問權(quán)限控制方法的流程圖;
圖2為本發(fā)明一種網(wǎng)站路由訪問方法的流程圖;
圖3為本發(fā)明一種網(wǎng)站路由訪問系統(tǒng)的流程圖。
具體實(shí)施方式
以下是本發(fā)明的具體實(shí)施例并結(jié)合附圖,對本發(fā)明的技術(shù)方案作進(jìn)一步的描述,但本發(fā)明并不限于這些實(shí)施例。
在當(dāng)前常規(guī)情況下,web訪問控制技術(shù)通常以訪問服務(wù)器數(shù)據(jù)庫查詢用戶對應(yīng)的網(wǎng)站訪問權(quán)限并放行來實(shí)現(xiàn),在服務(wù)器端中建立數(shù)據(jù)庫,數(shù)據(jù)庫中包含用戶表、角色表、路由地址表和角色-路由地址表,在服務(wù)器接收到用戶訪問登錄請求后,服務(wù)器發(fā)出查詢指令對數(shù)據(jù)庫中表格(用戶表、角色表、路由地址表和角色-路由地址表)進(jìn)行查詢,通過角色與對應(yīng)登錄權(quán)限的關(guān)聯(lián),做出判斷用戶是否具有登錄權(quán)限,并作出放行指令使用戶能訪問具有權(quán)限的網(wǎng)站。但也存在了一些弊端,每次用戶訪問統(tǒng)一資源定位符(url)地址時(shí)對數(shù)據(jù)庫訪問查詢,造成對數(shù)據(jù)庫的頻繁訪問,反應(yīng)速度變慢,增加服務(wù)器的壓力。
在本發(fā)明中,將數(shù)據(jù)庫保存用戶信息與權(quán)限信息保存于session文件中,在session文件中進(jìn)行權(quán)限驗(yàn)證,避免了用戶登錄訪問服務(wù)器數(shù)據(jù)庫權(quán)限驗(yàn)證時(shí)頻繁的對數(shù)據(jù)庫進(jìn)行查詢,避免了數(shù)據(jù)庫壓力,也使得權(quán)限驗(yàn)證更加高效;session文件儲存在服務(wù)器中,占用服務(wù)器內(nèi)存,設(shè)定session數(shù)據(jù)銷毀時(shí)間周期,對超過數(shù)據(jù)銷毀時(shí)間周期的數(shù)據(jù)進(jìn)行銷毀,防止session文件中數(shù)據(jù)溢出,過多占用服務(wù)器內(nèi)存,造成運(yùn)行速度變慢,查詢出錯(cuò),甚至服務(wù)器宕機(jī)。
以下為本發(fā)明具體實(shí)施例。
實(shí)施例1
如圖1,本發(fā)明一種網(wǎng)站路由訪問權(quán)限控制方法,包括以下步驟:
步驟s10,驗(yàn)證用戶信息保存于會(huì)話控制文件。
服務(wù)器接收用戶登錄請求獲取用戶名以及所述當(dāng)前url地址,例如,用戶張三在客戶端輸入url地址:http://127.0.0.1:8080/test,并在登錄界面輸入用戶名“張三”和密碼“abc123”,獲取到url地址為http://127.0.0.1:8080/test,用戶名為“張三”,密碼為“abc123”。并在session文件中進(jìn)行匹配,驗(yàn)證用戶信息是否在session文件中,若在session文件中有用戶名為“張三”,密碼為“abc123”的信息,則進(jìn)行下一步,若沒有,則網(wǎng)站重定向到登錄界面。
步驟s20,首次訪問統(tǒng)一資源定位符地址時(shí),讀取數(shù)據(jù)庫中該用戶信息對應(yīng)的所有統(tǒng)一資源定位符地址,并保存于會(huì)話控制文件中;再次訪問統(tǒng)一資源定位符地址時(shí),讀取會(huì)話控制文件。
若張三第一次對http://127.0.0.1:8080/test訪問,系統(tǒng)則向數(shù)據(jù)庫查詢,并保存用戶對應(yīng)信息到session文件中。
session文件從數(shù)據(jù)庫中獲得用戶名對應(yīng)的所有url路由數(shù)據(jù)和用戶名對應(yīng)的所有角色數(shù)據(jù),并進(jìn)行保存。
在web服務(wù)器端數(shù)據(jù)庫保存有用戶登錄訪問權(quán)限數(shù)據(jù),主要由四個(gè)數(shù)據(jù)表構(gòu)成,包括用戶表、角色表、權(quán)限表、用戶角色表和角色權(quán)限表:
用戶表,包括用戶編碼、用戶名、密碼等,用于儲存用戶信息。
角色表,包括角色編碼、角色名、角色描述等,用于儲存角色信息。
權(quán)限表,包括權(quán)限編碼、權(quán)限名和url地址,用于儲存具體的權(quán)限信息。
用戶角色表,包括用戶編碼和角色編碼,實(shí)現(xiàn)用戶和角色的多對多映射。
角色權(quán)限表,包括角色編碼和權(quán)限編碼,實(shí)現(xiàn)角色和權(quán)限的多對多映射。
角色表通過所述用戶角色表與所述用戶表進(jìn)行多對多的關(guān)聯(lián)。
角色表通過所述角色權(quán)限表與所述權(quán)限表進(jìn)行多對多的關(guān)聯(lián)。
用戶是對數(shù)據(jù)對象進(jìn)行操作的主體,可以是人、機(jī)器人和計(jì)算機(jī)等。權(quán)限是對某一數(shù)據(jù)對象可操作的權(quán)利。角色則是用戶和權(quán)限的中間橋梁,通過引進(jìn)角色的概念實(shí)現(xiàn)了用戶和權(quán)限的邏輯分離,支撐了技術(shù)人員與業(yè)務(wù)人員職責(zé)的分離。傳統(tǒng)情況下,對數(shù)據(jù)庫進(jìn)行查詢,用戶通過獲得角色得到權(quán)限來對客體進(jìn)行操作,從而實(shí)現(xiàn)權(quán)限管理與控制。
本發(fā)明中加入session技術(shù),通過訪問查詢數(shù)據(jù)庫,查詢獲得用戶對應(yīng)的角色信息和url路由信息,儲存至session文件中,保存于服務(wù)器中。雖然數(shù)據(jù)庫和session文件同樣保存于服務(wù)器中,但同體量的用戶訪問查詢session文件對服務(wù)器產(chǎn)生的壓力小于同體量的用戶訪問查詢數(shù)據(jù)庫服務(wù)器產(chǎn)生的壓力,將數(shù)據(jù)存至session文件后該用戶訪問url都在session文件中查詢,減少了對數(shù)據(jù)庫的訪問查詢,減輕了服務(wù)器的負(fù)擔(dān),增加了服務(wù)器的穩(wěn)定性。
進(jìn)一步,所述步驟s20中包括標(biāo)記步驟s21:
若所述用戶信息存在于所述會(huì)話控制文件中,則獲取當(dāng)前時(shí)間并進(jìn)行標(biāo)記。
例如用戶名“張三”和密碼“abc123”被驗(yàn)證存在于session文件中且http://127.0.0.1:8080/test為用戶張三對應(yīng)session文件中所存的授權(quán)url地址集中,系統(tǒng)獲取張三首次訪問時(shí)間為2017年6月1日10:00并標(biāo)記此次用戶張三的登錄時(shí)間。
進(jìn)一步,在所述步驟s20中還包括判斷步驟s22:
判斷在步驟s21標(biāo)記的當(dāng)前時(shí)間標(biāo)記之前是否已有過時(shí)間標(biāo)記,若有,則再次進(jìn)行判斷;
得到已存在的最早時(shí)間標(biāo)記到所述當(dāng)前時(shí)間標(biāo)記的相隔時(shí)間,若比系統(tǒng)預(yù)設(shè)數(shù)據(jù)銷毀周期長,則銷毀所述會(huì)話控制文件中從所述數(shù)據(jù)庫中獲得的用戶信息。
例如系統(tǒng)預(yù)設(shè)數(shù)據(jù)銷毀時(shí)間周期為168小時(shí),系統(tǒng)獲取張三當(dāng)前時(shí)間為2017年6月9日10:00,已有訪問時(shí)間為2017年6月1日10:00和2017年6月6日16:00,那么在已有記錄中最早登錄記錄為2017年6月1日10:00,經(jīng)計(jì)算獲得時(shí)間間隔為192小時(shí),超出預(yù)設(shè)數(shù)據(jù)銷毀時(shí)間周期168小時(shí),則系統(tǒng)此時(shí)將張三所對應(yīng)的數(shù)據(jù)銷毀,系統(tǒng)需再次訪問查詢數(shù)據(jù)庫,再次保存張三所對應(yīng)的數(shù)據(jù)至session文件中,且再一次標(biāo)注張三新的首次登錄時(shí)間,新的首次登錄時(shí)間為2017年6月9日10:00并且此時(shí)系統(tǒng)內(nèi)只有這一條登錄記錄。
如圖2,本發(fā)明一種網(wǎng)站路由訪問方法:
步驟s01,服務(wù)器接收用戶登錄請求。
步驟s02,在會(huì)話控制文件中查詢用戶信息,若存在,則查詢數(shù)據(jù)庫讀取數(shù)據(jù)庫中該用戶信息對應(yīng)的所有統(tǒng)一資源定位符地址,并保存于會(huì)話控制文件中。
進(jìn)一步,訪問權(quán)限驗(yàn)證中步驟s02中還包括驗(yàn)證用戶信息未保存于會(huì)話控制文件時(shí),重定向至登陸界面。
步驟s03,在會(huì)話控制文件中驗(yàn)證用戶是否具有當(dāng)前統(tǒng)一資源定位符地址的權(quán)限,若有權(quán)限,則成功訪問,若沒權(quán)限,則結(jié)束。
在所述session文件中查詢用戶信息,角色表通過所述角色權(quán)限表與所述權(quán)限表進(jìn)行多對多的關(guān)聯(lián),獲得該用戶所具有權(quán)限的所有url地址,并對該用戶訪問的當(dāng)前url地址進(jìn)行判斷,若該用戶所具有權(quán)限的所有url地址變量中具有當(dāng)前url地址變量,則該用戶可以直接對當(dāng)前url地址進(jìn)行訪問;若該用戶所具有權(quán)限的所有url地址變量中不具有當(dāng)前url地址變量,則該用戶不可以直接對當(dāng)前url地址進(jìn)行訪問。例如,用戶張三在客戶端輸入url地址:http://127.0.0.1:8080/test,并在登錄界面輸入用戶名“張三”和密碼“abc123”,服務(wù)器端接收到張三的訪問需求,“張三”、“abc123”可在服務(wù)器中的session文件中查詢到且查到http://127.0.0.1:8080/test為用戶張三已授權(quán)地址,張三便可成功訪問http://127.0.0.1:8080/test網(wǎng)頁,否則不能訪問。
進(jìn)一步,判斷之前是否有登錄成功記錄,若有,則查詢所述會(huì)話控制文件中并登錄,若沒有則讀取數(shù)據(jù)庫中用戶所擁有的統(tǒng)一資源定位符權(quán)限地址集保存到會(huì)話文件中并判斷當(dāng)前統(tǒng)一資源定位符地址是否在所述統(tǒng)一資源定位符權(quán)限地址集中。
實(shí)施例2
如圖3,本發(fā)明一種基于session與數(shù)據(jù)庫的網(wǎng)站路由訪問系統(tǒng),包括:
登錄模塊,用于接收用戶登錄請求。
所述登錄模塊具體包括:
接受請求單元,用于服務(wù)器接收用戶登錄請求。
用戶在客戶端上進(jìn)行操作,輸入url地址,請求對該url地址進(jìn)行訪問,用戶張三在客戶端輸入url地址:http://127.0.0.1:8080/test,欲對url地址進(jìn)行訪問,并在網(wǎng)頁登錄提示頁面上輸入用戶名以及密碼等信息。
攔截器,用于攔截獲得用戶名以及所述當(dāng)前url地址。
服務(wù)器接收用戶登錄請求并同時(shí)通過攔截器攔截,所述攔截器獲取用戶名以及所述當(dāng)前url地址,例如,用戶張三在客戶端輸入url地址:http://127.0.0.1:8080/test,并在登錄界面輸入用戶名“張三”和密碼“abc123”,服務(wù)器端接收到張三的訪問需求同時(shí)此進(jìn)程被攔截器攔截,所述攔截器獲取到url地址為http://127.0.0.1:8080/test,用戶名為“張三”,密碼為“abc123”。
服務(wù)器端接收到張三的訪問需求同時(shí)此進(jìn)程被攔截器攔截,所述攔截器獲取到url地址為http://127.0.0.1:8080/test,用戶名為“張三”,密碼為“abc123”。
驗(yàn)證單元,用于驗(yàn)證用戶信息保存于會(huì)話控制文件。
進(jìn)一步,判斷訪問用戶信息是否存在session文件中,若不存在,則重定向到登錄界面。通過攔截器獲得的用戶信息放入session文件中進(jìn)行查詢,匹配所獲用戶信息是否存在于session文件中,例如“張三”和/或“abc1234”是否存在于session文件數(shù)據(jù)中,如果存在,則進(jìn)行下一步操作;如果不存在,則重定向至登錄界面。如果是輸錯(cuò)用戶信息如“張三”輸成“張四”、“abc1234”輸成“abc1235”則再次輸入驗(yàn)證;如果輸入正確,則該用戶無權(quán)登錄。
判斷模塊,用于判斷所述用戶是否首次登錄。
數(shù)據(jù)保存模塊,用于從數(shù)據(jù)控中獲取所對應(yīng)的所有角色以及所有url地址信息并保存至所述session文件。
成功在session文件中驗(yàn)證具有該用戶信息后,對數(shù)據(jù)庫進(jìn)行查詢,通過數(shù)據(jù)庫中用戶表、角色表、權(quán)限表、用戶角色表和角色權(quán)限表等表格進(jìn)行匹配,查詢用戶和角色的多對多映射關(guān)系、角色和權(quán)限的多對多映射關(guān)系,分析出該用戶具有的所有角色信息以及所有有權(quán)限訪問的url地址,并將這些數(shù)據(jù)儲存至session文件中。
進(jìn)一步,所述判斷模塊中還包括標(biāo)記單元,用于獲取當(dāng)前時(shí)間并標(biāo)記。
進(jìn)一步,所述判斷模塊中還包括判斷子單元,用于判斷在所述標(biāo)記單元標(biāo)記的當(dāng)前時(shí)間標(biāo)記之前是否已有過時(shí)間標(biāo)記,若已存在過時(shí)間標(biāo)記,則算出已存在的最早時(shí)間標(biāo)記到所述當(dāng)前時(shí)間標(biāo)記的相隔時(shí)間。
進(jìn)一步,所述判斷模塊中還包括數(shù)據(jù)銷毀單元,用于觸發(fā)銷毀所述時(shí)間間隔超出所述預(yù)設(shè)數(shù)據(jù)銷毀時(shí)間周期的用戶所對應(yīng)的所述所有統(tǒng)一資源定位符地址數(shù)據(jù)和觸發(fā)銷毀用戶名對應(yīng)的所有角色數(shù)據(jù)。
進(jìn)一步,將數(shù)據(jù)庫中用戶對應(yīng)的各種信息儲存至session文件中,在后期的訪問查詢過程中,相比較直接對數(shù)據(jù)庫查詢訪問,在session文件中查詢對服務(wù)器造成更小的壓力,增加服務(wù)器穩(wěn)定性,確保服務(wù)器系統(tǒng)數(shù)據(jù)的安全有效性。
權(quán)限控制模塊,用于查詢所述session文件中用戶信息控制用戶是否能夠訪問當(dāng)前url地址。
在所述session文件中查詢用戶信息,角色表通過所述角色權(quán)限表與所述權(quán)限表進(jìn)行多對多的關(guān)聯(lián),獲得該用戶所具有權(quán)限的所有url地址,并對該用戶訪問的當(dāng)前url地址進(jìn)行判斷,若該用戶所具有權(quán)限的所有url地址變量中具有當(dāng)前url地址變量,則該用戶可以直接對當(dāng)前url地址進(jìn)行訪問;若該用戶所具有權(quán)限的所有url地址變量中不具有當(dāng)前url地址變量,則該用戶不可以直接對當(dāng)前url地址進(jìn)行訪問。如用戶張三的用戶角色下具有對http://127.0.0.1:8080/test、http://127.0.0.1:8081/test、http://127.0.0.1:8083/test的訪問權(quán)限,如果張三當(dāng)前需要訪問的url地址為http://127.0.0.1:8080/test,則張三可以順利訪問;如果張三當(dāng)前需要訪問的url地址為http://127.0.0.1:8088/test,該url地址不存在于張三有權(quán)限url地址中,則張三無法訪問,若張三需要訪問http://127.0.0.1:8088/test,必須通過超級管理員權(quán)限,將http://127.0.0.1:8088/test的訪問權(quán)限分配給用戶張三。
本文中所描述的具體實(shí)施例僅僅是對本發(fā)明精神作舉例說明。本發(fā)明所屬技術(shù)領(lǐng)域的技術(shù)人員可以對所描述的具體實(shí)施例做各種各樣的修改或補(bǔ)充或采用類似的方式替代,但并不會(huì)偏離本發(fā)明的精神或者超越所附權(quán)利要求書所定義的范圍。