AFUP Forum PHP 2020 Baromètre Planète PHP
planete-php.fr Articles Blogs Infos RSS Feed Atom Feed Twitter

Articles

2020, conférences et COVID-19

Stéphane Hulard (CH Studio) 27/04/2020

Avec la situation actuelle, l'organisation des conférences a été bousculée car des rassemblements de cette ampleur ne seront pas autorisés avant un bon moment que ce soit en France ou en Allemagne. Malgré tout les sessions restent maintenues !


L’article 2020, conférences et COVID-19 est apparu en premier sur CH Studio - Stéphane Hulard / PHP, Laravel, Symfony, Sécurité, API.


Pourquoi migrer de VSCode à VSCodium ?

Stéphane Hulard (CH Studio) 27/04/2020

Une question simple et complexe à la fois. VSCode est mon éditeur de cœur depuis quelques années maintenant, il est configuré aux petits oignons et connecté au bout de mes doigts. Le partage et la liberté ! Cependant, ma naïveté m’a fait penser, à tort, que tout était beau dans le meilleur des mondes. Microsoft […]


L’article Pourquoi migrer de VSCode à VSCodium ? est apparu en premier sur CH Studio - Stéphane Hulard / PHP, Laravel, Symfony, Sécurité, API.


Quelles sont vos meilleures pratiques Symfony ?

Strangebuzz 21/04/2020
Dans cet article, nous allons passer en revue toutes les "meilleures pratiques" Symfony présentes dans la documentation officielle. Pour chacune, je dirai si je suis d'accord ou pas et pourquoi.

Implémenter un moteur de recherche avec elasticsearch et Symfony (partie 3/3)

Strangebuzz 18/04/2020
Dans cette troisième et dernière partie, nous allons continuer à peaufiner notre moteur de recherche. Tout d'abord, nous allons améliorer notre stack elasticsearch en incorporant Kibana. Ensuite, nous implémenterons un autocomplete en utilisant la fonctionnalité de suggestion d'elasticsearch.

L'antisèche intéractive de la classe Symfony Request

Strangebuzz 10/04/2020
Dans cet article nous allons passer en revue les différentes fonctions de l'un des composants les plus utilisé et utile de Symfony : La classe Request. Symfony étant en effet un framework "Requête / Réponse". Il sera intéractif et vous pourrez changer l'URL utilisée dans les exemples et fournir la vôtre afin que vous puissez tester différents paramètres. Il pourra donc vous épargner de nombreux appels dump().

Comment la communauté peut aider en cette situation de crise sanitaire

AFUP 09/04/2020
#### Projet de la Croix-Rouge ouvert aux reviews/contributions sur Github
La Croix-Rouge Française a développé un outil de gestion, planification et projection de moyens humains et opérationnels. Son but est de recenser les disponibilités des bénévoles afin de connaître le plus précisément possible les ressources sollicitables et d'avoir de la visibilité sur les engagements à réaliser. Tout est sur le [Github du projet](https://github.com/crf-devs/resop), qui est ouvert aux reviews et contributions.

#### L'Assistance Publique - Hôpitaux de Paris recherche des volontaires
L'AP-HP centralise les propositions d'aide de citoyens volontaires pour les soutenir pendant la crise. Si vous avez du temps et envie de vous investir, remplissez le [formulaire](https://docs.google.com/forms/d/e/1FAIpQLSfH5ifamfWaTqXuO5ShT7kjleTBSAel_0GbI1d1A8Xkwlt1Yw/viewform) : vous recevrez ensuite par email un lien d'inscription à un Slack, où les demandes d'aide sont répertoriées.
**Des missions de développement, des missions d'UX-design**, des missions de communication ou dans le domaine des ressources humaines sont notamment listées.

#### E-commerce solidaire avec Prestashop
La communauté Friends-of-Presta se mobilise dans le cadre du mouvement #EcommerceSolidaire pour offrir gratuitement aux TPE impactées par le confinement lié au COVID-19 un site de vente en ligne de proximité. Les petits commerces peuvent ainsi écouler leur stock grâce à un site e-commerce standard disposant de fonctionnalités basiques. Envie de rejoindre l'équipe de devs derrière cette action ? Visitez le [site](https://friendsofpresta.org/ecommerce-solidaire?utm_source=membres-automatique&utm_campaign=ca7edffc75-EMAIL_CAMPAIGN_2019_11_25_07_21_COPY_01&utm_medium=email&utm_term=0_d2e068861a-ca7edffc75-413761173) et contactez leur équipe.

#### Donnez vos appareils électroniques inutilisés et aidez le personnel soignant
Si vous profitez du confinement pour faire le tri de vos armoires, l'initiative "[Tri-solidaire](https://tri-solidaire.hellozack.fr/confinement )" est pour vous ! Débarrassez-vous de vos appareils électroniques tout en aidant le personnel soignant. Et ce, sans sortir de chez vous : vous laissez simplement votre paquet dans votre boite aux lettres, où il sera récupéré par les services de la Poste !

#### Appel aux dons par Emmaüs pour aider les jeunes vulnérables
Le collectif #ConnexiondUrgence se mobilise pour équiper et accompagner au moins 10 000 jeunes défavorisés qui ont perdu tout lien avec l’école. Votre entreprise peut aider en donnant du matériel informatique ! Les particuliers peuvent également faire des dons financiers. Toutes les infos sur le site d'[Emmaüs Connect](https://emmaus-connect.org/2020/04/appel-aux-dons-10-000-jeunes-vulnerables/).

**Vous connaissez d'autres actions qui méritent l'attention de la communauté PHP ? **Faites-le nous savoir, envoyez un email à bonjour[at]afup.org . Merci !

Les failles de sécurité de base dans le web (3) : le cross-site request forgery (CSRF)

De geek à directeur technique 07/04/2020

Cet article est le troisième d’une série consacrée aux failles de sécurité dans le web, après un premier sur l’injection SQL et un deuxième consacré au cross-site scripting (XSS).





Le principe du CSRF





Les attaques de type cross-site request forgery sont un peu plus malicieuses que celles décrites dans les précédents articles.





Dans ce qu’on avait vu, qu’il s’agisse d’injection SQL ou de XSS, l’idée était globalement de faire entre des données corrompues dans un système, pour le pervertir de l’intérieur. C’est moche, mais quelque part c’est ce qu’on attend d’un hacker.
Les solutions à appliquer étaient presque simples : ne pas faire confiance, filtrer les données entrantes, et échapper les données sortantes.





Si je dis que le CSRF est plus malicieux, c’est parce que ce type d’attaque ne porte pas du tout sur le système visé. Aucune donnée pernicieuse n’est envoyée sur votre serveur, aucun code Javascript vérolé ne sera exécuté sur vos pages web.
Les attaques CSRF profitent de failles dans les systèmes d’authentification, et y ajoutent un peu de social engineering pour faire faire à vos utilisateurs des actions qu’ils ne souhaitent pas exécuter.





Prenons un exemple simple. Imaginons que vous ayez créé un site web sur lequel vous publiez des articles (pour l’exemple on imaginera que vous ayez tout développé vous-même plutôt que d’utiliser un CMS existant). Vous avez dû créer une petite interface d’administration, qui permet de créer des articles et de les effacer. Par-dessus, vous avez développé une couche d’authentification, pour restreindre l’accès aux seuls utilisateurs autorisés.





Votre système d’authentification repose peut-être sur la validation d’un couple identifiant/mot de passe. Lorsqu’un utilisateur s’est identifié correctement, vous déposez un cookie sur son navigateur. Ainsi, à chaque fois qu’il va sur une page d’administration, ou qu’il effectue une action à partir de l’interface d’administration, vous vérifiez le cookie avant d’autoriser l’affichage de la page ou l’exécution de l’action.





De cette manière, pour effacer l’article dont l’identifiant est le numéro 18, un administrateur cliquera sur le lien “Supprimer” correspondant. Son navigateur le conduira alors sur l’adresse “/admin/effacer/18”. Le serveur recevra en même temps le cookie servant à identifier l’utilisateur.
Si le cookie est valide, le serveur effacera l’article, puis redirigera l’utilisateur vers la page “/admin” pour le ramener à l’accueil de l’interface d’administration.

Voir la suite

Les failles de sécurité de base dans le web (2) : le cross-site scripting (XSS)

De geek à directeur technique 04/04/2020

Si ce n’est pas déjà fait, je vous invite à lire le premier article de cette série. J’y explique le contexte dans lequel j’écris ces articles, et je parle des failles par injection SQL.





Le principe du cross-site scripting





Le cross-site scripting (ou XSS pour faire court) est une faille de sécurité qui arrive assez classiquement lorsque des données saisies par un utilisateur peuvent se retrouver telles quelles dans une page web vue par une autre personne. Si la première personne est mal intentionnée, elle peut ainsi exécuter du code sur le navigateur de la seconde ; c’est la porte ouverte à la récupération d’informations personnelles.





L’usage le plus courant est la récupération des cookies du visiteur, ce qui permet ensuite de se connecter au site en se faisant passer pour cette personne. Cela peut être dramatique sur un site bancaire (détournement d’argent) ou administratif (vol d’identité) ; mais une usurpation d’identité sur un réseau social peut être tout aussi gênante.





Prenons l’exemple d’un site proposant à ses visiteurs de laisser des commentaires. Pour cela, un simple formulaire avec un champ texte fait l’affaire. Le texte saisi par un utilisateur est enregistré en base de données, et lorsqu’un autre internaute consulte la page, les commentaires sont lus depuis la base de données pour être ajoutés dans le corps de la page. Jusque-là tout va bien.
Mais si le commentaire contient du code Javascript, et qu’il se retrouve directement dans la page, il sera exécuté par les navigateurs des visiteurs.





La solution





Normalement, si vous avez fait un minimum de développement web, vous devriez vous dire « Bien sûr, mais personne ne fait ça ! ».
On est d’accord. De manière générale, tout ce qui vient de l’extérieur − saisi par un être humain dans un formulaire, ou bien reçu lors d’un appel à un webservice externe − doit être traité de manière particulière.





La fondation OWASP (Open Web Application Security Project) a écrit une “cheatsheet” sur la prévention des failles XSS, qui donne 14 règles à suivre.

Voir la suite

Les équipes locales travaillent au report de l'AFUP Day 2020

AFUP 30/03/2020
Le report de l'AFUP Day 2020 nous paraît donc désormais incontournable. Maintenir un événement rassemblant parfois cent ou deux cents personnes le 15 mai, quelques jours après la date de reprise des écoles telle qu'évoquée à l'heure où nous vous écrivons, nous paraît aussi improbable qu'inconsidéré. **La santé de nos membres, de vos familles et de votre entourage est notre priorité**, et la première condition à remplir à nos yeux alors que nous travaillons à l'organisation de ce rassemblement.

Nous étudions donc l'éventualité d'un report de l'événement à la fin juin, en espérant que ces quelques semaines supplémentaires confirmeront l'accalmie, nous permettant enfin de nous retrouver.

Chaque équipe locale de l'AFUP Day 2020 travaille ces jours-ci à l'étude de ce report : disponibilité des salles, des prestataires, et bien sûr, de nos conférencier·e·s.
Dès que des informations précises et fiables seront disponibles, nous les communiquerons à la communauté. Toutes les personnes ayant déjà réservé leur place pour l'événement seront bien entendu contactées directement et tenues informées des clauses d'annulation si nécessaire.

Besoin de nous joindre ? bonjour[at]afup.org

Mise en place d'un workflow CI/CD pour un projet Symfony à l'aide des actions GitHub

Strangebuzz 28/03/2020
Dans cet article nous allons voir comment mettre en place un workflow CI/CD pour un projet Symfony à l'aide des actions GitHub. Nous couvrirons de la configuration de PHP sur la machine hôte, au lancement des tests unitaires et fonctionnels de l'application Symfony.

Blogs

Infos

Ajouter une source ?

Envoyez un email avec l'URL du site et du flux à planetephpfr AT afup POINT org

Gestion

AFUP