PHP是否有自己的Rails真實性標記版本?PHP是否有像Rails一樣的真實性標記?
<meta name="csrf-token" content="<%= form_authenticity_token %>" />
<meta name="csrf-param" content="authenticity_token" />
如果不是,實現相同功能的最佳方法是什麼?
PHP是否有自己的Rails真實性標記版本?PHP是否有像Rails一樣的真實性標記?
<meta name="csrf-token" content="<%= form_authenticity_token %>" />
<meta name="csrf-param" content="authenticity_token" />
如果不是,實現相同功能的最佳方法是什麼?
當輸出到形式:
$token = md5(time() . rand(1,100));
$_SESSION['token'] = $token;
<input type='hidden' name='token' value='<?=$token;?>'/>
POST後:
if(empty($_POST['token']) || $_POST['token'] !== $_SESSION['token']){
exit("Bad token!");
}
unset($_SESSION['token']);
這是CSRF保護。但CSRF保護現在可以在沒有這些令牌的情況下完成,只需使用特殊的Cookie參數。你可能想看一下https://github.com/delight-im/PHP-Auth,它會自動完成。 – caw 2016-10-21 21:32:52