Is it possible for a report to be added under DASHBOARD > REPORTS, to list accounts that share the same IP address?
Or, if the processing is too heavy to do large forums, the report could potentially be capped eg: checks all new accounts from the last 3mths.
Discourse identifies such duplicates when looking up a specific user, but it would be useful to see this information across all users. Currently I have no tool to identify this, other than checking individual users one at a time.
I realise that a shared IP doesn’t always mean it’s the same person and that some IP addresses are shared by multiple users on a network, but it would still be very useful.
Is there any chance of this being added to the standard Discourse Dashboard reports, without needing the data explorer plugin?
This feature would be useful for most discourse forum staff, as users with multiple accounts is a pretty common forum experience. For me, it would be more useful on a regular basis than most of the existing Dashboard reports.
Ask yourself, what is the maximum number of different IP addresses?
I think it would be relatively inexpensive to have count(ips) vs. count(distinct(ips)) to give a general idea of how many accounts have used IPs used by other accounts.
More expensive would be an “on demand” search for particular IPs
Depending on how many accounts / IPs a forum has, finding all non-distinct IPs could be extremely expensive. If my math is close, the formula for finding out how many checks would be needed would be something like (n*(n+1)/2)-n
where n is the total number of IPs
* eg. for 100, that’s 4950, for 1000 that’s 499500. You get my point.
Je ne sais pas ce que cela impliquerait en termes de ressources système, mais il serait utile de recevoir un message aux modérateurs et/ou un rapport permettant d’obtenir une liste des adresses IP associées à plus d’un membre, que ce soit via l’inscription ou la dernière adresse IP utilisée.
Actuellement, la seule façon de détecter les adresses IP dupliquées (ce qui ne signifie pas nécessairement qu’un seul membre possède plusieurs comptes) est de procéder à une vérification manuelle. Cela signifie que nous ne nous en apercevons que lorsqu’une personne pose problème.
Et ce qui peut arriver (très rarement, mais cela pourrait devenir un problème récurrent avec un troll motivé), c’est qu’une personne crée une série de comptes qu’elle « fait monter en niveau » pour pouvoir publier, tout en les laissant par ailleurs inactifs. Il est très difficile et fastidieux pour quelqu’un de le faire avec assez de discipline pour utiliser des VPN afin de garder les adresses IP séparées. Ainsi, à un moment donné du processus de montée en niveau du niveau de confiance d’un compte, le troll commet généralement une erreur et se connecte avec une adresse IP « réelle ». Si les modérateurs peuvent être alertés lorsque cela se produit, ou si cela apparaît dans un rapport consultable régulièrement par un groupe de modérateurs, cela aiderait énormément à prévenir un troll utilisant de nombreux comptes factices inactifs pour créer une grande perturbation.
Mais peut-être que cela demanderait trop de ressources système ?
Il existe toujours plusieurs façons de concevoir une application, mais je peux partager mon expérience.
J’ai acquis un ensemble de données incluant des adresses IP associées à un forum Discourse (~250 000 comptes).
J’ai écrit du code PHP (*note, pas Ruby) pour analyser un fichier CSV et insérer les données dans une base de données MySQL (*note, pas PostgreSQL).
J’ai téléchargé la base de données de géolocalisation MaxMind dépréciée.
J’ai écrit du code pour effectuer des conversions entre tableaux INET et nombres, puis inséré les valeurs dans la base de données.
J’ai fait correspondre les adresses IP individuelles de Discourse aux emplacements MaxMind correspondants (même avec un nombre limité, par exemple 10 000 comptes, cette étape pouvait prendre plus de deux heures à exécuter — une sélection de plage coûteuse).
Une fois que j’avais les données de « base », je devais seulement mettre à jour les éléments nouveaux depuis la dernière fois. L’exécution d’une mise à jour [hebdomadaire] ne prenait jamais plus de quelques minutes.
Une fois que j’avais les données qui m’intéressaient, l’exécution de requêtes par emplacement n’était pas lente.
Merci pour cela… désolé de ne pas avoir vu ce message jusque-là, et merci. Je vais le transmettre à notre administrateur et nous discuterons de la valeur de l’investissement que cela représente.
Nous avons quelques milliers de membres et, assez régulièrement, des personnes créent des comptes supplémentaires. Parfois avec une intention malveillante, souvent sans aucune intention malveillante apparente. Cela pose rarement un problème significatif.
Quelques fois par an seulement, je pense, bannissons-nous quelqu’un qui crée ensuite des comptes supplémentaires pour être désagréable. Jusqu’à présent, cela a été gênant à gérer, mais pas si grave. Et, jusqu’ici, ils ont toujours perdu l’envie de perdre du temps avec nous pour maintenir leurs agissements, soit en disparaissant… soit en créant un compte et en restant discrets, en respectant les règles et en ne posant plus de problème. Dans ce cas, ce n’est vraiment pas un problème.