Jump to content

Extension:CheckUser

From mediawiki.org
This page is a translated version of the page Extension:CheckUser and the translation is 100% complete.
Cette page concerne l'installation de l'extension elle-même. Pour consulter la politique de vérification des utilisateurs de la Fondation Wikimedia, voir CheckUser policy. Pour plus de détails sur l'utilisation de l'extension, voir Aide:Extension:CheckUser .
Manuel des extensions MediaWiki
CheckUser
État de la version : stable
Implémentation Page spéciale , Identité de l'utilisateur , API , Accroche , Base de données
Description La fonction CheckUser permet à un utilisateur ayant les droits, de vérifier des quelles adresses IP sont utilisées par un nom d'utilisateur donné, et quels sont les noms d'utilisateurs qui utilisent une adresse IP donnée, sans avoir à lancer manuellement des requêtes dans la base de données.
Auteur(s) Tim Starling, Aaron Schulz, Dreamy Jazz
Dernière version 2.5 (mises à jour continues)
Politique de compatibilité Versions ponctuelles alignées avec MediaWiki. Le master n'est pas compatible arrière.
PHP 7.4.3+
Modifie la base
de données
Oui
Domaine virtuel virtual-checkuser-global
Tables cu_changes
cu_log_event
cu_private_event
cu_log
cu_useragent_clienthints
cu_useragent_clienthints_map
cu_useragent
cuci_wiki_map
cuci_temp_edit
cuci_user
cusi_case
cusi_signal
cusi_user
Licence Licence publique générale GNU v2.0 ou supérieur
Téléchargement
Aide Help:Extension:CheckUser/fr
  • $wgCheckUserGBtoollink
  • $wgCheckUserCAMultiLock
  • $wgCheckUserClientHintsEnabled
  • $wgCheckUserUserInfoCardCentralWikiId
  • $wgCheckUserLogLogins
  • $wgCheckUserDeveloperMode
  • $wgCheckUserCollapseCheckUserHelperByDefault
  • $wgCheckUserMaxBlocks
  • $wgCheckUserGlobalContributionsSkippedWikiIds
  • $wgCheckUserSuggestedInvestigationsHidden
  • $wgCheckUserClientHintsValuesToHide
  • $wgCheckUserAlwaysSetClientHintHeaders
  • $wgCheckUserAutoRevealMaximumExpiry
  • $wgCheckUserUserAgentTableMigrationStage
  • $wgCheckUserClientHintsSpecialPages
  • $wgCheckUserLogSuccessfulBotLogins
  • $wgCheckUserClientHintsUnsetHeaderWhenPossible
  • $wgCheckUserEnableUserInfoCardInstrumentation
  • $wgCheckUserUserInfoCardShowXToolsLink
  • $wgCheckUserSuggestedInvestigationsUseGlobalContributionsLink
  • $wgCheckUserClientHintsRestApiMaxTimeLag
  • $wgCheckUserSpecialPagesWithoutIPRevealButtons
  • $wgCheckUserSuggestedInvestigationsEnabled
  • $wgCheckUserCentralIndexRangesToExclude
  • $wgCheckUserLogMaxRangeToShowInLog
  • $wgCheckUserCIDRLimit
  • $wgCheckUserMaximumIPsToAutoblock
  • $wgCheckUserUserInfoCardFeatureVisible
  • $wgCheckUserDisableCheckUserAPI
  • $wgCheckUserGlobalContributionsCentralWikiId
  • $wgCheckUserForceSummary
  • $wgCheckUserInvestigateMaximumRowCount
  • $wgCheckUserCuciUserRandomChanceDebounceCutoff
  • $wgCheckUserWriteToCentralIndex
  • $wgCheckUserCAtoollink
  • $wgCheckUserCentralIndexGroupsToExclude
  • $wgCUDMaxAge
  • $wgCheckUserMaximumRowCount
  • $wgCheckUserTemporaryAccountMaxAge
  • $wgCheckUserClientHintsForDisplay
  • $wgCheckUserClientHintsHeaders

  • checkuser
  • checkuser-log
  • checkuser-suggested-investigations
  • checkuser-temporary-account
  • checkuser-temporary-account-auto-reveal
  • checkuser-temporary-account-log
  • checkuser-temporary-account-no-preference
  • investigate
Traduire l’extension CheckUser sur translatewiki.net si elle y est disponible
Problèmes Tâches ouvertes · Signaler un bogue

CheckUser est une extension qui permet à un utilisateur (ayant les droits checkuser) de vérifier quelles adresses IP sont utilisées par un nom d'utilisateur donné, et quels sont les noms d'utilisateurs qui utilisent une adresse IP donnée, sans avoir à lancer manuellement des requêtes dans la base de données. L'extension est toujours active sur tous les wikis Wikimedia.

Les mises à jour se feront en fonction des besoins des wikis de la Fondation Wikimedia, ou lorsque des vulnérabilités critiques seront découvertes. Les détails sur la façon d'utiliser les outils fournis par l'extension se trouvent à Aide:Extension:CheckUser .

Installation

Cette extension est fournie avec MediaWiki 1.44 et supérieur. Les instructions de configuration restantes doivent encore être suivies.
  • Téléchargez et placez le(s) fichier(s) dans un répertoire appelé CheckUser dans votre dossier extensions/.
    Les développeurs et les contributeurs au code doivent à la place installer l'extension à partir de Git en utilisant:
    cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/CheckUser
    
  • Seulement lorsque vous installez à partir de Git, exécutez Composer pour installer les dépendances PHP, en entrant composer install --no-dev après vous ê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( 'CheckUser' );
    
  • Exécutez le script de mise à jour qui va créer automatiquement les tables de base de données dont cette extension a besoin.
  • Configurer si nécessaire.
  • Yes Fait – Accédez à Special:Version sur votre wiki pour vérifier que l'extension a bien été installée.

Utilisation de MediaWiki-Docker

Suivre les étapes de MediaWiki-Docker/Extension/CheckUser pour installer cette extension dans une instance de MediaWiki Docker.

Configuration

Cet outil copie les données des modifications récentes dans des tables séparées, et les actualise au fur et à mesure des nouvelles entrées. Si $wgPutIPinRC vaut false, les données copiées ne contiendront pas l'adresse IP associée. Toutefois, les entrées ajoutées après l'installation de cette extension contiendront l'adresse IP.

Après avoir installé cette extension, vous pouvez réduire $wgRCMaxAge pour rendre les modifications récentes moins longues, sans perturber checkuser. Utilisez $wgCUDMaxAge pour indiquer en nombre de secondes, jusqu'à quand les données checkuser peuvent remonter au plus loin dans le temps.

Le paramètre $wgCheckUserCIDRLimit spécifique à CheckUser détermine la plus grande plage vérifiable en une seule fois. Son format est le même que celui de $wgBlockCIDRLimit . La limite par défaut est de /19 pour les vérifications IPV6 et de /16 pour les vérifications IPV4.

Pour permettre à cet outil d'enregistrer les tentatives de connexion réussie et celles qui ont échoué ainsi que les sorties, initialiser $wgCheckUserLogLogins à true. Si vous avez des comptes associés aux robots de votre wiki, initialiser $wgCheckUserLogSuccessfulBotLogins à false évitera d'enregistrer les tentatives de connexion réussies de ces comptes de robot.

Version de MediaWiki :
1.43

Si l'extension est installée sur une configuration multi-wiki, alors vous devez initialiser $wgVirtualDomainsMapping pour que virtual-checkuser-global pointe sur une table de la base de données centrale. En déclarant ceci vous permettez que les tables d'index centrales soient hébergées sur une base de données centrale, et ainsi que les auto-blocages globaux GlobalBlocking et GUC fonctionnent. Après avoir fait cela vous devez exécuter update.php pour créer les tables sur le wiki central.

Version de MediaWiki :
1.45

Après la version 1.45, l'API CheckUser est désactivée par déaut. Pour la réactiver, initialisez $wgCheckUserDisableCheckUserAPI à false.

Dépannage de la fonctionnalité Special:GlobalContributions

Si Special:GlobalContributions ne renvoie pas les révisions comme prévu (par exemple, vous avez des révisions sur un autre wiki que vous pouvez consulter sur ce wiki), une mauvaise configuration peut être à l'origine d'une défaillance interne qui n'est pas orienté utilisateur (car elle ne peut pas être résolue par l'utilisateur). Vérifiez ceci :

  • Votre utilisateur a un compte central et ses comptes sur le wiki concerné sont liés. Ça peut être vérifié dans Special:MergeAccount.
  • Le wiki affecté est connu de la ferme de wikis. Ceci est défini dans le tableau des sites et les wikis peuvent être ajoutés dans ce tableau via le script de maintenance addSite. Vous devez vérifier que les paramètres optionnels pagepath et filepath sont effectivement remplis, par exemple : php ./maintenance/run.php addSite globalId groupName --pagepath https://hostname/wiki/\$1 --filepath https://hostname/w/\$1 Special:GlobalContributions les utilise pour générer les requêtes API et les liens.
  • La base de données centrale est configurée avec virtual-checkuser-global (par exemple, $wgVirtualDomainsMapping['virtual-checkuser-global'] = [ 'db' => $wiki ];) et la table cuci_temp_edit enregistre les révisions du wiki concerné.
  • Si nécessaire, les cookies interdomaines doivent être activés, car le jeton centralauth doit fonctionner sur les deux wikis.

Attribuer les droits pour utiliser CheckUser

Pour attribuer les droits d'utilisation de Special:CheckUser, Special:Investigate et Special:CheckUserLog, les utilisateurs ayant la possibilité de gérer les droits utilisateur doivent aller sur Special:UserRights et saisir le nom de l'utilisateur dans la boîte, puis sélectionner l'option « checkuser » . Une fois ceci réalisé, les pages spéciales mentionnées précédemment apparaîtront sur la page Special:SpecialPages pour cet utilisateur.

Pour permettre aux utilisateurs d'accéder aux adresses IP des comptes temporaires , ils doivent posséder les droits checkuser-temporary-account.

Pour fournir aux administrateurs système (sysops) tous les droits que cette extension fournit, ajoutez ceci dans votre fichier LocalSettings.php :

$wgGroupPermissions['sysop']['checkuser'] = true;
$wgGroupPermissions['sysop']['checkuser-log'] = true;
$wgGroupPermissions['sysop']['investigate'] = true;
$wgGroupPermissions['sysop']['checkuser-temporary-account-log'] = true;
$wgGroupPermissions['sysop']['checkuser-temporary-account-no-preference'] = true;

Par contre pour permettre uniquement l'ajout ou la suppression des droits checkuser, utilisez ceci :

$wgAddGroups['sysop'][] = 'checkuser';
$wgRemoveGroups['sysop'][] = 'checkuser';

Mise à jour

Version de MediaWiki :
1.45

Depuis MediaWiki 1.45, GuidedTour est supprimé de Special:Investigate, donc les préférences checkuser-investigate-tour-seen et checkuser-investigate-form-tour-seen ne sont plus utilisées. Si Special:Investigate a été utilisé avant de mettre à jour vers la 1.45, ces préférences peuvent être enregistrées inutilement pour certains utilisateurs. Pour supprimer ces préférences de la table user_properties, exécuter les scripts de maintenance :

$ php maintenance/run.php userOptions.php checkuser-investigate-tour-seen --delete
$ php maintenance/run.php userOptions.php checkuser-investigate-form-tour-seen --delete

Configuration

Une sélection de valeurs de configuration est présentée ci-dessous. Ces valeurs de configuration peuvent être modifiées par les administrateurs de wikis. Les valeurs de configuration, qui sont généralement laissées à leur valeur par défaut, ne sont pas spécifiées ici pour garder la liste concise, mais les détails de ces valeurs de configuration sont présents dans le fichier extension.json.

Paramètres de configuration sélectionnés pour extension.json
Nom de la configuration par défaut Informations
$wgCUDMaxAge 7776000 (90 days) Pendant combien de temps faut-il garder les données de CheckUser (en secondes) ? (par défaut 90 jours)
$wgCheckUserMaxBlocks 200 Nombre maximal d'utilisateurs pouvant être bloqués simultanément sur Special:Investigate
$wgCheckUserForceSummary false Initialiser cette valeur à true si vous souhaitez forcer les utilisateurs à donner une raison pour chaque vérification qu'ils effectuent via Special:CheckUser. (ce qui n'est pas très utile étant donné que checkusers peut renvoyer simplement un résumé commme « ils doivent être vérifiés » ou « Je suis de son avis » et le logiciel n'en saura pas davantage).
$wgCheckUserCIDRLimit [ 'IPv4' => 16, 'IPv6' => 19 ] Les limites les plus courtes du CIDR (Classless Inter-Domain Routing) peuvent être vérifiées dans tout contrôle d'intervalle individuel
$wgCUPublicKey '' Clé publique pour encoder les données privées qui pourraient être lues ultérieurement. Vous pouvez générer une clé publique de la manière suivante :

openssl genrsa -out cu.key 2048; openssl rsa -in cu.key -pubout > cu.pub et collez le contenu de cu.pub ici

Utilisé avec une clé privée associée pour crypter certaines données qui ne sont pas affichées aux utilisateurs vérifiés mais stockées dans les tables cu_changes ou cu_private_event Actuellement il s'agit des destinataires des courriels. Sans clé publique valide, les données ne seront pas stockées.

$wgCheckUserCAMultiLock false Ceci peut être utilisé pour ajouter un lien à Special:MultiLock par CentralAuth au formulaire de blocage en masse de Special:CheckUser. Ceci nécessite que l'extension CentralAuth soit installée sur le wiki. Pour permettre cela, initialisez la valeur avec un tableau comportant un nom de base de données du wiki central, et un tableau avec les noms des groupes globaux pour lesquels vous voulez ajouter un lien. Par exemple :
$wgCheckUserCAMultiLock = [
    'centralDB' => 'metawiki',
    'groups' => [ 'steward' ]
];
$wgCheckUserCAtoollink false Depuis le 77360f1cf1d2. Ceci ajoute un lien au Special:CentralAuth du wiki central vers les résultats « Get users » de Special:CheckUser. Ceci nécessite que l'extension CentralAuth soit installée sur le wiki. Pour activer ceci, utilisez le nom d'une base de données wiki centrale. Par exemple :
$wgCheckUserCAtoollink = 'metawiki';
$wgCheckUserGBtoollink false Depuis le 77360f1cf1d2. Ceci ajoute un lien du Special:GlobalBlock du wiki local ou central aux résultats « Get users » de Special:CheckUser. Ceci nécessite que l'extension GlobalBlocking soit installée sur le wiki. Pour permettre cela, si un $wgConf est configuré, initialisez la valeur avec un tableau comportant un nom de base de données du wiki central, et un tableau avec les noms des groupes locaux (ou globaux si vous avez intallé CentralAuth ) pour lesquels vous voulez ajouter un lien. Par exemple :
$wgCheckUserGBtoollink = [
	'centralDB' => 'metawiki',
	'groups' => [ 'steward', 'staff' ]
];
$wgCheckUserEnableSpecialInvestigate (1.35-1.43) false (<=1.39)
true (1.40+)
Depuis le 57dcfe46d2e4. Cela active Special:Investigate, une version mise à jour de Special:CheckUser qui permet de vérifier plusieurs comptes utilisateurs et des adresses IP par une requête.
$wgCheckUserLogLogins false Indique si CheckUser doit enregistrer les tentatives de connexion et de déconnexion (à la fois réussies et non).
$wgCheckUserLogSuccessfulBotLogins true Si $wgCheckUserLogLogins vaut true, indique si CheckUser doit stocker les tentatives de connexion réussie aux comptes pour le groupe utilisateur des robots. Utilisé seulement si $wgCheckUserLogLogins vaut true
$wgCheckUserMaximumRowCount 5000 Nombre maximum de résultats pouvant être renvoyés par Special:CheckUser. Avant MediaWiki 1.39, les résultats des modifications (Get edits) et des adresses IP(Get IPs) qui avaient plus de 5 000 éléments renvoyaient ces résultats dans un format différent. A partir de MediaWiki 1.39, c'est le nombre maximum de résultats à afficher par page; les résultats suivants peuvent être récupérés en utilisant les liens de page.
$wgCheckUserInvestigateMaximumRowCount 25000 Similaire à $wgCheckUserMaximumRowCount, mais pour Investigate
$wgCheckUserCollapseCheckUserHelperByDefault (1.41+) 2500 Contrôle quand le tableau récapitulatif « CheckUser helper » est sur Special:CheckUser. Spécifiez true pour toujours réduire par défaut, false pour ne jamais réduire par défaut et un nombre pour réduire l'affichage sur la page quand le nombre de résultats dépasse cette valeur.
$wgCheckUserMaximumIPsToAutoblock (1.43+) 1 Le nombre maximal d'adresses IP à autobloquer rétroactivement lorsqu'un blocage est créé et que le blocage automatique est activé.
$wgCheckUserClientHintsEnabled (1.41+) true Utilisé pour contrôler si les actions du client doivent être collectées et affichées dans les résultats par CheckUser.
$wgCheckUserClientHintsSpecialPages (1.41+) { "CreateAccount": "header", "Emailuser": "js", "PasswordReset": "js", "Userlogin": [ "js", "header" ], "Userlogout": "header"} Liste des pages spéciales où CheckUser demandera des indices au client si $wgCheckUserClientHintsEnabled est true.
$wgCheckUserClientHintsHeaders (1.41+) { "Sec-CH-UA": "brands", "Sec-CH-UA-Arch": "architecture", "Sec-CH-UA-Bitness": "bitness", "Sec-CH-UA-Form-Factor": "", "Sec-CH-UA-Full-Version-List": "fullVersionList", "Sec-CH-UA-Mobile": "mobile", "Sec-CH-UA-Model": "model", "Sec-CH-UA-Platform": "platform", "Sec-CH-UA-Platform-Version": "platformVersion", "Sec-CH-UA-WoW64": ""} Liste des types d'actions client qui seront demandés. Les clés représentent les valeurs des activités client demandées à l'aide de l'en-tête Accept-CH. Les valeurs représentent le nom équivalent lorsqu'elles sont demandées à partir de l'API des indices client côté client JavaScript.
$wgCheckUserClientHintsForDisplay (1.41+) [ "model", "fullVersionList", "platformVersion", "platform", "brands", "formFactor", "architecture", "mobile", "bitness", "woW64" ] Liste des données des actions clients à afficher dans les résultats de CheckUser. L'ordre dans le tableau détermine l'ordre d'affichage des données.
$wgCheckUserClientHintsValuesToHide (1.41+) { "architecture": [ "x86" ], "bitness": [ "64" ], "woW64": [ false ]} Indique les valeurs des données des actions client à masquer dans les résultats de CheckUser. Ceci est fait pour masquer les valeurs des données des actions client observées généralement dans les cas où cette information n'est pas utile sauf si la valeur est rare.
$wgCheckUserTemporaryAccountMaxAge (1.40+) 86400 Nombre de secondes pendant lequel la réponse de l'API du compte temporaire est vraie.
$wgCheckUserSpecialPagesWithoutIPRevealButtons (1.40+) [ "Investigate", "InvestigateBlock", "CheckUser", "CheckUserLog", "Activeusers", "Listusers", "BlockList" ] Liste des noms de pages spéciales où les boutons "Montre IP" sont désactivés, car ils ne sont pas utiles. Les noms des pages spéciales sont sensibles à la casse et ne correspondent pas toujours à leur apparence dans l'URL. Par exemple Special:ListUsers est appelé Listusers dans ce tableau.
$wgCheckUserClientHintsUnsetHeaderWhenPossible (1.41+) true Si true, le serveur envoie une entête Accept-CH vide lorsque l'utilisateur affiche une page qui n'a pas besoin de données de signalement client.
$wgCheckUserGlobalContributionsCentralWikiId (1.44+) null Une chaîne représentant le nom du wiki à désigner comme wiki central pour Special:GlobalContributions. En déclarant ceci vous redirigez toutes les pages Special:GlobalContributions des autres wikis, sur le wiki central.
$wgCheckUserWriteToCentralIndex (1.43+) true Empêche d'ajouter des entrées dans les tables d'index central de CheckUser sur ce wiki. Utilisez ceci lorsque le wiki ne fait pas partie d'un système de compte unifié d'une ferme de wikis plus grande.
$wgCheckUserCentralIndexGroupsToExclude (1.43+) [ "bot" ] Les actions des utilisateurs d'un groupe quelconque parmi ceux présents dans cette valeur de configuration, ne seront pas enregistrées dans les tables d'index centrales. Utilisé pour réduire le taux des écritures dans les tables d'index central pour les utilisateurs à forte activité pour lesquels les contrôles CheckUser ne sont pas nécessaires. Les utilisateurs de ce groupe sont encore vérifiables et leur adresse IP ainsi que leur agent utilisateur sont journalisés.

Les API

Voir la section ci-dessous.

Utiliser l'extension CheckUser

Voir Aide:Extension:CheckUser pour les détails sur l'utilisation de l'extension. Ces informations ne sont pas incluses ici pour que la page reste gérable en taille en se limitant à l'installation et l'administration de l'extension.

L'extension fournit plusieurs pages spéciales et quelques API. Les pages spéciales sont :

  • Special:CheckUser – Utilisé pour chercher avec CheckUser les données concernant les comptes et les utilisateurs anonymes. Décrit sur Aide:Extension:CheckUser .
  • Special:Investigate – Outil alternatif utilisé pour rechercher les données de CheckUser sur les comptes et les utilisateurs anonymes, avec les informations affichées en utilisant un format de page unique. Décrite sur Aide:Special Investigate .
  • Special:CheckUserLog – Permet de lister les vérifications réalisées en utilisant soit Special:CheckUser, Special:Investigate, ou l'API CheckUser. Décrite sur Aide:Extension:CheckUser .
  • Special:IPContributions – Utilisé pour rechercher les modifications faites par des comptes temporaires sur une adresse ou un intervalle d'adresses IP donné. Décrite sur Aide:Extension:CheckUser .
  • Special:GlobalContributions – Utilisé pour chercher les modifications réalisées par des comptes ou des comptes temporaires via une adresse ou un intervalle d'adresses IP. Décrite sur Aide:Extension:CheckUser .

L'extension permet également de révéler l'adresse IP utilisée par un compte temporaire. Décrite sur Aide:Extension:CheckUser .