Protéger son authentification symfony3 contre les attaques par force brute

Tout formulaire d'authentification est susceptible d'être attaqué par un hacker (enfin plus un robot) via une brute force. Cette attaque consiste à tester des couples login/password jusqu'à en trouver un qui permet de s'authentifier. Dans cette article je vais vous montrer comment se protéger facilement de ces attaques dans une application Symfony3 ou 2 via l'utilisation des Events de Symfony. C'est aussi l'occasion d'utiliser le composant cache introduit dans Symfony 3.1.

Lire la suite

Tags et CompilerPass de Symfony2 expliqués par l'exemple

Le container de dépendance est le composant central de Symfony2, tout le monde l'utilise. Moins sont les développeurs qui utilisent les tags dans la définition d'un service et malheureusement peu savent comment ça marche. C'est l'object de cet article, montrer par l'exemple l'utilité des tags et leur utilisation via le CompilerPass. Cela permet de réduire les dépendances entre les classe facilite la maintenabilité du site.

Lire la suite

Utiliser le composant Config de Symfony2 pour valider les fichiers XML et YAML

Cet article parle du composant Config de symfony2 qui permet d'exposer sémantiquement une configuration et de la valider. Pour me casser souvent les dents dessus, j'ai décidé de compiler ici quelques trucs utiles qui n'apparaissent pas dans la documentation officielle.

Lire la suite

Comment Doctrine2 ORM a tué le bénéfice de mon cache pour soulager ma base de donnée

Aujourd'hui je vous raconte une petite histoire à propos de MariaDB et Doctrine2 en train de couler et comment Redis, venant les sauver, les coule encore plus vite. Retour d’expérience sur mes déboires avec Redis et Doctrine2 en espérant soulager un MariaDB a bout de souffle.

Lire la suite

Utiliser le composant Expression Language de Symfony2 dans les fichiers de services YML et XML

Cet article montre, par l'exemple, l'utilisation et la syntaxe du composant Expression Language de Symfony2 dans les fichiers de services écrit en XML ou en Yaml. Ce composant permet d'ajouter du dynamisme aux fichiers de configuration.

Lire la suite

Utiliser un hook Git pour mettre à jour automatiquement les vendors de Symfony2 avec Composer

La mise à jour de Symfony2 est plutôt facile depuis l'utilisation de Composer. Mais d’expérience, ce n'est pas le cas pour tout le monde, nombreux sont les développeurs et les intégrateurs qui sont allergiques à la ligne de commande. Pour faciliter cette tache à l'ensemble de l'équipe j'ai donc utilisé un hook Git pour automatiser la mise à jour des vendors de Symfony2.

Lire la suite

Pense bête: activer la rotation de logs de Symfony 2 dans la configuration de Monolog

Configurer la rotation de logs de Symfony peut éviter bien des soucis. Voici comment faire.

Lire la suite

Symfony2: étendre globalement les options des FormType avec l'injection de dépendance (MAJ)

J'ai eu besoin de modifier les options que l'on peut passer à un Type afin de retrouver l'option help qu'il y avait dans les widgets de symfony 1. Dans cet article je vous présente comment j'ai ajouté cette option dans les Type de symfony2 sans avoir à surcharger tous les Types. Mise A Jour: grace au commentaire j'ai découvert les Forms Extension, l'article les utilise.

Lire la suite

Exemple d'utilisation du composant serializer de Symfony2: création d'un sitemap

Petite présentation du composant Serializer de Symfony2 (la version originale du framework, pas la surcharge JMS) par un exemple: la construction en dynamique d'un sitemap d'un site web.

Lire la suite

Un exemple pour enrichir la debug toolbar et le profiler de Symfony2 à l'aide du DataCollector

La debug toolbar de symfony est surement l'outil dont je ne peux plus me passer. Dans Symfony2 elle a été améliorée et on peut désormais l'étendre à l'image de Symfony2. Voici un exemple d'utilisation du DataCollector de sf2 pour ajouter des informations dans la debug toolbar et dans le profiler.

Lire la suite