web的越權訪問的處理(步驟詳解)

2021-08-22 12:17:24 字數 4646 閱讀 9537

使用者越權訪問的處理

一般來說,越權放問就好比你是非系統管理員使用者,卻偷偷的跑進了系統管理選單,僭越權利訪問裡面的資訊甚至修改其中的資料(不同級別的越權又稱垂直越權訪問),因此對資料的安全性造成極大的威脅,是故每家企業都有其方法來保證企業內部資料的安全性,也就是解決越權訪問的問題。

有關改業務處理主要考慮下面兩個方面:

url的越權訪問和介面方法的越權訪問

通過角色使用者來判斷是否越權訪問

分下面幾種情況來討論:

a.當沒有使用者登入的時候:

只允許登入介面和一些js,css等非jsp/html的頁面訪問,這樣算是越權

b.當使用者登入了之後:

首先通過角色關係去資料庫中查詢他能夠訪問的頁面,這樣的話就可以針對能訪問的做乙個放行處理,非許可權內的頁面屬於越權,這個時候攔截掉,可以直接讓其跳轉到登陸介面表示他越權了已經(自行處理越權後的操作)。

2.具體實現流程

a.統計好每個選單url對應的介面方法和子頁面訪問路徑(jsp或html等)

b.將統計好的資料一一對應起來,存放在配置檔案中或者資料庫某個表中,這些資料隨著業務的新增或者裁剪應有相關對應的維護,暫時以配置檔案為例

c.在登入模組中通過登入的使用者角色查詢它能夠訪問的選單url(寫乙個介面方法),存放在乙個靜態公有list變數中,如下定義:

public

static listmenu_urls = new arraylist<>();

將查詢返回過來的url集合塞給menu_urls。d,

定義乙個靜態公有properties變數,用來存放配置檔案中的鍵值對,如下定義:

public

static properties menu_inte***ce = null;

然後對其進行讀取配置檔案並賦值

string url = request.getsession().getservletcontext().getrealpath("/web-inf/classes/porturl.properties");

file file = new

file(url);

try

catch

(exception e)

e.springmvc***,判斷session中使用者是否過期,在dofilter 方法裡匹配,只要js,css,pdf,png,jpg等檔案可放行,在裡面判斷使用者是否登入,沒有登入的話只要是非登入頁面的頁面,統一視為越權訪問。如果是已經登入的使用者,我們可以取到登入後的menu_urls

和menu_inte***ce

的資訊,可以做如下判斷:

如果訪問的路徑checkurl和menu_urls

中的任意子串能匹配的上的話說明是可以訪問的,這種情況放行,否則攔截下來跳轉登入,記錄越權訪問資訊;

在上面的情況下,還會存在一種情況,當訪問的路徑是子頁面的時候,這個時候需要去匹配,能匹配上的可以放行,這個需要通過checkurl去配置檔案中找到對應的父url,然後再進行匹配menu_urls

,這個裡面的父url是唯一的,配置檔案中一(父)對多(子)。

介面訪問的也是同樣的道理。

其中放行方法:

//

正常訪問,直接放行

filterchain.dofilter(servletrequest, servletresponse);

return;//

初始化printwriterurl

string printwriterurl="";

//其他jsp的時候算是越權訪問

logger.info("使用者越權訪問!!!!" +url);

這樣就大功告成,具體**細節如下所示:

推送放行

)else

if(server.tostring().contains("login.jsp"))

else

}else

if(user !=null && server.tostring().contains(".jsp") && !(server.tostring().contains("login.jsp")))

else}c:

for(int j=0;j)

}//當上乙個判斷時不能訪問考慮第二種情況

//如果發現是css或者js檔案,直接放行

/*** 判斷是否為ajax請求

是true, 否false

ftp的web訪問格式

訪問ftp伺服器傳統的方法是使用專用的客戶端程式,包括命令列的ftp客戶端c windows system32 ftp.exe,以及各種圖形介面的ftp客戶端程式。在ms windows系統中使用資源管理器是另一種介面友好的方便使用方法。這種方法需要用到url格式 1 完全格式 ftp userna...

web的字型處理

2.對於字型的引用 2.1檔案的目錄截圖 2.2 html部分 雖然今天溫度很低,天氣很冷,但是還是有太陽的,比較開心!綠蘿會開花嗎 為什麼感覺字型不全呢,一些字並沒有被轉化的樣子,這樣顯示的好蹩腳啊。像個壞了的花瓶啊。綠蘿會開花嗎 zsdjfhiafgsdhfg 為什麼感覺字型不全呢,一些字並沒有...

web專案上線的基本步驟

前段時間,想做乙個自己的個人 倒是可以自己開發,可是還不會上線,於是開始自學專案上線,1.專案開發 2.購買或者租用一台雲伺服器 3.購買並註冊網域名稱 5.公安網備案 6.搭建伺服器環境 7.專案發布 8.運營維護 下面簡單介紹一下這7個步驟,當然不是最標準的,不過可供初學者參考 1.專案開發 專...