本文是bboss 標籤庫系列文章續篇-安全篇,前兩篇文章[url=標籤使用大全》[/url]和[url=標籤庫使用大全(續)[/url] 介紹了bboss資料展示標籤庫和邏輯標籤庫。
dtoken
assertdtoken
這兩個標籤所屬的標籤定義檔案為[url=他們配合一起來解決跨站攻擊和表單重複提交等安全性問題。
一、dtoken標籤
dtoken標籤用於在客戶端生成動態令牌,用來防止跨站偽造攻擊和表單重複提交問題,一般將其放置在:
1.表單中input hidden元素中
2.url的引數串中
3.ajax請求的json引數中
[url= 動態令牌機制輕鬆搞定**跨站攻擊和表單重複提交問題[/url]
dtoken屬性:
element-可選屬性,引數有4個值(如果沒有指定預設為input型別):
json 生成json串令牌,名稱和值的分隔符預設為'號,如果要指定為"號,那麼需要通過jsonsplit引數來指定, 如果jsonsplit為',則輸出值為:
* _dt_token_:'1518435257'
* 如果如果jsonsplit為",則輸出值為:
* _dt_token_:"1518435257"
input輸出input hidden,生成隱藏域令牌,輸出值示例為:
param(等號表示式),生成url引數串令牌, 輸出值示例為:_dt_token_=1518435257
token-只生成令牌本身,對於這種方式,客戶端必須將該token以引數名_dt_token_傳回服務端,否則不起作用,輸出值示例為:1518435257
jsonsplit-可選屬性,指定json串字串值得修飾符,預設為',可以指定為"
cache-標識是否在伺服器端儲存令牌,true儲存,false不儲存,預設為true,令牌儲存機制由tokenfilter的tokenstore引數指定。
fid-可選屬性,令牌所屬窗體唯一標識,乙個窗體只需要乙個令牌,如果在同乙個窗體中dtoken標籤需要出現多次,比如在邏輯判斷中出現多次,那麼就需要指定fid屬性,除此以外都不需要指定fid屬性
二、assertdtoken標籤
assertdtoken標籤沒有定義屬性集,和dtoken標籤配合使用,dtoken標籤在客戶端放置動態臨時令牌,assertdtoken標籤用於在服務端頁面上判斷令牌被客戶端傳回並且校驗令牌是否正確。如果沒有啟用動態令牌機制,該標籤無效;如果啟用了,assertdtoken判斷令牌是否被客戶端傳回並且校驗令牌是否正確;如果沒有傳回則拒絕訪問,如果傳回的令牌已經失效則拒絕訪問。
assertdtoken標籤主要用於jsp頁面,它和assertdtoken註解的功能一致,assertdtoken註解主要用於bboss mvc的控制器方法中。
到此兩個簡單的標籤就介紹完了,雖然簡單但卻為我們有效解決了以下問題:
1.防止表單重複提交
2.防止跨站指令碼編制漏洞
3.防止跨站請求偽造攻擊
4.有效避免框架釣魚攻擊
5.有效防止鏈結注入攻擊
dede標籤 arclist標籤使用大全
基本語法 field title typeid 欄目id,在列表模板和檔案模板中一般不需要指定,在首頁模板中允許用 分開表示多個欄目 idlist 提取特定文件 文件id 呼叫指定id文件 例子idlist 4,45,78,237 limit 起始id,記錄數 起始id從0開始 表示限定的記錄範圍 ...
標籤的使用
這個標籤用來測試乙個xml檔案中內容的符合某個屬性的某乙個節點是否存在或者是否有效.標籤屬性 ifexists,測試內容項是否存在,如果內容項有多個取值,需要增加下標來測試.elementname index 不是必須的.ifexistsone 測試乙個有逗點 分隔的內容項的乙個值是否存在.當有多個...
jsp include標籤使用
jsp有兩種方式使用include 作用都是將乙個頁面引入到另外乙個頁面中 include file 這是include指令 正如我們所熟知 jsp是通過被翻譯成servlet 然後被jee容器使用的,在使用include指令的時候,容器會將對應頁面包含到本頁面一起進行編譯,最終形成乙個servle...