VerifyCsrfToken est un middleware à Laravel pour empêcher les attaques du CSRF. Son mécanisme principal est de s'assurer que la source de demande est légitime en vérifiant le jeton CSRF dans la demande. 1. Il génère un jeton unique lorsque l'utilisateur accède à la page de formulaire et intègre le formulaire; 2. Vérifiez que le jeton est cohérent lors de la soumission, sinon la demande sera rejetée; 3. Vérifiez principalement la publication, le put, le correctif, la suppression des demandes et les demandes ne vérifient pas par défaut; 4. Vous pouvez ignorer la vérification en ajoutant des itinéraires dans l'attribut $ sauf, mais utilisez-le avec prudence; 5. Il est recommandé d'utiliser Sanctum ou Passport pour gérer le jeton pour les scénarios SPA ou API.
VerifyCsrFtoken est un middleware dans le cadre Laravel utilisé pour empêcher les attaques de contrefa?on de demande de site croisé (CSRF). En termes simples, il garantit que la demande est lancée par l'utilisateur, plut?t qu'une demande malveillante induite par un site Web tiers en vérifiant si la demande contient un jeton CSRF légitime.
Laravel active ce middleware par défaut, et il est déjà inclus dans le groupe mondial de middleware. Cela signifie que la plupart des demandes entrant dans la demande seront vérifiées par celui-ci.
Comment ?a marche?
Le mécanisme central de VerifyCsrfToken est d'utiliser des jetons pour vérifier la légitimité de la source de demande:
- Générer un jeton : Lorsqu'un utilisateur visite une page avec un formulaire, Laravel génère automatiquement un jeton CSRF unique et l'intégre dans le formulaire (généralement un champ caché).
- Vérification de la soumission : Lorsqu'un utilisateur soumet un formulaire, le middleware vérifie si le jeton soumis est cohérent avec le stockage c?té serveur. S'il est incohérent ou manquant, la demande sera refusée (renvoie une erreur 419 ou 500).
En plus des formulaires HTML, si vous envoyez des demandes de poste dans JavaScript (telles qu'Axios), vous devez configurer la méthode de livraison du jeton, qui est généralement placée dans l'en-tête de demande.
Quelles demandes seront vérifiées?
VerifyCsrfToken ne vérifie pas toutes les demandes. Il cible principalement des méthodes de demande pouvant modifier l'état, telles que:
-
POST
-
PUT
-
PATCH
-
DELETE
Les demandes en lecture seule comme GET
ne vérifieront pas les jetons CSRF par défaut, car ils ne devraient pas modifier l'état de l'application.
Comment contourner la vérification de certaines itinéraires?
Parfois, vous pouvez rencontrer des interfaces qui ne nécessitent pas de vérification CSRF, telles que le routage API ou les adresses de rappel de service externes. Pour le moment, vous pouvez sauter la vérification par:
- Ouvrez
App\Http\Middleware\VerifyCsrfToken
Class - Ajoutez le chemin d'itinéraire pour exclure dans
$except
protégé $ sauf = [ 'api / *', 'webhook / stripe', ]]
De cette fa?on, les demandes de ces chemins ne seront pas limitées par VerifyCsrftoken.
Il convient de noter que le fait de sauter la vérification du CSRF peut présenter des risques de sécurité et ne doit être utilisé que si nécessaire.
Quelques détails dans le développement réel
- Si vous développez un spa (comme l'API Vue Laravel), il est recommandé d'utiliser
sanctum
oupassport
de Laravel pour gérer l'authentification et la gestion des jetons au lieu de s'appuyer sur les jetons CSRF traditionnels. - Lorsque vous utilisez le moteur du modèle de lame, vous pouvez rapidement insérer le champ de jeton CSRF à l'aide de la directive
@csrf
. - Pour les demandes AJAX, assurez-vous que le frontal comporte correctement le paramètre
_token
ou définissezXSRF-TOKEN
.
Fondamentalement, c'est tout. VerifyCsrfToken est un mécanisme de protection de la sécurité très basique mais très critique. Bien que cela ne semble pas compliqué, il est facile d'ignorer certains détails dans le développement réel et de conduire à des erreurs.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Laravel est un framework d'application Web PHP populaire qui offre de nombreux moyens rapides et simples de créer des applications Web efficaces, sécurisées et évolutives. Lors du développement d'applications Laravel, nous devons souvent considérer la question de la récupération des données, c'est-à-dire comment récupérer les données et assurer le fonctionnement normal de l'application en cas de perte ou de dommage de données. Dans cet article, nous présenterons comment utiliser le middleware Laravel pour implémenter des fonctions de récupération de données et fournirons des exemples de code spécifiques. 1. Qu'est-ce que Lara ?

Comment utiliser un middleware pour gérer la validation de formulaire dans Laravel, des exemples de code spécifiques sont requis Introduction : Dans Laravel, la validation de formulaire est une tache très courante. Afin de garantir la validité et la sécurité des données saisies par les utilisateurs, nous vérifions généralement les données soumises dans le formulaire. Laravel fournit une fonction pratique de validation de formulaire et prend également en charge l'utilisation de middleware pour gérer la validation de formulaire. Cet article présentera en détail comment utiliser le middleware pour gérer la validation des formulaires dans Laravel et fournira des exemples de code spécifiques.

Le principe du middleware Tomcat est implémenté sur la base des spécifications Java Servlet et Java EE. En tant que conteneur de servlets, Tomcat est responsable du traitement des requêtes et des réponses HTTP et de la fourniture de l'environnement d'exécution des applications Web. Les principes du middleware Tomcat concernent principalement : 1. Le modèle de conteneur ; 2. L'architecture des composants ; 3. Le mécanisme de traitement des servlets ; 4. L'écoute des événements et les filtres ; 6. La sécurité. technologie 9. Mode intégré, etc.

Protection contre les scripts intersites (XSS) et la falsification de requêtes intersites (CSRF) dans Laravel Avec le développement d'Internet, les problèmes de sécurité des réseaux sont devenus de plus en plus graves. Parmi eux, Cross-SiteScripting (XSS) et Cross-SiteRequestForgery (CSRF) sont l'une des méthodes d'attaque les plus courantes. Laravel, en tant que framework de développement PHP populaire, offre aux utilisateurs une variété de mécanismes de sécurité

Comment utiliser le middleware pour la conversion des réponses dans Laravel Middleware est l'une des fonctionnalités très puissantes et pratiques du framework Laravel. Il nous permet de traiter les demandes et les réponses avant que la demande n'entre dans le contr?leur ou avant que la réponse ne soit envoyée au client. Dans cet article, je vais montrer comment utiliser le middleware pour la transformation des réponses dans Laravel. Avant de commencer, assurez-vous que Laravel est installé et qu'un nouveau projet est créé. Nous allons maintenant suivre ces étapes : Créer un nouveau middleware Ouvrir

Comment utiliser le middleware pour l'accélération des données dans Laravel Introduction : Lors du développement d'applications Web à l'aide du framework Laravel, l'accélération des données est la clé pour améliorer les performances des applications. Le middleware est une fonctionnalité importante fournie par Laravel qui gère les requêtes avant qu'elles n'atteignent le contr?leur ou avant que la réponse ne soit renvoyée. Cet article se concentrera sur la fa?on d'utiliser le middleware pour obtenir une accélération des données dans Laravel et fournira des exemples de code spécifiques. 1. Qu'est-ce qu'un middleware ? Le middleware est un mécanisme dans le framework Laravel.

Comment configurer le partage de ressources Cross-Origin (CORS) à l'aide d'un middleware dans le framework Slim Le partage de ressources Cross-Origin (CORS) est un mécanisme qui permet au serveur de définir des informations supplémentaires dans l'en-tête de réponse HTTP pour indiquer au navigateur si Autoriser le partage de ressources Cross-Origin. -demandes de domaine. Dans certains projets avec séparation front-end et back-end, le mécanisme CORS peut être utilisé pour réaliser la requête inter-domaines du front-end pour l'interface back-end. Lors de l'utilisation du framework Slim pour développer l'API REST, nous pouvons utiliser un middleware (Middleware)

Guide de sécurité du framework PHP?: Comment prévenir les attaques CSRF?? Une attaque CSRF (Cross-Site Request Forgery) est un type d'attaque réseau dans lequel un attaquant incite un utilisateur à effectuer des actions involontaires au sein de l'application Web de la victime. Comment fonctionne le CSRF ? Les attaques CSRF exploitent le fait que la plupart des applications Web permettent d'envoyer des requêtes entre différentes pages au sein du même nom de domaine. L'attaquant crée une page malveillante qui envoie des requêtes à l'application de la victime, déclenchant des actions non autorisées. Comment prévenir les attaques CSRF ? 1. Utilisez des jetons anti-CSRF?: attribuez à chaque utilisateur un jeton unique, stockez-le dans la session ou dans le cookie. Incluez un champ masqué dans votre candidature pour soumettre ce jeton
