在WFilter NGF(WSG上網(wǎng)行為管理網(wǎng)關(guān))的”Web認證“配置中,可以基于IP范圍來配置要進行Web認證的客戶端。實際使用中,有些局域網(wǎng)電腦和手機無線終端都混雜在同一個網(wǎng)段,這種情況下,如果要只對電腦做認證,或者只對手機做認證,就不能通過IP范圍來實現(xiàn)了。需要修改默認的認證頁面,基于瀏覽器的useragent來獲取客戶端操作系統(tǒng)類型,并且判斷是否放行(無需認證直接放行)。
如下圖,點擊”編輯Web認證頁面”,然后點擊源代碼圖標。
可以查看到Web認證的界面源代碼。
里面添加一個function,如下:
function checkbypassPC(){
//alert("userAgent="+window.navigator.userAgent);
if( window.navigator.userAgent != undefined && window.navigator.userAgent.indexOf("Windows") > -1 ){
//如果是windows系統(tǒng),自動bypass。
$.ajax( "/cgi-bin/verify?tid=bypasspc", {
method: 'GET',
cache: false,
dataType: 'text',
success: function(data) {
//跳轉(zhuǎn)到成功認證的跳轉(zhuǎn)頁面
check_landing_page();
}
});
}
}
如下圖:
然后切換到編輯模式下點擊保存。(注意:不要在源代碼模式下保存)
經(jīng)過上述配置后,在pc端跳出認證頁面后即可自動完成認證,無需進行掃碼。如果要對手機不進行認證,直接在函數(shù)中修改useragent即可,如下:
function checkbypassPC(){
//alert("userAgent="+window.navigator.userAgent);
if( /Android|webOS|iPhone|iPad|iPod|Opera Mini/i.test(window.navigator.userAgent) ) {
//Android、iphone、ipad自動bypass。
$.ajax( "/cgi-bin/verify?tid=bypasspc", {
method: 'GET',
cache: false,
dataType: 'text',
success: function(data) {
//跳轉(zhuǎn)到成功認證的跳轉(zhuǎn)頁面
check_landing_page();
}
});
}
}