Extension:TitleBlacklist

This page is a translated version of the page Extension:TitleBlacklist and the translation is 100% complete.
Other languages:
Deutsch • ‎English • ‎Tiếng Việt • ‎Türkçe • ‎español • ‎français • ‎polski • ‎português do Brasil • ‎čeština • ‎беларуская (тарашкевіца)‎ • ‎हिन्दी • ‎中文 • ‎日本語 • ‎한국어
Bu uzantı MediaWiki 1.21 ve üstü ile gelir. Böylece tekrar indirmek zorunda değilsiniz. Ancak, verilen diğer talimatları izlemeniz gerekir.
MediaWiki manüel uzantıları
OOjs UI icon advanced.svg
TitleBlacklist
Sürüm durumu: kararlı
TitleBlacklist demonstration.png
Uygulama Kullanıcı hakları , API
Açıklama Normal ifade kara listesiyle eşleşen sayfaların oluşturulmasını engeller
Yazar(lar) Victor Vasiliev (VasilievVVtalk)
En son sürüm 1.5.0 (Güncellemeler devam etmekte)
Uyumluluk politikası sürüm dalları
MediaWiki 1.35+
PHP 7.0+
Lisans GNU Genel Kamu Lisansı 2.0 veya üstü
İndir
  • $wgTitleBlacklistSources
  • $wgTitleBlacklistUsernameSources
  • $wgTitleBlacklistCaching
  • $wgTitleBlacklistBlockAutoAccountCreation
  • $wgTitleBlacklistLogHits
  • tboverride
  • tboverride-account
  • titleblacklistlog
Translatewiki.net adresinde mevcutsa, TitleBlacklist uzantısını çevirin
Kullanım ve sürüm matrisini kontrol edin.
Sorunlar Açık görevler · Hata bildir

TitleBlacklist uzantısı, viki hizmetlilerin başlığı bir veya daha fazla düzenli ifadeler ile eşleşen sayfaların oluşturulmasını, taşınmasını ve yüklenmesini engellemesine ve hesap oluşturmayı engellemesine olanak tanır.

Kurulum

  • İndir ve dosyaları extensions/ klasörünüzdeki TitleBlacklist adlı bir dizine yerleştirin.
  • LocalSettings.php dosyanızın altına aşağıdaki kodu ekleyin:
    wfLoadExtension( 'TitleBlacklist' );
    
  • Engelleme listesi kaynaklarını yapılandır (aşağıya bakın)
  •   Yapıldı – Uzantının başarıyla yüklendiğini doğrulamak için vikinizde Special:Version seçeneğine gidin.
Varsayılan olarak yalnızca sistem dışı kullanıcıları etkiler. Tümünü varsayılan yapmak için $wgGroupPermissions['sysop']['tboverride'] = false; kullanın.

Yapılandırma

$wgTitleBlacklistSources
Başlık kara listesi kaynakları dizisi.
Dizi( name => source açıklaması) biçiminde olmalıdır. Varsayılan olarak boş bir dizidir.
$wgTitleBlacklistUsernameSources
Kullanıcı adı filtresi olarak çalışabilecek kaynakları ayarlar.
'*' herkes içindir; false her şeyi devre dışı bırakır.
Belirli kaynaklarla sınırlamak istiyorsanız dizi kullanın (kaynak adı 1, kaynak adı 2). Bu, kara liste parçalanmasını önlemek için hesap oluşturma sisteminizi paylaştığınızda faydalı olabilir.
$wgTitleBlacklistLogHits
Değer true ise, Special:Log/titleblacklist üzerinde kara listelerle eşleşen tüm yerel hesap oluşturma girişimlerini günlüğe kaydeder. Varsayılan değer false. Devre dışı olsa bile, günlüğün titleblacklistlog hakkı olan kullanıcı grupları için görünmeye devam edeceğini unutmayın.
$wgTitleBlacklistCaching
?
$wgTitleBlacklistBlockAutoAccountCreation
Ayrıca, kara listelerle eşleşen otomatik olarak oluşturulan hesabı da engeller. Varsayılan değer true.

Çoklu engel listesi kaynakları

Başlık engeli listesi, yerel mesajın dışındaki birden fazla kaynaktan toplanabilir. Engel listesi kaynaklarını yapılandırmak için aşağıda açıklanan kodu kullanın:

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',
    ]
];

Daha fazla bilgi için T113864 soruna bakın.

Kullanım

Engel list

Başlık engelleme listesi MediaWiki:Titleblacklist sayfasında bulunur.

Bu sayfa, her biri ayrı bir satırdaki normal ifadelerden oluşur, örneğin:

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

Her giriş ayrıca <> içine eklenmiş ve | ile ayrılmış isteğe bağlı özellikler içerebilir.

  • autoconfirmed - ayrıca otomatik olarak onaylanan kullanıcıların bu tür işlemleri gerçekleştirmesine izin verir
  • casesensitive - engel listesine konulup yazılmadığını kontrol ederken durumu görmezden gelme
  • noedit - kullanıcılar bu sayfaları da düzenleyemez
  • moveonly - taşımaları yasakla ancak sıradan yaratmaya izin ver (rev:35163)
  • newaccountonly - eşleşen kullanıcı adlarının oluşturulmasını yasaklayın, ancak sayfa oluşturmaya izin verin (rev:38977)
  • reupload - mevcut engellenen dosyaların yeniden yüklenmesine izin verin (rev:33656)
  • errmsg - standart yerine görüntülenmesi gereken mesajın adı

AntiSpoof uzantısı kuruluysa, <antispoof> niteliğini de kullanabilirsiniz.

Burada düzenli ifadeler olarak adlandırılan, uygun düzenli ifadeler değil, sabit kodlu düzenli ifadeye eklenen alt kalıplardır. yani, yukarıdaki Foo alt deseni, /^Foo$/usi gibi düzenli bir ifade oluşturur.

Başlıklar metin biçimiyle eşleştiği için normal ifadelerde alt çizgiler ("_") uzaya dönüştürülecektir ("Sayfa_başlığı" yerine "Sayfa başlığı").

Güvenli listesi

Ayrıca MediaWiki:Titlewhitelist sayfasında güvenli bir liste vardır. Önce engelleme listesi, ardından güvenli liste uygulanır. Böylece, güvenli listedeki bir girişle eşleşmesi dışında, engelleme listesindeki bir girişle eşleşen kullanıcı girişi engellenir. Güvenli listeyi kullanmak için LocalSettings.php dosyasında herhangi bir şey yapılandırmanız gerekmez. Engelleme listesi için yukarıda listelenen isteğe bağlı özelliklerden bazıları, güvenli liste için de çalışır; harfe duyarlı.

Özelleştirme

Uyarı mesajları

Engelleme listesinde listelenen bir başlık nedeniyle sayfa oluşturma denemesi engellendiğinde, kullanıcıya bir uyarı mesajı gösterilir. Bu sistem mesajları aracılığıyla özelleştirilebilir

Özel mesajlar errmsg özelliği kullanılarak tanımlanabilir.

Örnek: Kullanıcı hesabı oluşturma işlemini kontrol etmek için TitleBlacklist'i kullanma

Kavramsal genel bakış

Yeni hesapların kullanıcı adı, bu uzantı tarafından yeni maddelere göre farklı olarak değerlendirilir. Bu uzantı, bir kullanıcının hesap oluştur sayfasında Kullanıcı adı'na girdiği dizenin başına "Kullanıcı:" (veya yerelleştirilmiş eşdeğeri) başını ekler. Dolayısıyla, bu uzantı MediaWiki:Titleblacklist veya MediaWiki: Titlewhitelist sayfasında bulunan düzenli ifadelerinizle eşleştiğinde, "Kullanıcı:" + <userinput> ile eşleşecektir.

Örneğin, "jill" yeni bir kullanıcı olarak engellemek istediğinizi düşünün. Bir engel listesi düzenli ifade "jill.*<newaccountonly>" ve bir kullanıcı hesap oluşturma sayfasında kullanıcı adı olarak "jill" girdiğinizi düşünün. Bu uzantının yapacağı karşılaştırma "jill.*" (Normal ifade) ve "Kullanıcı:jill" (oluşturulmuş giriş dizesi) arasında olacağı için geçecektir. Bunlar eşleşmiyor ve bu nedenle "jill" ile izin veriliyor (ve muhtemelen bunu yapmadınız). Amaçlanan engeli etkilemek için MediaWiki:Titleblacklist üzerinde ".*jill.*<newaccountonly>" veya "Kullanıcı:jill.*<newaccountonly>" gibi bir normal ifade kullanın.

Normal ifadeyle eşleşen tüm kullanıcılar hariç tüm kullanıcıları engellemek istiyorsanız, MediaWiki:Titleblacklist içindeki tüm kullanıcıları engelleyin ve MediaWiki:Titlewhitelist içine izin verilen normal ifadeyi yazın.

Nasıl yapılır

Tüm kullanıcı adlarını, hesap oluşturma sırasında, boşluk ayrılmış, her ad büyük harfle yazılmış tam olarak iki addan oluşmaya zorlamak istiyorsanız, aşağıdakileri yapın:

1. TitleBlacklist kurun.

2. LocalSettings.php öğenize aşağıdakileri ekleyin

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

3. https://www.example.com/mywiki/MediaWiki:Titleblacklist bağlantısında ekleyin

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

4. https://www.example.com/mywiki/MediaWiki:Titlewhitelist bağlantısında ekleyin

# 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 block list
User:[A-Z][a-z]+\s[A-Z][a-z]+ <casesensitive>

5. https://www.example.com/mywiki/MediaWiki:Titleblacklist-forbidden-new-account edit bağlantısında

The user name "$2" has been blocked from creation. It matches the following block list 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.

Kullanıcı adı oluşturma (ve madde oluşturma) engelleme kuralları MediaWiki:Titleblacklist ve MediaWiki:Titlewhitelist tarafından denetlenir. Bu mesaj MediaWiki:Titleblacklist-forbidden-new-account sayfasından özelleştirilebilir.

Eşleşmeleri test etme

action=titleblacklist API modülü, bir başlığı ve işlemi (ör. düzenle, oluştur, yeni hesap) engelleme listesine karşı test etmek için kullanılabilir. 'tboverride' hakkına sahip kullanıcılar tbnooverride parametresini sağladığından emin olmalıdır.

Örneğin, engelleme listesi filtreyi içeriyorsa:

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

bir API isteği gibi kullanabilirsiniz

Scribunto yüklüyse, bu uzantı belirli başlıkların ve işlemlerin mw.ext.TitleBlacklist.test işlevini kullanarak engel listesindeki bir girişle eşleşip eşleşmeyeceğini test etmeye izin verir. Bir eşleşme bulunursa, eşleşen girişin ayrıntıları döndürülür.

Örneğin, engelleme listesi filtreyi içeriyorsa:

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

işlevi çalıştırmak:

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

eşleşen girişle ilgili ayrıntıları içeren aşağıdaki tabloyu döndürür:

{
	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
}

Normal ifadelerdeki kaynaklar

Ayrıca bakınız