URL 過濾技術

2021-05-23 16:30:50 字數 1717 閱讀 4009

針對企業對員工上網行為的控制管理,可以採用url

過濾

技術。如企業不允許研發員工在上班時間訪問娛樂**,在下班時間則允許;或者企業不允許市場人員訪問研發內部**等等。這些基於不同的使用者組、不同的時間段,訪問的網頁有區別的問題,可以採用url過濾技術實現。

url過濾功能可以歸納為3大類:

黑白名單功能:如把釣魚**、黃色**......列入黑名單,可以保護公司內網的安全;而把一些暢通無阻的網頁加入白名單,就不需要進行分類查詢

,提高了訪問速度。

分類訪問功能:對於黑白名單無法匹配的網頁,採取分類查詢的功能。分類可以使用者自己配置,也可以向第三方的分類查詢伺服器進行查詢,如surfcontrol的分類伺服器;與第三方伺服器的通訊是技術難點,是tcp連線還是udp連線,若是tcp連線,在web

訪問高峰期,要建多少tcp連線,是不是會超過裝置負載,效能是不是會受影響,查詢速度是不是會很慢;若是udp連線,怎麼處理鏈路擁塞情況下查詢報文丟失的情況,查詢超時怎麼處理?總而言之,查詢到分類後,可以與本地的使用者組和時間段關聯,判斷該http請求是否該放行。

頁面推送:若是被阻斷的頁面,需要對使用者進行通知,可以採用頁面推送的方式。此時,需要對發起http請求的使用者推送乙個頁面,知道客戶,訪問被阻斷,並且斷開http請求。這裡的技術難點是,如何模擬httpserver

,給client傳送乙個 reset報文,並重新構造乙個報文傳送給客戶端。涉及到報文封裝,校驗和計算,序列號修改。

如何從http中提取url呢?我們知道http get請求的格式:

我們把 host 部分提取出來,進行 url 過濾,過濾的時候,用什麼匹配方式?可以考慮 mpse 演算法,即把要匹配的模式串先預編譯成狀態機,對string進行一次掃瞄時,進行狀態跳轉,因此一次掃瞄,就能找出所以字串。時間複雜度為0(n);

對於乙個網頁中的n多資源,可以根據資源型別判斷,是否需要對該 host 進行過濾,減少重複工作

。在該特性開發過程中,碰到的問題有:

1、易用性:web頁面整改:按主功能劃主頁面,主頁面裡放子功能;匹配方式整改,分為prefix, surfix, exact, obscuring;分類頁面區分自定義和預定義;category, user, address,action 的配置;預設ip位址;

2、功能問題:分類查詢的返回報文;頁面推送中rst報文重傳;

如何測出這些問題:

1、易用性:按功能模組來設計頁面;

2、功能問題:多工互動時,考慮資源修改的情況;互動複雜的地方容易出現問題;

springsecurity的URL過濾和全域性過濾

springsecurity的url過濾和全域性過濾 最近有個需求,需要配置乙個登陸使用者才能訪問專案的資源,也就是說要配置乙個 形式的鏈結,保護專案中所有的資源,要登入了的使用者才能訪問,當然是要除開登陸頁面之外。springsecurity對url過濾是採用的正規表示式,其實一直就在使用spri...

設定CAS Filter過濾某些URL

公司的平台引入了cas sso來實現整個系統的單點登入功能,在cas client的web.xml中需要配置filter來攔截外來的請求,實現單點登入 單點登出 許可權認證 ticket認證 設定使用者資訊等。意思好像是以 開頭的只能通過字首過濾,以 開頭的只能通過字尾過濾,其它字串只能完全匹配,不...

nginx 過濾某個url請求

最近上線乙個業務,結果這個介面的業務邏輯查庫末加索引,資料庫直接boom,只能臨時處理,將這個介面的請求過濾,不經過後端邏輯直接返回。nginx 配置修改如下 server location php 過濾段 location access log data logs log access nginx...