配置UA黑白名單
User-Agent是HTTP請求頭的一部分,包含用戶訪問時所使用的操作系統(tǒng)及版本、瀏覽器類型及版本等標識信息。您可以通過配置User-Agent黑白名單規(guī)則,限制訪問CDN資源的用戶,提升CDN的安全性。
注意事項
User-Agent黑名單與User-Agent白名單二選一,不可同時配置。
如果用戶請求中攜帶的User-Agent字段的值命中了User-Agent黑名單中的值,則帶有該UserAgent值的請求仍可訪問到CDN節(jié)點,但是會被CDN節(jié)點拒絕并返回403狀態(tài)碼,并且CDN日志中仍會記錄該請求記錄。
配置User-Agent黑白名單規(guī)則,限制訪問CDN資源的用戶,提升CDN的安全性,因此在惡意請求被CDN節(jié)點攔截的同時,會產(chǎn)生少量的流量費用,如果客戶端使用HTTPS協(xié)議訪問,還會產(chǎn)生HTTPS請求數(shù)費用(因為攔截惡意請求的時候,也同時消耗了CDN節(jié)點的處理資源)。
操作步驟
登錄CDN控制臺。
在左側導航欄,單擊域名管理。
在域名管理頁面,找到目標域名,單擊操作列的管理。
在指定域名的左側導航欄,單擊訪問控制。
單擊UA黑/白名單頁簽。
在UA黑/白名單頁簽下,單擊修改配置。
根據(jù)界面提示,配置User-Agent的黑名單或白名單。
參數(shù)
說明
名單類型
User-Agent名單類型如下:
黑名單
HTTP請求頭中的User-Agent字段命中黑名單的情況下,用戶將無法訪問所請求的資源,并返回403狀態(tài)碼。
白名單
只有HTTP請求頭中的User-Agent字段命中白名單的情況下,用戶才能訪問加速域名下的資源。
規(guī)則
配置User-Agent字段時,用豎線(|)分割多個值,支持通配符號(*)。例如:
*curl*|*IE*|*chrome*|*firefox*
。說明如果您需要對用戶請求中攜帶了User-Agent請求頭,但是值為空的情況做訪問控制,您可以使用參數(shù)
this-is-empty-ua
來表示User-Agent值為空。白名單下:規(guī)則中包含
this-is-empty-ua
,表示如果用戶請求中攜帶了User-Agent請求頭,但是值為空,則允許該請求。黑名單下:規(guī)則中包含
this-is-empty-ua
,表示如果用戶請求中攜帶了User-Agent請求頭,但是值為空,則拒絕該請求。
如果您需要對用戶請求中不攜帶User-Agent請求頭的情況做訪問控制,目前UA黑白名單功能暫不支持。您可以通過邊緣腳本功能來實現(xiàn),具體請參見邊緣腳本;或者填寫信息申請后臺配置。
規(guī)則條件
規(guī)則條件能夠對用戶請求中攜帶的各種參數(shù)信息進行識別,以此來決定某個配置是否對該請求生效。
不使用:不使用規(guī)則條件。
選擇已配置的規(guī)則引擎,新增或修改規(guī)則引擎請參見規(guī)則引擎。
單擊確定,完成配置。
配置示例
示例一:白名單
規(guī)則:
*IE*|*firefox*
結果說明:只有當請求來源于IE或者火狐瀏覽器時,才可以訪問所請求的資源,其余請求均不可訪問。
示例二:黑名單
規(guī)則:
*IE*|this-is-empty-ua
結果說明:當請求來源于IE瀏覽器或者請求頭中攜帶的User-Agent字段值為空時,均不可訪問所請求的資源。