Fait avec Chinaski

Soumissions de form

Chaque soumission acceptée est stockée dans la base de données par form, avec des écrans de gestion pour la recherche, la révision, l'export et la suppression. Cette page couvre ce qui est stocké, les rate limits, la rétention et la façon dont les soumissions réussies sont acquittées.

Ce qui est stocké

  • Les réponses sous forme de document JSON indexé par nom de champ.
  • Un token de reçu : une référence aléatoire générée par soumission, affichée en cas de succès et ajoutée à la redirection de remerciement (?ok=1&ref=…). Elle est délibérément aléatoire, non dérivée de l'ID de soumission, de sorte que personne ne peut énumérer ou reconstituer la référence d'une autre soumission.
  • L'adresse IP de l'expéditeur : sauf si elle est supprimée (voir la confidentialité ci-dessous).
  • L'attribution marketing lorsque le visiteur est arrivé via un lien de campagne balisé : les paramètres de requête comme utm_source/utm_medium/utm_campaign/utm_term/utm_content plus les click IDs sont capturés depuis l'URL de la landing page envoyée par le navigateur. La capture d'attribution honore les mêmes signaux de confidentialité que le stockage des IP (les demandes Do-Not-Track / Global-Privacy-Control du navigateur la mettent à null).

Rate limits (par visiteur, par heure)

  • Pas plus de 5 soumissions au même form par IP.
  • Pas plus de 30 soumissions au total sur tous les forms par IP.

Dépasser l'un ou l'autre produit un « Too many submissions : please try again later » et un ralentissement délibéré (tarpit). Les vérifications de limite s'exécutent avant tout stockage, donc les inondations ne créent pas d'enregistrements. Les deux limites opèrent sur une valeur hachée de la vraie IP client, de sorte qu'elles continuent de fonctionner même quand un form est configuré pour ne pas stocker les IP.

Acquittement en cas de succès

Sur une soumission propre : un message de succès en ligne (le texte du form lui-même), ou une redirection vers l'URL de remerciement configurée avec les paramètres ok et ref ; la référence du reçu est affichée afin que l'expéditeur dispose d'un identifiant pour une correspondance ultérieure. Des champs invalides ou manquants re-rendent le même form avec des libellés d'erreur et les réponses préservées.

Rétention et suppression

  • Retention days vaut par défaut illimité (0) ; réglez-le par exemple sur 90 pour supprimer automatiquement les soumissions de plus de N jours. La purge s'exécute toutes les heures et au redémarrage du serveur.
  • La suppression manuelle est disponible dans les vues de soumission, y compris la suppression en masse, et supprimer une soumission retire les fichiers qui l'accompagnaient (les téléversements ne restent pas orphelins sur le disque).
  • Supprimer un form entier emporte ses soumissions avec lui.

Commutateurs de confidentialité par form

  • Stocker l'adresse IP de l'expéditeur: désactivé signifie que l'IP n'est jamais écrite (le rate limit fonctionne toujours ; il utilise un hachage de l'adresse mais ne la conserve pas).
  • Les navigateurs demandant la confidentialité (signaux Do Not Track ou Global Privacy Control) voient leur IP et leur attribution mises à null quel que soit le réglage.
  • L'e-mail de notification admin peut aussi omettre la ligne d'IP.
Lisez ce site en