トークンを使用してサイト外から送られてくるフォームを受け付けないようにする事が出来ます。SecurityComponentを使用してトークンの出力と確認を行う事でCSRF対策となります。

使用方法

トークンが必要なアクションをSecurityComponentの属性かメソッドのどちらかを使用します。実際のトークンはformヘルパーが出力します。

  • $requireAuth属性に必要なアクションを配列でセットします。すべてのアクションを指定する場合は'*'だけを含んだ配列をセットします。
  • requireAuth()メソッドで必要なアクションをセットします。必要なアクションの数だけ引数を追加します。すべてのアクションを指定する場合は引数を使用しません。

formヘルパーの使用

SecurityComponentはトークンと同時にフォームの改変をチェックしていますので、formヘルパーを適切に使用している事も必要になります。フォームのエレメントにformヘルパーで出力しなかったフィールドが存在したりするとエラーになります。チェックしたくないフィールドがある場合は、$disabledFields属性で設定します。

CakePHP Note (v1.3)

Index