(Translated by https://www.hiragana.jp/)
Extension:TitleBlacklist - MediaWiki Jump to content

Extension:TitleBlacklist

From mediawiki.org
This page is a translated version of the page Extension:TitleBlacklist and the translation is 56% complete.
この拡張かくちょう機能きのうMediaWiki 1.21 以降いこうどうこりされています。 そのため再度さいどダウンロードする必要ひつようはありません。 しかし、提供ていきょうされているその手順てじゅんしたが必要ひつようはあります。
MediaWiki 拡張かくちょう機能きのうマニュアル
TitleBlacklist
リリースの状態じょうたい: 安定あんてい
実装じっそう 利用りようしゃ権限けんげん , API
説明せつめい 正規せいき表現ひょうげんブラックリストにマッチしたページめいのページの作成さくせい阻止そしします。
作者さくしゃ Victor Vasiliev (VasilievVVトーク)
最新さいしんバージョン 1.5.0 (継続けいぞくてき更新こうしん)
互換ごかんせい方針ほうしん MediaWiki とともにリリースされるスナップショット。 master には後方こうほう互換ごかんせいがありません。
MediaWiki 1.35+
PHP 7.0+
ライセンス GNU 一般いっぱん公衆こうしゅう利用りよう許諾きょだくしょ 2.0 以降いこう
ダウンロード
  • $wgTitleBlacklistSources
  • $wgTitleBlacklistUsernameSources
  • $wgTitleBlacklistCaching
  • $wgTitleBlacklistBlockAutoAccountCreation
  • $wgTitleBlacklistLogHits

  • tboverride
  • tboverride-account
  • titleblacklistlog
四半期しはんきごとのダウンロードすう 54 (Ranked 81st)
translatewiki.net で翻訳ほんやく利用りようできる場合ばあいは、TitleBlacklist 拡張かくちょう機能きのう翻訳ほんやくにご協力きょうりょくください
問題もんだいてん 解決かいけつのタスク · バグを報告ほうこく
A proposal to rename this extension is discussed at タスク T254650.

TitleBlacklist拡張かくちょう機能きのうは、Wikiの管理かんりしゃRegular expression一致いっちするタイトルのページの作成さくせい移動いどう・アップロードをブロックすること、およびRegular expressionに一致いっちする利用りようしゃめいつアカウントの作成さくせいをブロックすることを可能かのうにします。

インストール

  • ダウンロードして、ファイルをextensions/フォルダーないTitleBlacklistという名前なまえのディレクトリない配置はいちします。
    開発かいはつしゃとコード寄稿きこうしゃは、上記じょうきわりに以下いか使用しようしてGitからインストールします:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/TitleBlacklist
  • 以下いかのコードを LocalSettings.php ファイルの末尾まつび追加ついかします:
    wfLoadExtension( 'TitleBlacklist' );
    
  • ブロック リスト ソースを設定せっていします(下記かき参照さんしょう
  • Yes 完了かんりょう – ウィキの「Special:Version」に移動いどうして、拡張かくちょう機能きのうまさしくインストールされたことを確認かくにんします。
既定きていでは管理かんりしゃ以外いがい利用りようしゃ影響えいきょうします。既定きていですべての利用りようしゃ適用てきようするには $wgGroupPermissions['sysop']['tboverride'] = false;使用しようします。

設定せってい

$wgTitleBlacklistSources
タイトルブラックリストのソースのかた
配列はいれつ形式けいしき( name => source description )でなければならない。 デフォルトではそら配列はいれつがセットされています。
$wgTitleBlacklistUsernameSources
利用りようしゃめいにかけるフィルターとして動作どうさするソースの設定せってい
"*" is for all; false disables all.
特定とくていのソースに限定げんていしたい場合ばあい配列はいれつ( source name 1, source name 2 )をきます。 ブラックリストが断片だんぺんするのをふせぐために共有きょうゆうアカウントの作成さくせいシステムを導入どうにゅうしている場合ばあい便利べんりかもしれません。
$wgTitleBlacklistLogHits
trueだった場合ばあい、ブラックリストに一致いっちするローカルのアカウント作成さくせい操作そうさのすべてをSpecial:Log/titleblacklistに記録きろくします。 既定きていfalse.です。 Note that even disabled, the log will still be visible for users groups with the titleblacklistlog right.
$wgTitleBlacklistCaching
?
$wgTitleBlacklistBlockAutoAccountCreation
また、自動的じどうてきにソフトウェアがわ作成さくせいされたブラックリストに一致いっちするアカウントもブロックされます。 既定きていtrue.です。

複数ふくすうのソース

タイトルブロックリストは、ローカルメッセージ以外いがい複数ふくすうのソースから収集しゅうしゅうすることが可能かのうです。ブロックリストのソースを設定せっていするには、以下いかのコードを使用しようしてください。

wfLoadExtension( 'TitleBlacklist' );
$wgTitleBlacklistSources = [
    [
         'type' => 'localpage',
         'src'  => 'MediaWiki:Titleblacklist'
    ],
    [
         'type' => 'url',
         'src'  => 'https://meta.wikimedia.org/w/index.php?title=Title_blacklist&action=raw'
    ],
    [
         'type' => 'file',
         'src'  => '/home/wikipedia/blacklists/titles',
    ]
];

詳細しょうさいタスク T113864参照さんしょうしてください。

使用しようほう

ブロックリスト

ページめいブロック リストは MediaWiki:Titleblacklist のページにあります。

このページはそれぞれの個別こべつくだりごとに正規せいき表現ひょうげん構成こうせいされます。 Each of them forbids the creation of pages whose titles match it. れい:

Foo <autoconfirmed|noedit|errmsg=blacklisted-testpage> # This page name is not allowed
[Bb]ar # No one should create article about it
.*pandora.* # This word is not allowed in any part of a page name

それぞれのエントリは <>かこまれ、|分割ぶんかつされた省略しょうりゃく可能かのう属性ぞくせいふくむことができます。

  • autoconfirmed - 自動じどう承認しょうにんされた利用りようしゃにのみ操作そうさ許可きょかします
  • casesensitive - ブラックリストに掲載けいさいされたタイトルを確認かくにんするときに大文字おおもじ小文字こもじ区別くべつをする
  • noedit - also forbid editing the page (if it already exists)
  • moveonly - 作成さくせいはできますが、移動いどうはできません (rev:35163)
  • newaccountonly - マッチする利用りようしゃめいでアカウントを作成さくせいすることはできませんが、ページの作成さくせいはできます (rev:38977)
  • reupload - ブラックリストに掲載けいさいされたファイルのさいアップロードを許可きょか (rev:33656)
  • errmsg - 標準ひょうじゅんのもののわりに表示ひょうじされるメッセージの名前なまえです

AntiSpoof 拡張かくちょう機能きのうがインストールされている場合ばあい属性ぞくせい ‎<antispoof>使用しようすることができます。

ここで「正規せいき表現ひょうげん」として説明せつめいしているものは正式せいしき正規せいき表現ひょうげんではなく、ハードコードされた正規せいき表現ひょうげんパターンに挿入そうにゅうするためのサブパターンです。たとえば、上記じょうきれいにある Foo/^Foo$/usi のような正規せいき表現ひょうげんになります。

正規せいき表現ひょうげんにアンダースコア (_) がふくまれる場合ばあい拡張かくちょう機能きのうにより自動的じどうてきにスペースに変換へんかんされます。これはタイトルの検査けんさがテキスト形式けいしき("Page_title"ではなく、"Page title"のかたち)でおこなわれるためです。

ホワイトリスト

MediaWiki:Titlewhitelist というホワイトリストもあります。 順番じゅんばんとしてはまずブラックリストが、つづいてホワイトリストが適用てきようされます。 したがって、ブラックリストの正規せいき表現ひょうげん合致がっちし、ホワイトリストの正規せいき表現ひょうげん合致がっちしない入力にゅうりょくはブロックされます。 なお、ホワイトリストの使用しようにあたって LocalSettings.php変更へんこうする必要ひつようはありません。 上記じょうきブラックリストけの属性ぞくせい一部いちぶcasesensitiveなど)はホワイトリストでも使用しようできます。

カスタマイズ

警告けいこくメッセージ

When an attempt to create a page is blocked due to a blacklisted title, a warning message is shown to the user. This can be customized via following system messages defined in the namespace Mediawiki:

カスタム メッセージは errmsg 属性ぞくせい使用しようして定義ていぎできます。

れい : タイトルブラックリストを使用しようしてアカウントの作成さくせい制御せいぎょする

概要がいよう

The username for new accounts will be regarded by this extension differently to the way it regards new articles. This extension will prepend "User:" (or its localized equivalent) to the string that a user enters at Username on the create account page. So when this extension is performing matches with your Regex's, as found on MediaWiki:Titleblacklist or MediaWiki:Titlewhitelist, it will match against "User:" + <userinput>.

For example, imagine you want to block "jill" as a new user. Imagine you had a blacklist regex "jill.* <newaccountonly>" and a user enters "jill" as the username on the create account page. This will pass as the comparison this extension will make will be between "jill.*" (the regex) and "User:jill" (the constructed input string). These don't match and so "jill" is allowed (and you probably didn't intend this). To effect the intended block use a regex like ".*jill.* <newaccountonly>" or "User:jill.* <newaccountonly>" on MediaWiki:Titleblacklist.

If you want to block all users except for all those that do match a regex then block all users in MediaWiki:Titleblacklist and write the permissible regex in the MediaWiki:Titlewhitelist.

使用しようほう

アカウント作成さくせいに、すべての利用りようしゃめいをスペースで区切くぎり、それぞれの名前なまえ大文字おおもじにしてかならず2つの名前なまえ構成こうせいされるよう強制きょうせいしたい場合ばあいつぎのようにしてください :

1. TitleBlackListをインストールします。

2. 以下いかLocalSettings.php 追加ついかします

wfLoadExtension( 'TitleBlacklist' );
$wgGroupPermissions['sysop']['tboverride'] = false; 
$wgTitleBlacklistSources = [
  [
    'type' => 'localpage',
    'src'  => 'MediaWiki:Titleblacklist'
  ]
];

3. https://www.example.com/mywiki/MediaWiki:Titleblacklistに追加ついか

# Block all user accounts, and only permit those that match the MediaWiki:Titlewhitelistregex 
.* <newaccountonly>

4. https://www.example.com/mywiki/MediaWiki:Titlewhitelistに追加ついか

# Only allow two names, separated by a space, with each name capitalized, e.g. "Fred Mew" OK, "Fred mew" fails, "Fredmew" fails.
# Depends on .* <newaccountonly> in blacklist
User:[A-Z][a-z]+\s[A-Z][a-z]+ <casesensitive>

5. https://www.example.com/mywiki/MediaWiki:Titleblacklist-forbidden-new-account editで

The user name "$2" has been blocked from creation. It matches the following blacklist entry: <code>$1</code>.

Please use a real name for the user name. User names need to be comprised of two names separated by a space. Each name must be capitalized.

E.g.:
* "Mary Smith". OK.
* "MarySmith". Invalid.
* "Mary smith". Invalid.
* "marysmith". Invalid.

User name creation (and article creation) blocking rules are controlled by MediaWiki:Titleblacklist and MediaWiki:Titlewhitelist. This message can be customized at MediaWiki:Titleblacklist-forbidden-new-account.

一致いっちするかテスト

The API module action=titleblacklist can be used to test a title and action (e.g. edit, create, new-account) against the blacklist. 'tboverride' の権限けんげんがある利用りようしゃは、tbnooverride パラメーターの指定してい必須ひっすになります。

ブロックリストにフィルターをかける れい :

.*(.)\1{10}.* <newaccountonly|errmsg=titleblacklist-forbidden-new-account-invalid> # Disallows eleven or more of the same character repeated in usernames

APIを使用しようすることができます

結果けっか
{
    "titleblacklist": {
        "result": "blacklisted",
        "reason": "<table  class=\"plainlinks fmbox\nfmbox-system \" style=\"\" role=\"presentation\" dir=\"ltr\">\n<tr>\n<td class=\"mbox-image\">\n  [[File:Imbox notice.png|40x40px|link=|alt=]]</td>\n<td class=\"mbox-text\" style=\"\"> The user name \"AAAAAAAAAAA\" [[Mediawiki talk:Titleblacklist|has been blocklisted]] from creation. </td>\n\n</tr>\n</table>",
        "message": "titleblacklist-forbidden-new-account-invalid",
        "line": ".*(.)\1{10}.* &lt;newaccountonly|errmsg=titleblacklist-forbidden-new-account-invalid&gt; # Disallows eleven or more of the same character repeated in usernames"
    }
}

If Scribunto is installed, TitleBlacklist allows for testing if particular titles and actions will match an entry in the blacklist using the mw.ext.TitleBlacklist.test function. 一致いっちするエントリがつかった場合ばあい、そのエントリの詳細しょうさい情報じょうほうかえります。

ブロックリストにフィルターをかける れい :

.*(.)\1{10}.* <newaccountonly|errmsg=titleblacklist-forbidden-new-account-invalid> # Disallows eleven or more of the same character repeated in usernames

running the function:

mw.ext.TitleBlacklist.test("new-account", "AAAAAAAAAAA")

マッチしたエントリの詳細しょうさいふくまれる以下いかひょうかえします :

{
	custommessage = "titleblacklist-forbidden-new-account-invalid",
	message = "titleblacklist-forbidden-new-account-invalid",
	params = {
		errmsg = "titleblacklist-forbidden-new-account-invalid",
		newaccountonly = true
	},
	raw = " .*(.)\1{10}.* <newaccountonly|errmsg=titleblacklist-forbidden-new-account-invalid> # Disallows eleven or more of the same character repeated in usernames",
	regex = ".*(.)\1{10}.*",
	version = 3
}

Clearing the cache

The contents of the blacklists are cached. Changes in blacklists configured at a URL or a file on the server are not applied immediately. To force clearing the cache, edit and save the page MediaWiki:Titleblacklist (even if you don't change anything). It doesn't matter if it's configured as a blacklist or not. includes/Hooks.php参照さんしょうしてください。

Resources on regular expressions

関連かんれん項目こうもく