針對RFID系統(tǒng)中傳統(tǒng)的SQL注入攻擊(SQLIA)檢測算法成本較高且檢測率較低的問題,提出了一種基于數(shù)據(jù)完整性策略的SQL注入攻擊檢測和防御算法。利用數(shù)據(jù)完整性策略,確保輸入數(shù)據(jù)為強類型、語法正確、在長度邊界內(nèi)、僅包含允許的字符、正確簽名數(shù)字且數(shù)字在范圍邊界內(nèi)等約束,以防御SQL注入攻擊。通過檢測查詢是否符合意圖符合條件、大小符合條件和標識符符合條件來檢測SQL注入攻擊。實驗結果顯示,算法具有較高的執(zhí)行效率,消耗時間僅為節(jié)點序列比對算法的29.7%,僅為快速比對算法的76.0%。算法的檢測率比常用的檢測工具BSQL Hacker和Pangolin分別高出13.8%和20.6%,表明本算法能夠保證正常查詢,可有效檢測和防御SQL注入攻擊。