Proteção CSRF
Proteção contra Cross-Site Request Forgery com tokens por sessão.
Helpers
// Obter token
$token = csrf_token();
// Campo oculto para formulários
echo csrf_field();
// Gera: <input type="hidden" name="_token" value="...">
// Verificar (usa $_POST['_token'] automaticamente)
if (csrf_verify()) {
// Token válido
}
// Verificar com token explícito
if (csrf_verify($token)) {
// Token válido
}
// Regenerar token
csrf_regenerate(); Exemplo em Formulário
<form method="POST">
<?= csrf_field() ?>
<input type="text" name="nome">
<button type="submit">Enviar</button>
</form> No Controller
if (requestPOST()) {
if (!csrf_verify()) {
flash_set('error', 'CSRF inválido.');
redirect('/formulario');
}
// Processar dados...
}