Extension:AbuseFilter

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page Extension:AbuseFilter and the translation is 74% complete.

Other languages:
Deutsch • ‎English • ‎català • ‎dansk • ‎español • ‎français • ‎galego • ‎italiano • ‎polski • ‎português • ‎português do Brasil • ‎sicilianu • ‎suomi • ‎yue • ‎čeština • ‎български • ‎русский • ‎עברית • ‎العربية • ‎سنڌي • ‎فارسی • ‎中文 • ‎日本語 • ‎한국어
Manuel des extensions MediaWiki
Crystal Clear action run.svg
AbuseFilter
État de la version : stable
AbuseFilter-Management.png
Implémentation User activity, Special page, API
Description Permet de placer aux activités sur le wiki des restrictions spécifiques basées sur des comportements.
Auteur(s)
Compatibility policy release branches
MediaWiki 1.25+
PHP 5.4+ recommandé
Changements
base de données
Oui
Tables abuse_filter
abuse_filter_action
abuse_filter_history
abuse_filter_log
Licence GNU General Public License 2.0 or later
Téléchargement
Paramètres
  • $wgAbuseFilterActions
  • $wgAbuseFilterConditionLimit
  • $wgAbuseFilterEmergencyDisableThreshold
  • $wgAbuseFilterEmergencyDisableCount
  • $wgAbuseFilterEmergencyDisableAge
  • $wgAbuseFilterParserClass
  • $wgAbuseFilterRestrictions
  • $wgAbuseFilterNotifications
  • $wgAbuseFilterNotificationsPrivate
  • $wgAbuseFilterCentralDB
  • $wgAbuseFilterIsCentral
  • $wgAbuseFilterDisallowGlobalLocalBlocks
  • $wgAbuseFilterBlockDuration
  • $wgAbuseFilterAnonBlockDuration
  • $wgAbuseFilterCustomActionsHandler
  • $wgAbuseFilterValidGroups
  • $wgAbuseFilterDefaultWarningMessage
  • $wgAbuseFilterIPMaxAge
  • $wgAbuseFilterProfile
  • $wgAbuseFilterRuntimeProfile
  • $wgAbuseFilterProfileActionsCap
Droits ajoutés
  • abusefilter-view
  • abusefilter-log
  • abusefilter-log-detail
  • abusefilter-revert
  • abusefilter-private
  • abusefilter-private-log
  • abusefilter-view-private
  • abusefilter-log-private
  • abusefilter-hidden-log
  • abusefilter-hide-log
  • abusefilter-modify
  • abusefilter-modify-restricted
  • abusefilter-modify-global
Accroches utilisées
EditFilterMerged
GetAutoPromoteGroups
AbortMove
MovePageCheckPermissions
ArticleDelete
RecentChange_save
ListDefinedTags
ChangeTagsListActive
LoadExtensionSchemaUpdates
ContributionsToolLinks
UploadVerifyFile
UploadVerifyUpload
UploadStashFile
MakeGlobalVariablesScript
PageContentSaveComplete
UserMergeAccountFields
ParserOutputStashForEdit
Traduisez l’extension AbuseFilter sur translatewiki.net
Vérifiez la matrice des utilisations et des versions.
Problèmes Tâches ouvertes · Signalez un bug

L’extension AbuseFilter (filtre anti-abus) permet aux utilisateurs privilégiés de positionner des contrôles spécifiques sur les actions des utilisateurs tels que les contributions et de créer des réactions automatiques pour certains comportements. Par exemple, un filtre peut être créé pour empêcher que certains utilisateurs anonymes n'ajoutent des liens externes , ou pour bloquer un utilisateur qui supprime plus de 2000 caractères.

Prérequis

There are no required dependencies for this extension.

Installation

  • Téléchargez et placez le(s) fichiers (s) dans un répertoire appelé AbuseFilter dans votre dossier extensions/.
  • Utilisez Composer pour installer les dépendances PHP, en entrant composer install après s'être positionné dans le répertoire de l'extension. (Voir T173141 pour des complications potentielles.)
  • Ajoutez le code suivant à la fin de votre fichier LocalSettings.php :
    wfLoadExtension( 'AbuseFilter' );
    
  • Lancez le script de mise à jour qui va créer automatiquement les tables de base de données dont cette extension a besoin.
  • Yes Fait – Accédez à Special:Version sur votre wiki pour vérifier que l'extension a bien été installée.

Pour les utilisateurs de MediaWiki 1.26 ou précédents :

Les instructions ci-dessous décrivent la nouvelle procédure pour installer cette extension en utilisant wfLoadExtension() Si vous avez besoin d'installer cette extension sur les précédentes versions de MediaWiki (1.26 ou précédent), à la place de wfLoadExtension( 'AbuseFilter' );, vous devez utiliser :

require_once "$IP/extensions/AbuseFilter/AbuseFilter.php";


Droits utilisateur

Une fois que vous avez installé l’extension, vous devez paramétrer les droits utilisateur dans LocalSettings.php.

Droit Description
abusefilter-modify Modifier les filtres antiabus
abusefilter-view Voir les filtres antiabus
abusefilter-log Voir le journal des filtres antiabus
abusefilter-log-detail Voir les entrées détaillées du journal antiabus
abusefilter-private Voir les données privées dans le journal antiabus
abusefilter-modify-restricted Modifier les filtres antiabus qui ont des actions restreintes
abusefilter-modify-global Créer ou modifier les filtres globaux d'abus
abusefilter-revert Révoquer toutes les modifications effectuées par un filtre antiabus donné
abusefilter-view-private Voir les filtres d'abus marqués comme privé
abusefilter-log-private Voir les entrées du journal des filtres antiabus marquées comme privées
abusefilter-hide-log Masquer des entrées dans le journal des abus
abusefilter-hidden-log Voir les entrées masquées du journal antiabus
abusefilter-private-log Afficher les détails confidentiels du journal d’accès de AbuseFilter

Par exemple, la configuration d’exemple suivante permet aux sysops de faire tout ce qu’ils veulent avec le filtre d’abus, et tout le monde peut voir les journaux et les paramètres publics du filtre :

$wgGroupPermissions['sysop']['abusefilter-modify'] = true;
$wgGroupPermissions['*']['abusefilter-log-detail'] = true;
$wgGroupPermissions['*']['abusefilter-view'] = true;
$wgGroupPermissions['*']['abusefilter-log'] = true;
$wgGroupPermissions['sysop']['abusefilter-private'] = true;
$wgGroupPermissions['sysop']['abusefilter-modify-restricted'] = true;
$wgGroupPermissions['sysop']['abusefilter-revert'] = true;
Les filtres marqués comme privés ne peuvent être vus que par les utilisateurs ayant le droit abusefilter-modify ou abusefilter-view-private.

Créer et gérer des filtres

Une fois l’extension installée, les filtres peuvent être créés, testés, changés, effacés, et on peut accéder aux journaux depuis la page de gestion du filtre anti-abus Special:AbuseFilter.

Configuration

Nom de la variable Valeur par défaut Description
$wgAbuseFilterActions array( 'flag' => true, 'throttle' => true, 'warn' => true, 'disallow' => true, 'blockautopromote' => true, 'block' => true, 'rangeblock' => false, 'degroup' => true, 'tag' => true ) Les actions possibles que peuvent utiliser les filtres anti-abus. When adding a new action, check if it is restricted in $wgAbuseFilterRestrictions and, if it is, don't forget to add the abusefilter-modify-restricted right to the appropriate user groups.
$wgAbuseFilterConditionLimit 1000 Le nombre maximum de 'conditions' qui peuvent être utilisées à chaque fois que les filtres sont exécutés à propos d’une modification. (Les filtres les plus complexes demandent plus de 'conditions'.)
$wgAbuseFilterValidGroups 'default' La liste des "groupes" dans lesquels les filtres peuvent être classés. Par défaut il n'y en a qu'un.
$wgAbuseFilterEmergencyDisableThreshold array( 'default' => 0.05 ) Désactiver les filtres s’ils sont actionnés sur plus de X modifications, constituant plus de Y % des Z dernières modifications, s’ils ont été changés dans les S dernières secondes.
$wgAbuseFilterEmergencyDisableCount array( 'default' => 2 )
$wgAbuseFilterEmergencyDisableAge array( 'default' => 86400 )
$wgAbuseFilterParserClass 'AbuseFilterParser' Nom de la classe du parseur du filtre anti-abus.
$wgAbuseFilterRestrictions array( 'block' => true, 'degroup' => true, 'blockautopromote' => true, 'rangeblock' => true ) Les utilisateurs doivent avoir le droit utilisateur "abusefilter-modify-restricted" ainsi que "abusefilter-modify" pour pouvoir créer ou modifier les filtres que supposent ces actions.
$wgAbuseFilterNotifications false Allows to configure the extension to send hit notifications to Special:RecentChanges or UDP. Options disponibles : rc, udp, rcandudp
$wgAbuseFilterNotificationsPrivate false Autoriser les notifications pour les filtres privés.
$wgAbuseFilterCentralDB null Nom de la base de données où les filtres anti-abus sont stockés (supporté uniquement dans la dernière version de développement).
$wgAbuseFilterIsCentral false Positionnez cette variable à true (vrai) pour le wiki où les filtres anti-abus sont stockés (supporté uniquement dans la dernière version de développement).
$wgAbuseFilterDisallowGlobalLocalBlocks false Disallow Centralised filters from taking actions that locally block, remove from groups, or revoke permissions.
$wgAbuseFilterBlockDuration 'indefinite' Durée des blocages faits par le filtre anti-abus
as of 1.31.0-wmf.25 block durations may be specified for every single filter and will override this variable. This variable is only used when enabling the block in order to preselect a default duration.
$wgAbuseFilterAnonBlockDuration null Duration of blocks made by AbuseFilter on users who are not logged in. The value of $wgAbuseFilterBlockDuration will be used if this is not set.
as of 1.31.0-wmf.25 block durations may be specified for every single filter and will override this variable. This variable is only used when enabling the block in order to preselect a default duration.
$wgAbuseFilterCustomActionsHandlers array() Fonctions callback pour les actions utilisateur.
$wgAbuseFilterValidGroups array('default') Valid "filter groups" – used for applying edit filters to certain types of actions
$wgAbuseFilterDefaultWarningMessage array( 'default' => 'abusefilter-warning' ) Default warning messages, per filter group
$wgAbuseFilterLogIPMaxAge 3 * 30 * 24 * 3600 Age used as cutoff when purging old IP log data. Defaults to 3 months. Used by maintenance script purgeOldLogIPData.php.
$wgAbuseFilterProfile false
Version de MediaWiki : 1.27

Whether to record data about the performance of filters – the average number of conditions used and the time consumed by every filter.

(This was always enabled in MediaWiki up to 1.25, then entirely removed from 1.26 for performance reasons, then restored in 1.27.)

$wgAbuseFilterRuntimeProfile false Whether to calculate and record the total runtime, conditions, and matched filters on each execution.
$wgAbuseFilterProfileActionsCap 10000 Number of action that determines when to reset profiling stats.


API

Le filtre anti-abus ajoute deux modules dans l’API, un relatif aux détails du filtre anti-abus ("abusefilters") et un relatif au journal des filtrages puisque celui-ci est séparé des autres journaux MediaWiki ("abuselog"). Il n’est pas possible de créer ou de modifier des filtres anti-abus à partir de l’API.

list = abusefilters

Liste les informations sur les filtres

Paramètres
  • abfstartid : l’identifiant du filtre où commencer l’énumération
  • abfendid : l’identifiant du filtre où terminer l’énumération
  • abfdir : la direction dans laquelle se fait l’énumération (older, newer = vers le plus vieux, vers le plus récent)
  • abfshow : ne montrer que les filtres qui répondent à ces critères (enabled|!enabled|deleted|!deleted|private|!private = activé|!activé|effacé|!effacé|privé|!privé)
  • abflimit : le nombre maximum de filtres dans la liste
  • abfprop : quelles propriétés afficher (id|description|pattern|actions|hits|comments|lasteditor|lastedittime|status|private = identifiant|description|motif|actions|nombre d’activations|commentaires|dernier contributeur|date de dernière modification|statut|privé)

Quand les filtres sont privés, quelques-unes des propriétés spécifiées avec abfprop seront manquantes à moins que vous n’ayez les droits utilisateur appropriés.

Exemples

Liste les filtres anti-abus non-privés

list = abuselog

Liste les instances où des actions ont actionné un filtre anti-abus.

Paramètres
  • aflstart : l’identifiant du filtre où commencer l’énumération
  • aflend : l’identifiant du filtre où terminer l’énumération
  • afldir : la direction dans laquelle se fait l’énumération (older, newer = vers le plus vieux, vers le plus récent)
  • afluser : ne montrer que les entrées où l’action est testée pour un utilisateur ou une IP donné.
  • afltitle : ne montrer que les entrées où l’action est testée pour une page donnée.
  • aflfilter : ne montrer que les entrées actionnées par un identifiant de filtre donné
  • afllimit : le nombre maximum d’entrées dans la liste
  • aflprop : quelles propriétés afficher (ids|user|title|action|result|timestamp|details = identifiant|utilisateur|titre|résultat|date|détails)
Exemple

Liste les instance où le filtre anti-abus a été actionné en réponse aux actions de l’utilisateur « SineBot »

Possible errors

  • Some users might experience that creating new filters or modifying old filters fail and the user just gets redirected to the original page. If the Wiki is using SSL certificates, this error could possibly be because of the $wgServer value, which might be using "http://" instead of "https://". An indication of this error will be, the browser giving https warning for Special:AbuseFilter pages. (Topic:T23dyyih0ofjada5)

Voir aussi