Module de Validation des adresses mail
Ce module vous offre la possibilité de vérifier la validité des adresses mail inscrites dans les champs prévus à cet effet :
- Adaptabilité aux champs standard JCMS comme aux champs email personnalisés (auxquels la classe "custom-control-email" devra être ajoutée)
- Exclusion des adresses mail dont le domaine n'est pas valide, des adresses temporaires et jetables mais également de toute adresse dont le domaine est présent dans une liste noire personnalisable
Il permet également de bloquer l'envoie du formulaire en cas d'adresse mail invalide.

Themes : Sécurité, Tests
Version 1.0
Compatibility : JCMS 9
Documentation
Introduction
Le module de validation d’adresse e-mail permet d’automatiser la validation des champs emails des différents formulaires utilisés sur le site.
Il fournit un service de validation basé sur :
- Une vérification syntaxique
- Une vérification des adresses mail jetables
- Une vérification au sein d’une liste noire
- Une validation DNS (vérifie si le domaine de l’adresse mail possède des serveurs MX)
Exemples d'apparence d'un champ à valider lorsque l'adresse est valide, syntaxiquement incorrecte ou invalide :
Informations techniques
Compatibilité JCMS
Ce module est compatible sur les versions :
- JCMS 9 SP1
- JCMS 9 SP2
- JCMS 9 SP3
- JCMS 9 SP4
Compatibilité JSync
Ce module est compatible jSync, il fonctionnera sans problème sur un environnement à plusieurs réplicas.
Compatibilité JDK
Ce module est compatible avec la version 1.7 de JDK (Java Development Kit). Si vous êtes sur la version 1.6 de JDK, contactez-nous.
Prérequis
Pour une meilleure compréhension et utilisation de ce module, il est conseillé d’avoir suivi les formations JCMS suivantes :
- Formation d’administrateur technique
- Formation d’administrateur fonctionnel
Ce module ne dépend d’aucun autre module.
Installation du module
Ajouter ce module avec le gestionnaire de modules depuis l’administration technique et redémarrer JCMS.
Paramétrage
Liste des propriétés
Editez le module pour paramétrer ou modifier ses propriétés :
Propriété |
Nom technique |
Description |
Vérifier les éléments du front office |
jcmsplugin.emailvalidatorplugin.1.front |
Activer cette fonctionnalité permet de rendre effective la vérification des adresses mail pour les champs du front office. |
Vérifier les éléments du back office |
|
Activer cette fonctionnalité permet de rendre effective la vérification des adresses mail pour les champs du back office. |
Vérifier si l'adresse mail est jetable |
|
Si vous activez cette fonctionnalité, les adresses dont le domaine fournit des adresses jetables seront bloquées. La liste des adresses jetables est définie dans la propriété "jcmsplugin.emailvalidatorplugin.daelist". Pour modifier cette liste, il vous suffit d'éditer cette propriété. La liste d'origine que nous avons utilisé est disponible à cette adresse : https://github.com/FGRibreau/mailchecker/blob/master/list.json. La dernière version de cette liste que nous avons récupérée pour ce module date du 28/11/2016. |
Liste des domaines indésirables |
|
Indiquez dans cette propriété les domaines qui doivent être rejetés, séparés par des virgules. Ces domaines seront considérés comme non valides. Exemple : « gmail.com, hotmail.fr, outlook.com » |
Durée maximale de vérification |
|
Indiquez dans cette propriété la durée en millisecondes permettant la vérification de l'adresse mail (durée minimale de 3000 ms). Exemple : « 3000 » |
Bloquer la soumission du formulaire si l'adresse est invalide | js.emailvalidatorplugin.blocksubmit |
Si vous activez cette fonctionnalité, le formulaire contenant le champ email ne sera pas soumis si l'adresse saisie est invalide (un champ email laissé vide est considéré comme valide pour ne pas bloquer le formulaire si le champ n'est pas requis). |
Vérifier les champs email standard JCMS | js.emailvalidatorplugin.defaultcontrol |
Activer cette fonctionnalité permet de rendre effective la vérification des adresses mail pour tous les champs standard JCMS (champs possédant la classe "control-email"). Pour vérifier des champs non standards, merci d’ajouter la classe "custom-control-email" sur l’élément de type « input » destiné à recevoir l’adresse mail. |
Afficher les messages d'information lors de la saisie d'une mauvaise adresse mail | js.emailvalidatorplugin.showmessage |
Si vous activez cette fonctionnalité, des messages d'information apparaîtront dans un "popover" sous le champ email lorsque la saisie de ce dernier est invalide. |
Enregistrement des nouvelles propriétés
Les changements de valeur des propriétés sont pris en compte directement lors de l'enregistrement sans avoir besoin de redémarrer l'application.
FAQ
Pour modifier les libellés des messages d’information, nous vous recommandons d’utiliser notre module d’éditions des propriétés en back office. Vous pourrez ainsi modifier les libellés comme vous le souhaitez dans avoir besoin de redémarrer l’application. Vous pouvez également éditer directement les fichiers de langue (fr.prop et en.prop) mais un redémarrage du serveur sera nécessaire pour appliquer les modifications.
Si vous ajoutez un domaine dans la liste noire, tout utilisateur renseignant une adresse mail se terminant par ce domaine verra s’afficher le message suivant : « Le domaine de l'adresse mail saisie n'est pas autorisée. S'il vous plaît, veuillez utiliser une autre adresse. ». La liste noire est prioritaire sur la liste des adresses jetables ce qui signifie que si vous ajoutez un domaine dans la liste noire déjà présent dans la liste des adresses jetables, c’est le message ci-dessus qui sera affiché.
Si la fonctionnalité « bloquer la soumission du formulaire » est activée, tout utilisateur entrant une mauvaise adresse se verra refusé la soumission du formulaire. En revanche, s’il laisse le champ vide, la soumission n’est pas bloquée ce qui permet de soumettre le formulaire si le champ n’est pas obligatoire.
La liste des adresses jetables est visible dans le fichier de propriétés du module (plugin.prop). Sa dernière mise à jour au sein du plugin date du 28/11/2016. Elle se base sur un document disponible à cette adresse :
https://github.com/FGRibreau/mailchecker/blob/master/list.json#
Vous pouvez modifier la liste manuellement dans le fichier plugin.prop du module en prenant garde à bien respecter la syntaxe (identique à la liste noire : domaines séparés par des virgules). Vous pouvez également la modifier grâce à notre module d’édition des propriétés en back office afin de ne pas redémarrer l’application.
Ce module vérifie si l’adresse mail est correctement formée et si elle appartient bien à un domaine connu. Il vérifie également qu’elle ne fasse pas partie des adresses jetables. Cependant, il nous est impossible de garantir que l’adresse existe belle et bien car nous ne vérifions pas l’information auprès du serveur pour deux raisons :
- Récupérer cette information prend plus de temps (en moyenne 3 secondes)
- Le serveur peut nier l’existence d’une adresse ou au contraire retourner qu’elles existent toutes (moyens de protection mis en place contre le spam).
Nous ne pouvons donc pas obtenir de réponse parfaitement exacte concernant l’existence d’une adresse email même si dans la plupart des cas cette réponse s’avère exacte. Cette fonctionnalité a été développée pour ce module mais n’est pas présente dans cette version. Elle peut être mise en place dans le cadre de besoins spécifiques. Pour cela, n'hésitez pas à nous contacter.
Les serveurs MX (Mail eXchanger) sont des serveurs mail que vous définissez dans la zone DNS de votre nom de domaine. Ce sont ces serveurs qui recevront les mails du nom de domaine.
Glossary
A
ACSII
L'American Standard Code for Information Interchange (Code américain normalisé pour l'échange d'information), plus connu sous l'acronyme ASCII ([askiː]) est une norme de codage de caractères en informatique ancienne. Le jeu de caractères codés ASCII est le principal système qui a permis l'échange de textes en anglais à un niveau mondial, limitant ainsi l'usage des langues locales au travers d'extensions régionales.

Actions entrantes & actions sortantes
Ces actions sont paramétrables dans les workflows. Elles définissent l’entrée ou la sortie d’un état de workflow. Une action entrante signifie l’arrivée dans un état du workflow (ex : une publication qui est planifié). Une action sortante signifie la sortie d’un état vers un autre (ex : une publication qui passe de l’état planifié vers l’état publié).

C
Classe
En programmation orientée objet, une classe définie un ensemble d’objets ayant des attributs communs, et le même ensemble d'opérations.

J
Jsync
Jsync est un moteur de réplication des données et des fichiers. La tâche principale de JSync est de synchroniser les données d'un groupe de serveurs JCMS (aussi appelés réplicas), et de répartir la charge de ces serveurs. Ainsi, toute création, modification ou suppression de données (catégorie, membre, contenu, …) sur l'un des réplicas sera propagée par le réplica leader aux réplicas membres du groupe. JSync assure ainsi la cohérence globale des données d'un groupe de serveur JCMS. Ajouter un lien vers la fiche jsync sur jalios.com.

L
LOG
Correspond à un historique d’évènements stockés dans un fichier, appelé fichier de log (diminutif de logging), permettant de suivre et repérer toutes activités du site. Les évènements sont horodatés et ordonnés en fonction du temps.

LOG4J
Log4j est une bibliothèque de log en Java. Elle permet entre autres de gérer plusieurs niveaux de log :
- FATAL: utilisé pour journaliser une erreur grave pouvant mener à l'arrêt prématuré de l'application
- ERROR: utilisé pour journaliser une erreur qui n'empêche cependant pas l'application de fonctionner
- WARN: utilisé pour journaliser un avertissement, il peut s'agir par exemple d'une incohérence dans la configuration, l'application peut continuer à fonctionner mais pas forcément de la façon attendue
- INFO: utilisé pour journaliser des messages à caractère informatif (nom des fichiers, etc.)
- DEBUG: utilisé pour générer des messages pouvant être utiles au débogage
- TRACE: utilisé par exemple pour journaliser l'entrée ou la sortie d'une méthode

M
MailPolicyFilter
Il s’agit d’un point de débranchement (hook) intervenant lors de l’envoi d’un e-mail dans JCMS. Plus détails ici.

Modale
Fenêtre s'ouvrant dynamiquement généralement pour une action précise : déposer un document, initier une conversation, planifier un événement,... fenêtre appelant une action de l'utilisateur.

N
Notifications email
Il s’agit de notifications transmises par email à un ou plusieurs utilisateurs JCMS. Ces emails permettent d’alerter, informer ou d’envoyer un rappel aux utilisateurs concernant un évènement passé ou à venir, d’une action traitée ou à traiter. Sous JCMS, il existe 3 types de notification : INFO, ACTION, ALERTE.

P
Portail
Un portail permet d’agréger et de personnaliser des informations de provenances multiples pour en offrir une vision unique. On distingue les portails documentaires étroitement liés à la gestion de contenu, et les portails d’infrastructure liés à des problématiques d’intégration d’applications.

Portlet
Elément de portail. Il existe différents types de portlets :
- portlets de construction de page
- portlets de contenu (en charge de récupérer et de formater l'information),
- portlets de navigation,
- portlets fonctionnelles,
- portlets de log.
L'assemblage des différents types de portlets permet de construire des gabarits de page portail.

S
SEO
Le SEO (Search Engine Optimization) signifie en français "Optimisation pour les moteurs de recherche". Ce terme défini l'ensemble des techniques mises en oeuvres pour améliorer la position d'un site web sur les pages de résultats des moteurs de recherche.

Store
Fichier .xml stockant des données sur les publications, les portlets, les espaces de travails, et d'autres fonctionnalités propres à JCMS.
Certaines données de l'application peuvent aussi être stockées en base.
Voir les contenus liés :
- Fiche "Utiliser le store" (fiche Jalios ou Wisen)
- Fiche "Nettoyer le store" (fiche Jalios ou Wisen)
- Autre entrée de glossaire

T
Top-bar
La top-bar ou super-header correspond à la barre de menu affichée en haut de page :

W
Wiki
Le wiki est une site Web ou page web collaborative dont le contenu peut être modifié par les internautes autorisés.
