Extension:Moderation

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page Extension:Moderation and the translation is 35% complete.
Other languages:
English • ‎dansk • ‎français • ‎中文 • ‎日本語
MediaWiki 拡張機能マニュアル
OOjs UI icon advanced.svg
Moderation
リリースの状態: 安定
Special Moderation screenshot.png
実装 特別ページ
説明 新規利用者による編集やアップロードを調整処理へ送る。
作者 Edward Chernenko
最新バージョン 1.4.20 (2020-03-13)
互換性ポリシー master
MediaWiki 1.31+ (master branch)

1.27-1.30 (REL1_27 branch)

1.23-1.26 (REL1_23 branch)
PHP 7.0+
データベースの変更 はい
テーブル moderation
moderation_block
ライセンス GNU 一般公衆利用許諾書 3.0 以降
ダウンロード

  • $wgModerationEnable
  • $wgModerationTimeToOverrideRejection
  • $wgModerationOnlyInNamespaces
  • $wgModerationIgnoredInNamespaces
  • $wgModerationNotificationEnable
  • $wgModerationEmail
  • $wgModerationNotificationNewOnly

  • moderation
  • skip-moderation
  • skip-move-moderation
  • moderation-checkuser
Moderation 拡張機能の翻訳にご協力ください
使用状況とバージョン マトリクスを確認してください。

調整拡張機能は小規模から中規模のウィキ向けに荒らし対策を提供します。

This is one of the most effective anti-vandal protection methods and has very little impact on legitimate users.

はじめに

動作の仕組みは?
  1. 新規利用者の編集 (もしくは画像投稿) はすべて調整キューへ送ります。
  2. 調整役の承認を得るまで、それらのページに修正は反映されません。承認待ちの編集はページの履歴にも最近の更新にも表示されません。
  3. 投稿した利用者には自分の編集内容が表示され、当該ページの編集を非公開で続けることができます。
管理者の調整の手順は?
  1. 新規に特別ページが提示されます (Special:Moderation)。 最近の更新にやや似ていますがボタンが固有で、「承認」「却下」「すべて承認「すべて却下」("Approve", "Reject", "Approve all" and "Reject all") と揃っています。
  2. 却下した編集は専用のアーカイブに移されます。
  3. 承認された編集は通常のとおり、ページに反映します。
  4. 「承認の担当者と項目」のログが記録されます。閲覧できるのは調整者に限定されます。
  5. 編集の競合が検出され自動的に解決できない場合は、調整者は統合ボタンを使い手動で編集を行います。
利点は?
  1. 新規利用者にいきなりcaptchas や電話番号認証その他を求めて萎縮させることがありません。 調整を受けない平常の状態で編集を継続できます。
  2. わざわざブロックを使わなくて済みます。. ブロックに良い効果はありません (範囲ブロックをかけると無関係な利用者を巻き込むこと、たまに気まぐれに1、2ページで不正行為をする程度の利用者から良質の編集をするチャンスを奪うことにもご配慮ください。)
  3. 「承認欲求」が原因の不正行為は慎むべきです。もしそういう行為は許されるという認識の結果であれば、5時間もかけて新しいプロキシを探し、管理者を怒らせようとする人などいません。
  4. 「複数のアカウントを使って特定のページを荒らし、ワンクリックで巻き戻せないようにする」方法の荒らしは、すでに無効です。
  5. ウェブサイトによっては匿名性の高いTORあるいはI2Pを運用できます。

代替策

調整ログ

MediaWikiが採用するその他の荒らし対策とは? 一言でいうなら - ありません

MediaWikiはウィキペディアのために創設されました。 ウィキペディアであれば、どんな時間帯でもリアルタイムに荒らしを巻き戻すために協力するボランティアが何百人、何千人といます。 ウィキペディア以外に、そのような恵まれた状況にあるウィキはほぼ皆無です。 MediaWikiで荒らし対策を常備しようと考えた背景は、そのほうが巻き戻しよりも作業時間を短縮できると考えたからです。 通常はこの考え方が適切ですが、これでは荒らしを未然に防ぐ効果は望めず、たとえ巻き戻し自体の作業時間は短くても、管理者がしばしば荒らされていないか確認する手間に変わりはありません。

現状では荒らし対策として次の3つの方法があります。

  1. Make all edits hard. 一例としてLurkmore.toでは、新人利用者の編集に1件ずつ認証を受ける強力なキャプチャ方針を設けており、その手順を経ずに編集を認めるまで、多数の編集実績を求めています。 Therefore the vandal has to spend a lot of time to do a handful of edits.
    The obvious minus is that all legitimate users have to bypass the captcha as well, which could discourage minor edits like spelling fixes.
  2. Enforce user identification - for example, login via Facebook. If the social network verifies that all its users have a valid mobile phone number, then each vandalism attempt requires the vandal to go to the shop and buy a new SIM card. This method is extremely effective, though eliminates the anonymous editing and turns away the users who don't have an account in any supported social network.
    A strong minus of this method is the impact on users' privacy. In non-democratic countries editing a page on politics can result in government trying to identify and persecute the user. For example, Lurkmore.to was contacted by Russian "anti-extremist special force" with demands to disclose information about the authors of pages about Ramzan Kadyrov and Molotov cocktail.[1]
  3. Mitigate the results of vandalism. For example, a user can create 100 pages with offensive titles, but they can all be deleted by two clicks in Extension:Nuke . Moderation extension belongs to this category.

Is this extension stable?

This extension is stable. It has been deployed in production on Russian Uncyclopedia (absurdopedia.net) since November 2014.

The extension has an automated testsuite with significant coverage (phpunit and Selenium). Every change to Moderation is automatically tested on:

  1. newest version of MediaWiki
  2. MediaWiki 1.31 (LTS)
  3. MediaWiki 1.27 (legacy LTS)

Please read the files KNOWN_LIMITATIONS, TODO and WONT_DO for all known issues. Feel free to contact the author if you have any questions.

What's the difference from FlaggedRevs or Approved Revs?

Extension:FlaggedRevs and Extension:Approved Revs hide the bad revisions only from readers. The vandal edits will still exist in history and RecentChanges, and all editors will stumble upon them when they try to edit the page which was vandalized. Therefore administrators have to revert vandalism quickly.

On the other hand, Moderation completely eliminates vandal edits: non-approved revisions are simply not created in page history, etc. This ensures that not only readers, but also other editors won't see the vandal edits in any of the pages.

In short, (1) FlaggedRevs is for quality control but doesn't help against persistent vandalism. (2) Moderation is specifically against vandalism and renders it completely ineffective.

Moderation FlaggedRevs/ApprovedRevs
Do readers see vandalism? いいえ いいえ
Do editors see vandalism? いいえ はい
Does vandalism remain in page history? いいえ はい
Can quickly reject all edits by user? はい いいえ
Can other editors improve non‑approved edits? (not vandalism) いいえ はい

インストール

For modern versions of MediaWiki (1.31+), use the following instruction:

  • 以下のコードを LocalSettings.php の末尾に追加します:
    wfLoadExtension( 'Moderation' );
    
  • 更新スクリプトを実行します。このスクリプトは、この拡張機能が必要とするデータベース テーブルを自動的に作成します。
  • Yes 完了 – ウィキの「Special:Version」に移動して、拡張機能が正しくインストールされたことを確認します。
This extension should be enabled last in your "LocalSettings.php" file after all other settings and extensions.

Installation for older versions of MediaWiki

For MediaWiki 1.27-1.30, replace the above-mentioned "git clone" command with the following: git clone -b REL1_27 https://github.com/edwardspec/mediawiki-moderation.git

For MediaWiki 1.23-1.26, replace the above-mentioned "git clone" command with the following: git clone -b REL1_23 https://github.com/edwardspec/mediawiki-moderation.git

These versions may still receive security fixes (if any), but not new features.

Configuration

Parameters for LocalSettings.php

  • $wgModerationEnable
    If set to false, then new edits are applied as usual (not sent to moderation). Default: true.
    $wgModerationTimeToOverrideRejection
    Time (in seconds) after which rejected edit could no longer be approved. Default: 2 weeks. Note: old rejected edits are NOT deleted (moderators can always look at them in Rejected folder even if this time has elapsed).
    $wgModerationOnlyInNamespaces
    if set to an array of namespace numbers (e.g. $wgModerationOnlyInNamespaces = [ NS_MAIN, NS_FILE ];), moderation is only enabled in these namespaces (edits in other namespaces will bypass moderation). Default (empty array): moderation is enabled everywhere.
    $wgModerationIgnoredInNamespaces
    If set to an array of namespace numbers (e.g. $wgModerationIgnoredInNamespaces = [ NS_MAIN, NS_FILE ];), non-automoderated users can bypass moderation in these namespaces. Default (empty array): moderation can't be bypassed anywhere.
    $wgModerationNotificationEnable
    If true, notification email will be sent to $wgModerationEmail each time an edit is queued for moderation. Default: false.
    $wgModerationNotificationNewOnly
    If true, only notify about new pages (but not about edits in existing pages). Default: false.

See also: #Configuration options ONLY for pre-publish review (options not recommended for 95% of wikis).

利用者権限

Right What can the user do? Who has this right? (by default)
skip-moderation Edits are applied as usual (not sent to moderation). automoderated, sysop, bot
skip-move-moderation Page moves are applied as usual (not sent to moderation). automoderated, sysop, bot
moderation Can access Special:Moderation moderator, sysop
moderation-checkuser Can see IPs of registered users on Special:Moderation. checkuser

Additional anti-vandalism tips

In order to prevent vandalism, the following additional measures should be applied:

  1. Please restrict the renaming of pages to a trusted group (not just "automoderated"), because it can be used for difficult-to-revert vandalism.
    $wgGroupPermissions['automoderated']['skip-move-moderation'] = false;
    $wgGroupPermissions['sysop']['skip-move-moderation'] = true;
    
  2. Registering new accounts with offensive names is still a way for a vandal to show itself in the RecentChanges. A simple solution is to remove newusers log from RecentChanges:
    $wgLogRestrictions["newusers"] = 'moderation';
    

Recommended use / good practices

The following good-practices are advised:

  1. Only vandalism should be Rejected. Not-so-good edits with good intentions (e.g. adding excessive plot details into the Wikipedia article about film) are better made Approved and then reverted as usual. This way the author is not offended and the text is saved in page history, viewable by anyone.
  2. Any user that is deemed legitimate (does N good edits) should be added into automoderated group.
  3. Adding users to automoderated group via $wgAutopromote is NOT recommended, as it motivates the vandals to do many very-minor edits (e.g. adding interwiki). Better promote them to automoderated manually for one good edit and not promote for 30 useless-edits-made-for-count.
  4. Abstain from using blocks . Don't protect pages "just in case", except maybe for important templates.
  5. Allow the full rehabilitation of users with a bad history of editing. Their useful edits to the articles should be allowed, no matter how many times they were blocked. At the same time, trolling on talk pages should be rejected, so are the purposely-low-quality edits.

Non-recommended use: Moderation as pre-publish review extension

Moderation is an anti-vandalism tool first, but some wikis use it for quality control. For example, a wiki of scientific works might choose to:

  1. Not Approve any edits until they meet the strict quality standards of the industry.
  2. Not Reject any edits that are not yet good enough, so that the author could continue editing it as long as necessary.

Pros of this approach:

  1. New page appears as a fully reviewed, correctly formatted document with no typos, etc.
  2. Noone except the author and moderators would see the imperfect revisions.

Cons:

  1. Other users can't improve the article until it is Approved. In fact, they won't even know that it exists.
  2. Pending changes don't have an "edit history". Moderation stores only 1 pending change for each Page/User pair. That's inconvenient if you are preparing your page for publication for weeks. User can even accidentally delete the necessary text in their pending revision, and it won't be recoverable.

Configuration options ONLY for pre-publish review

The following parameters are only needed when using Moderation for review. They are not recommended for 95% of wikis (when following the Best Practices, they are totally not needed).

  • $wgModerationPreviewLink
    If true, Preview link is shown on Special:Moderation. Default: false.
    Why not recommended? Answer: when following Best Practices, you would never Reject a good change just because it is formatted poorly. Whether this edit is good or not, you know from "diff" link. "Preview" link tells you "how is this page formatted", which shouldn't affect your decision.
  • $wgModerationEnableEditChange
    If true, moderators can modify the text of pending changes before Approving. Default: false.
    Why not recommended? Answer: easy to mess up. Moderator can accidentally delete the text of pending edit (and it won't be recoverable). Furthermore, these changes are not attributed to moderator (after approval, it looks as if the original author made the edit this way), which is creepy.

Compatibility with other extensions

  1. Extension:Moderation should be enabled last in LocalSettings.php, because it aborts at least PageContentSave hook.
  2. Extension:Moderation fully supports Extension:CheckUser, meaning that if CheckUser extension is enabled, then any approved edit will have correct IP, user-agent and XFF saved in the checkuser tables.
  3. Extension:Moderation is fully compatible with Extension:VisualEditor and Extension:MobileFrontend. Theoretically it should also work with other API-based editors.
  4. Extension:StructuredDiscussions (also known as Flow) will work, but edits in Flow forums will bypass moderation.
    Moderation of Flow forums should be implemented in Extension:StructuredDiscussions itself. These forums use a non-text "content model", which is not supported by Moderation.
  5. Extensions that modify several slots of Multi-Content Revisions (not just the main slot, as MediaWiki itself does) are not yet supported. (currently very few extensions do)

関連項目