2017-08-13 4 views
0

J'ai lu à propos de la protection crsf dans codeigniter, mais je n'arrive pas à trouver un tutoriel décent sur la façon de procéder après avoir activé csrf dans le fichier de configuration.CSRF Codeigniter 3 Validation

J'ai un formulaire généré par une fonction de contrôleur users/create qui soumet à une autre fonction users/submit_new. J'ai utilisé la classe helper de formulaire pour que le champ crsf soit généré automatiquement.

J'ai cette fonction de validation sur la fonction de soumission:

if ($this->input->post(get_csrf_token_name()) == get_csrf_hash()) { 
$this->users_model->create(); } 

Mais tout ce que je reçois est l'action pas permis erreur. Quelle est la bonne façon de valider csrf? Ou est-ce que je fais quelque chose de mal?

Répondre

0

Si vous utilisez CodeIgniter CSRF la façon dont le guide de l'utilisateur mentionne, en définissant:

$config['csrf_protection'] = TRUE; // this in application/config/config.php 

Et vous utilisez également l'assistant de formulaire pour générer votre formulaire étiquette ouverte, vous n'avez pas besoin de vérifier pour le jeton et le hachage comme vous le faites. CodeIgniter le fait pour vous.

Lire les docs: https://www.codeigniter.com/user_guide/libraries/security.html#cross-site-request-forgery-csrf

Si vous avez encore des problèmes, puis voir les questions connexes:

codeigniter CSRF error: "The action you have requested is not allowed."

Action you have requested is not allowed error