2009-10-18 60 views
1

我是CakePHP的新手,想知道如何保護我的表單免受跨站點請求僞造的影響,即爲窗體添加一個隨機數。我在配置文件中設置了salt。CakePHP和CSRF

回答

8

您必須將安全組件添加到$組件陣列控制器(或多個):

公共$組件=陣列(「安全」);

當您使用表單助手來創建表單時,CakePHP會自動爲您的表單添加一個隨機數。

+0

始終確保創造所有形式的輔助形式要素,否則你可能會得到errorr「黑洞」 – 2015-11-17 11:59:15

0

你也可以導入Sanitze lib中額外的強大的安全

http://book.cakephp.org/view/153/Data-Sanitization

App::import('Sanitize'); 
$badString = ";:<script><html>< // >@@#"; 
echo Sanitize::paranoid($badString); 
// output: scripthtml 
echo Sanitize::paranoid($badString, array(' ', '@')); 
// output: scripthtml @@