Open main menu
This page is a translated version of the page Extension:CheckUser and the translation is 84% complete.

Outdated translations are marked like this.
Other languages:
Deutsch • ‎English • ‎Nederlands • ‎dansk • ‎español • ‎français • ‎italiano • ‎magyar • ‎polski • ‎português do Brasil • ‎svenska • ‎русский • ‎العربية • ‎فارسی • ‎বাংলা • ‎中文 • ‎日本語 • ‎한국어
MediaWiki扩展手册
OOjs UI icon advanced.svg
CheckUser
发布状态: 稳定版
CheckUser1.png
实现 Special page, User identity
描述 CheckUser允许拥有权限的用户查核所给定的用户名使用的IP地址和根据给定的IP地址查核使用该IP的用户,而无须手动对数据库进行查询。
作者 Tim Starling, Aaron Schulz
最新版本 2.4 (continuous updates)
兼容性方针 发行分支
MediaWiki 1.27+
PHP 5.4+
数据更新
表格 cu_changes
cu_log
许可协议 GNU General Public License 2.0 or later
下载
添加的权限
checkuser
checkuser-log
使用的钩子
RecentChange_save
EmailUser
AuthPluginAutoCreate
ParserTestTables
LoadExtensionSchemaUpdates
ContributionsToolLinks
ArticleEditUpdatesDeleteFromRecentchanges
LoggableUserIPData
AddNewAccount
翻译CheckUser扩展如果在translatewiki.net可用
检查使用和版本矩阵。
问题 开放的工作 · 报告错误
這是一個關於擴展本身的頁面。關於維基媒體基金會的用户查核政策,見m:CheckUser policy/zh

CheckUser是一个允许拥有checkuser权限的用户查核给定IP地址下的用户和给定用户使用的IP地址的,而无须手动在数据库运行查询的扩展。 這個擴展正運作在所有維基媒體的維基項目上。

Contents

下载

此扩展可直接从Git检索到 [?]:

  • 浏览代码
  • 部分扩展有稳定版本标签。
  • 每个分支与过去的MediaWiki发布版本相关联。 这里也有一个“主线”分支,包含最新alpha版本(可能需要MediaWiki的alpha版本)。

提取快照,并将它放置在您的MediaWiki安装副本的extensions/CheckUser/目录中。

如果您对git熟悉,并且拥有您服务器的shell访问权,您也可以通过以下方法获得扩展:

cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/CheckUser.git

安装

这个扩展在GNU GPL2.0或更新版协议下发布。 這個软件由As is提供。 更新会随着安装了MediaWiki的Wiki站点的需求来进行,或者是根据严格地检查出的有价值的可更新处。

在现有wiki上

基本

如果您已安装其他不需要运行php maintenance/update.php的扩展,请运行一次php maintenance/update.php

  • 下载文件,并将其放置在您extensions/文件夹中的CheckUser目录内。
  • 将下列代码放置在您的LocalSettings.php的底部:
    wfLoadExtension( 'CheckUser' );
    
  • 致在使用MediaWiki 1.27或更早版本的用户:
使用一个像PuTTY的telnet或ssh客户端程序,导航到 extensions/CheckUser 目录并运行php install.php。 If you don't see an install.php in that folder, you may need to switch to an older version of this extension, to match your MediaWiki version, using a command similar to git checkout REL1_26. 请确保您运行安装了PHP 5.x版本,否则该脚本将无法运作。 若install.php不存在则请再次运行php maintenance/update.php。 执行结果将会和与下面的相似:
...cu_changes table added.
...doing rc_id from 368856 to 368955....
...
...cu_changes table added and populated.
...cu_log added
...logging disabled, skipping log import.
  •   完成 – 在您的wiki上导航至Special:Version,以验证扩展已成功安装。

致使用MediaWiki 1.24或更早版本的用户:

上面的说明介绍的是安装此扩展的新方法,它使用wfLoadExtension() 如果您需要在早期版本(MediaWiki 1.24和更早版本)中安装此扩展,而不是wfLoadExtension( 'CheckUser' );,您需要使用:

require_once "$IP/extensions/CheckUser/CheckUser.php";
在无命令行访问下安装

很多的托管提供商不允许直接访问shell,但允许创建cron任务(例如通过cPanel的网页界面)。 对于这些提供了临时cron任务的托管提供商,可以用于运行php /path/to/install.php(自然/path/to需要被替换成完整的install.php路径)。 若您使用远程服务器且没有命令行访问权限(且使用cron任务的方案不适用于您),但是还是可以访问phpMyAdmin,跳过步骤#2的这些步骤:

  1. 下载cu_changes.sqlcu_log.sql
  2. 在phpMyAdmin中,点击左侧您MediaWiki使用的数据库
  3. 在下一屏幕上,点击顶部导入标签。
  4. 在“从计算机中上传”,选择要上传的文件之一,将压缩选项选为“无”,并点击“执行”按钮。
    若您的phpMyAdmin只显示一个文本域且没有文件选择,点击左上角栏上的“SQL”,在phpMyAdmin的Logo下方,然后在打开的新窗口中单击“导入文件”选项卡。
  5. 重复第二个文件

在新的wiki上

按照上述步骤1,然后运行MediaWiki安装。 MediaWiki安装程序将自动执行安装任务,若您在选择安装哪些扩展时选中了CheckUser。

配置

This tool migrates recent changes data to a separate cu_changes table, and adds to that when new entries are added. If $wgPutIPinRC was previously set to false, there will be no initial data to search but new edits will fill in as soon as the extension is set up.

After you run the queries, you can reduce $wgRCMaxAge to make recentchanges shorter, without affecting checkuser. Use $wgCUDMaxAge to set how far back checkuser data can go, in seconds.

In versions for MediaWiki 1.22 and later, the CheckUser-specific setting $wgCheckUserCIDRLimit determines the largest range that can be checked in a single check. Its format is the same as $wgBlockCIDRLimit . 否则,对于IPv6检查,默认限制(对于所有版本)为/32,对于IPv4检查,默认限制为/16。

CheckUsers using Mozilla Firefox can add this JS script to their .js file. 它使得更容易检索IP WHOIS数据。 它需要启用applets.codebase.principle支持(about:config)。 (这在Firefox 3中可以是signed.applets.codebase_principle_support

授权权限以使用用户查核

To grant the right to use the Check User function, a user with user rights management must go to Special:UserRights and enter the user's name in the box, then select the option "Check User". 完成此操作后,“用户查核”选项将显示在该用户的“特殊页面”页面上。

要为sysops启用用户权限管理,请将以下内容放入LocalSettings.php:

$wgGroupPermissions['sysop']['checkuser'] = true;
$wgGroupPermissions['sysop']['checkuser-log'] = true;

要仅允许添加和删除checkuser权限,请使用以下代码:

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

配置

CheckUser.php中的配置设置
参数 默认 评论
$wgCUDMaxAge 7776000 保留多久用户查核日志(以秒为单位)? (默认= 3个月)
$wgCheckUserMaxBlocks 200 最大封鎖限制
$wgCheckUserForceSummary false 如果要强制用户查核员通过Special:CheckUser为每个检查提供原因,请将此设置为true。 (不是很有用,因为用户查核员可以简单地给出一个摘要,例如“他们需要检查”或“我觉得它”并且软件不会知道。)
$wgCheckUserCIDRLimit [ 'IPv4' => 16, 'IPv6' => 32 ] 可以在任何单独范围检查中检查的最短CIDR限制
$wgCUPublicKey 用于加密可能需要稍后读取的私有数据的公钥生成具有以下内容的公钥:

`openssl genrsa -out cu.key 2048; openssl rsa -in cu.key -pubout > cu.pub` 并在此处粘贴cu.pub的内容

$wgCheckUserCAMultiLock false 这可用于通过中央认证向Special:CheckUser的查核结果表单表单添加Special:MultiLock的链接。 这需要在wiki上安装中央认证扩展。要启用此功能,请将此设置为具有中央wiki数据库名称的数组,以及包含要为其添加链接的全局组名称的数组。例如:
$wgCheckUserCAMultiLock = [
    'centralDB' => 'metawiki',
    'groups' => [ 'steward' ]
];
$wgCheckUserCAtoollink false Since 77360f1cf1d2. This adds a link to central wiki Special:CentralAuth to the Special:CheckUser's "Get users" results. This requires the CentralAuth extension to be installed on the wiki. To enable this, set this with a central wiki's database name. For example:
$wgCheckUserCAtoollink = 'metawiki';
$wgCheckUserGBtoollink false Since 77360f1cf1d2. This adds a link to local or central wiki Special:GlobalBlock to the Special:CheckUser's "Get users" results. This requires the GlobalBlocking extension to be installed on the wiki. To enable this, if a $wgConf is configured, set this to an array with a central wiki's database name and an array with the name(s) of the local (or global if you have CentralAuth installed) group(s) to add the link for. For example:
$wgCheckUserGBtoollink = [
	'centralDB' => 'metawiki',
	'groups' => [ 'steward', 'staff' ]
];

用法

基本界面

  1. Go to Special:CheckUser.
  2. In the user field, type in the username (without the 'user:' prefix), IP address, or CIDR range.
    • IP: any IPv4 or IPv6 address.
    • CIDR: you can check a range of IP addresses by appending the CIDR prefix (by default, up to /16 for IPv4 (65,536 addresses), up to /64 for IPv6 (~1.8446*1019 addresses) before revision 7352, up to /48 for IPv6 (~1.2089*1024 addresses or 65536 /64s - controlled by $wgCheckUserCIDRLimit in the latest version) after revision 7352, and up to /32 (65536 /48's) after revision rECHU9d7c239bf88866eca577f3241194d440f94fa014). For notation, see Range blocks.
    • XFF: you can check a client IP address provided by X-Forwarded-For headers by appending /xff (for example, 127.0.0.1/xff).
  3. Select the information you want to retrieve.
    • Get IPs: returns IP addresses used by a registered user.
    • Get edits from IP: returns all edits and logged actions made by a user (registered or anonymous) from an IP address or range.
    • Get users: returns user accounts that have edited from an IP or range.
  4. In the reason field, type in the reason you are accessing the confidential data. Try to succinctly summarise the situation (for example, "cross-wiki spam"); this will be logged in a log visible only to users with the checkuser-log permission.

显示的信息

用户查核结果中的典型条目是用户摘要(“获取用户”)如下:

  • Example (Talk | contribs) (20:11, 19 5月 2019 -- 20:12, 19 5月 2019) [5]
    1. 127.0.0.37 XFF: 127.0.0.1, 127.0.0.5

这种格式适合将大量信息整合到一种非常容易列出和删除的格式中,但除非您知道所提供的信息,否则很难阅读。信息如下:

  • 用户名 (用户连接) (从给定的IP或范围编辑的时间段:) [来自IP或范围的编辑数]
    1. 來自編輯的IP地址 XFF: 提供XFF信息(可以被欺骗)

按使用顺序列出用于编辑的每个IP / XFF组合。

后面列出了每个用户在IP或范围内进行编辑的最后十个用户代理(浏览器、操作系统、系统语言和版本)。

XFF格式

XFF (X-Forwarded-For) headers indicate the series of IP addresses used from the user's computer (first) to the last proxy server. In case of Wikimedia, the last proxy server is one of the Wikimedia proxies (listed under $wgSquidServersNoPurge in the Wikimedia configuration file).

另一个例子

aaa.aaa.aaa.aaa XFF: 10.4.46.42, 127.0.0.1, aaa.aaa.aaa.aaa, 208.80.152.46

  • 前两个地址(10.4.46.42、127.0.0.1)是原始网络专用的,无法直接从公共互联网访问,
  • 第三个地址(aaa.aaa.aaa.aaa)是编辑器的“公共面孔”,通常是宽带或拨号ISP,公司网关(但可能是匿名者或受恶意软件攻击的服务器),
  • 最后一个地址(208.80.152.46)是维基媒体鱿鱼之一(sq36.wikimedia.org)。

MediaWiki configuration settings $wgUsePrivateIPs , $wgSquidServers , $wgSquidServersNoPurge and extensions using the IsTrustedProxy hook (such as Extension:TrustedXFF) change the way an actual IP address used to attribute edits is selected.

个人工具链接

When you get results from Special:CheckUser you can add personal user tool links via two interface messages:

錯誤消息

数据库查询语法错误

如果您在尝试保存页面时收到类似这样的错误消息:

发生了数据库查询语法错误。这可能表示软件中存在错误。最后一次尝试的数据库查询是:

(SQL查询已隐藏)

函数“efUpdateCheckUserData”:数据库返回错误“1146:表'cu_changes'不存在(localhost)”。

This means that CheckUser has not been installed correctly. In this case you forgot to create the necessary cu_changes table in your database.

API

用户查核也提供API

api.php?action=query&list=checkuser&curequest=userips&cutarget=Jimbo_Wales
api.php?action=query&list=checkuser&curequest=edits&cutarget=127.0.0.1/16&xff=1&cureason=Some_check
api.php?action=query&list=checkuserlog&culuser=WikiSysop&cullimit=25
api.php?action=query&list=checkuserlog&cultarget=127.0.0.1&culfrom=20111015230000