Pour sécuriser l’affichage de certains textes (ceux qui proviennent potentiellement non pas des rédacteurs, mais de visiteurs non enregistrés ou de contributeurs externes, comme les forums ou les contenus des sites syndiqués), SPIP utilise en interne la librairie SafeHTML.
Malheureusement celle-ci n’est plus maintenue depuis plusieurs années. Ce plugin propose de la remplacer par HTML Purifier (http://htmlpurifier.org/), une librairie moderne et bien maintenue.
La voici en version 4.2.0. L’inconvénient de HTML Purifier est sa relative lenteur par rapport à SafeHTML. Pour minimiser ce problème, notre plugin utilise le plugin Mémoization, s’il est présent, pour ne pas refaire les calculs à chaque fois qu’il est sollicité avec un même contenu.
Attention : ce plugin nécessite PHP5 !
Discussions par date d’activité
4 discussions
Un problème rencontré avec cette librairie :
les éléments SPIP cadre traduits en balise HTML textarea sont simplement filtrés par la librairie et à l’affichage seul le code reste, sans aucun formatage...
Autre problème rencontré : le code affiché dans une balise et coloré avec le plugin « coloration code » voit son indentation supprimée par cette librairie.
Répondre à ce message
Surement que la prochaine version de Spip l’intégrera dans ses extensions !?
Cédric
ce n’est pas si évident : il nous faudrait plus de retours d’utilisation, notammnt avec chronométrage des perfs
J’utilise la librairie HTML Purifier sur une solution de gestion de contenu (Site web : 3w factory). Elle est très complète au niveau du paramétrage. Je ne pense pas que le critère de performance soit le plus important quand on parle de sécurité mais je n’ai pas remarqué de problème à ce niveau là si le paramétrage est effectué correctement.
Répondre à ce message
Bonjour,
Développant une partie en wiki (grâce aux plugins autorité et crayons), j’ai voulu passer par ce plugin, après avoir utilisé |safehtml, pour protéger le contenu des articles, entré par les visiteurs (enregistrés, 6forum).
1- Avec #TEXTE|safehtml, aucun soucis avec les données javascript et autres qui peuvent être rentrées, mais il me modifie également le comportement des mes modèles (développés pour le site) intégrés dans le texte des articles (baslie ).
2- J’ai donc testé HTML Purifier. Même une fois activé, le plugin ne semble pas modifier le comportement des pages. À savoir, si je mets du javascript par exemple dans mon article, il sera traité. Soit j’oublie de faire quelque chose, soit j’ai mal compris l’intérêt de ce plugin.
En tout état de cause, je ne trouve pas de solution permettant d’empêcher mes visiteurs de rentrer du contenu « dangereux », sans altérer le fonctionnement de mes modèles (essentiellement composés de mais avec des attributs HTML supprimés par |safehtml).
Mon message sur le forum de SPIP m’ayant renvoyé sur cette page, je me permets donc de demander à nouveau si une solution peut exister pour mon problème.
En vous remerciant,
Sebvita
Répondre à ce message
« notre plugin utilise le plugin Mémoization » je ne trouve pas de plugin avec ce nom, je suppose il s’agit d’une typo ?
Ce plugin existe bien sous ce nom-là, mais il n’est pas encore documenté !
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |