Voilà, voilà... Fin de l'aventure...

 

Fermeture de kolossaldrupal.org dans...


Bonjour tout le monde,

Drupal évolue, les versions changent et Kolossaldrupal.org était essentiellement consacré à la version 6 de Drupal.

Autant dire que les infos présentées ici commencent à dater...

Faute de temps, je ne peux plus garder le site Kolossaldrupal à jour...

Je vous aurais bien proposé de reprendre le flambeau mais... c'est tellement simple de nos jours de se faire son propre site à soi...Pourquoi s'embêter alors ? :-)

Ce site restera donc en l'état, tel qu'il était en 2011...

Ah la la ! Cela ne nous rajeunit pas !

Manuel Vila - Avril 2016

Pourquoi Drupal filtre-t-il au moment de l’affichage ?

Référence sur drupal.org : 23 Février 2009 – 03h46 - http://drupal.org/node/263002


Une approche répandue dans d’autres applications web est de traiter ou filtrer les saisies utilisateurs pour des raisons de sécurité. Historiquement, Drupal préservait les saisies telles quelles et ne les filtraient qu’en sortie. Le sujet est débattu de temps à autre dans la communauté Drupal.

L’excellent article Safe string theory for the web de Steven Witten apporte une explication technique sur les raisons de filtrer selon les différents contextes des sorties.

Désormais, nous voyons que filtrer la saisie est problématique car nous ne pouvons connaître les caractères interdits sans connaître le contexte dans lequel ils apparaîtront.

Pour compliquer les choses, une chaîne donnée peut apparaître dans plus d’un contexte, par exemple en tant que texte HTML et aussi en tant qu’attribut comme dans <a title="$node->title">$node->title</a>. Donc si vous voulez filtrer tous les caractères, votre système sera paralysé parce que vous aurez besoin de filtrer trop de caractères, si vous voulez encoder, vous ne pouvez savoir comment encoder. L’encodage présente une autre problème, traiter du texte échappé est très malaisé (essayez d’extraire le teaser du corps d’un node HTML échappé).

Il n’y a pas d’autre alternative que d’enregistrer les saisies utilisateur sans modifications et d’appliquer les filtrages et les traitements appropriés lors des sorties.