fuelphpを仕事で使うかもしれなかったので調査していたところ、oilコマンドにscaffoldがあったので叩いてみました
Taskをscaffoldしてみた
php oil g scaffold task title:text completed_at:datetime
このコマンドでmodel, controller, viewが作られました。
controllerには以下のアクションが実装されている。
- action_index
- action_view
- action_create
- action_edit
- action_delete
すっかりrails脳なのでnewとupdateがないなーと思ってコード読んでいると、action_createにGETとPOST両方の処理がif文で書き分けられてる…
これは!と思ったんですが、まぁいいかとaction_deleteに目を向けると、GETで動くようになっているじゃあありませんか。
ということは、/task/delete/:id?authenticity_token=xxxxxx...みたいなリンクが設置されているのかなーと思ってview見ると /task/delete/:id
で終わってるんですよね。
ローカルでcsrf試してみた
vagrantでphp環境用意していたのでこんな感じのhtmlを作成してみた
<a href="http://192.168.33.32/task/delete/1">csrf delete</a>
クリックして普通にCSRF成功した。
これは…どうゆうことなの?