Manual:Kullanıcı hakları
Kullanıcı hakları, farklı kullanıcı gruplarına atanabilecek izinlerdir (sayfaları düzenleme veya kullanıcıları engelleme yeteneği gibi). MediaWiki, varsayılan kullanıcı hakları ve kullanıcı grupları kümesiyle birlikte gönderilir, ancak bunlar özelleştirilebilir. Bu sayfada varsayılan haklar ve gruplar ile bunların nasıl özelleştirileceği açıklanmaktadır.
Tek tek viki kullanıcılarını gruplara ekleme ve gruplardan kaldırma hakkında bilgi için Yardım:Kullanıcı yetkileri ve grupları ve Manual:Setting user groups in MediaWiki sayfalarına bakın.
Grup izinlerini değiştirme
Varsayılan bir MediaWiki yüklemesi varsayılan gruplara belirli haklar atar (aşağıya bakın).
Varsayılan hakları $wgGroupPermissions içindeki LocalSettings.php dizisini sözdizimiyle düzenleyerek değiştirebilirsiniz.
$wgGroupPermissions['group']['right'] = true /* veya false */;
$wgGroupPermissions, includes/DefaultSettings.php içinde ayarlanır, ancak LocalSettings.php içinde mevcut değildir. Daha sonra bu dosyaya eklemeniz gerekir.Bir üyenin birden fazla grubu varsa, içinde bulundukları grupların her birinden tüm izinleri alır.
Anonim kullanıcılar da dahil olmak üzere tüm kullanıcılar * grubundadır; tüm kayıtlı kullanıcılar user grubundadır.
Varsayılan gruplara ek olarak, aynı diziyi kullanarak keyfi olarak yeni gruplar oluşturabilirsiniz.
Örnekler
Bu örnek, $wgWhitelistRead üzerinde listelenmeyen tüm sayfaların görüntülenmesini devre dışı bırakacak, ardından yalnızca kayıtlı kullanıcılar için yeniden etkinleştirecektir:
$wgGroupPermissions['*']['read'] = false;
# Aşağıdaki satır aslında gerekli değildir, çünkü varsayılanlardır. '*' değerini false olarak ayarlamak, ayrı olarak true değerine ayarlanmış grupların haklarını devre dışı bırakmaz!
$wgGroupPermissions['user']['read'] = true;
Bu örnek tüm sayfaların düzenlenmesini devre dışı bırakır, ardından yalnızca onaylanmış e-posta adresleri olan kullanıcılar için yeniden etkinleştirir:
# Herkes için devre dışı bırak.
$wgGroupPermissions['*']['edit'] = false;
# Kullanıcılar için de devre dışı bırak: '*' olmasa bile varsayılan olarak 'kullanıcı' düzenlemesine izin verilir.
$wgGroupPermissions['user']['edit'] = false;
# Onaylanmış e-posta adreslerine sahip kullanıcıların grupta yer almasını sağlayın.
$wgAutopromote['emailconfirmed'] = APCOND_EMAILCONFIRMED;
# Grubu kullanıcı listesinden gizle.
$wgImplicitGroups[] = 'emailconfirmed';
# Son olarak, istenen grup için true olarak ayarlayın.
$wgGroupPermissions['emailconfirmed']['edit'] = true;
Yeni bir grup oluşturma ve bu gruba izin atama
Custom groups can be created. A group is created implicitly, by just assigning it rights in $wgGroupPermissions[ 'group-name' ] where group-name is the actual name of the group.
MW 1.12'den, $wgAutopromote kullanarak kullanıcıların otomatik olarak tanıtıldığı (otomatik onaylı ve e-posta onaylı gibi) kendi gruplarınızı oluşturabilirsiniz.
İzin atamaya ek olarak, bu üç viki sayfasını uygun içerikle oluşturmalısınız:
- MediaWiki:Group-<group-name> (içerik:
Grubun adı) - MediaWiki:Group-<group-name>-member (içerik:
Grubun bir üyesinin adı) - MediaWiki:Grouppage-<group-name> (içerik:
Grup sayfasının adı)
Varsayılan olarak, bürokratlar kullanıcıları herhangi bir gruba ekleyebilir veya gruptan çıkarabilir.
Ancak, $wgAddGroups ve $wgRemoveGroups kullanıyorsanız, bunları özelleştirmeniz gerekebilir.
Örnekler
Bu örnek, kullanıcıları engelleyebilen ve sayfaları silebilen ve son değişiklik günlüğünde düzenlemeleri varsayılan olarak gizlenen rastgele bir “projectmember” grubu oluşturur:
$wgGroupPermissions['projectmember']['bot'] = true;
$wgGroupPermissions['projectmember']['block'] = true;
$wgGroupPermissions['projectmember']['delete'] = true;
'random group' yerine 'random-group' veya 'random_group' kullanın. Ayrıca, bir grup oluşturmak için yalnızca küçük harfler kullanılması önerilir.Bu örnekte, muhtemelen şu sayfaları da oluşturmak istersiniz:
- MediaWiki:Group-projectmember (içerik:
Proje üyeleri) - MediaWiki:Group-projectmember-member (içerik:
Proje üyesi) - MediaWiki:Grouppage-projectmember (içerik:
Project:Proje Üyeleri)
Bu, grubun arayüz boyunca “Proje üyeleri” olarak adlandırılmasını ve bir üyenin “Proje üyesi” olarak adlandırılmasını sağlar ve genel bakışlar grup adını Project:Proje üyeleri ile ilişkilendirir.
Bu örnek, varsayılan olarak yazma erişimini (sayfa düzenleme ve oluşturma) devre dışı bırakır, “Yaz” adlı bir grup oluşturur ve yazma erişimi verir. Kullanıcılar $UserRights aracılığıyla bu gruba manüel olarak eklenebilir: Users can be manually added to this group via Special:UserRights:
$wgGroupPermissions['*']['edit'] = false;
$wgGroupPermissions['*']['createpage'] = false;
$wgGroupPermissions['user']['edit'] = false;
$wgGroupPermissions['user']['createpage'] = false;
$wgGroupPermissions['writer']['edit'] = true;
$wgGroupPermissions['writer']['createpage'] = true;
Bu örnekte, muhtemelen şu sayfaları da oluşturmak istersiniz:
- MediaWiki:Group-writer (içerik:
Yazarlar) - MediaWiki:Group-writer-member (içerik:
Yazar) - MediaWiki:Grouppage-writer (içerik:
Project:Yaz)
İzin listesi
MediaWiki'nin en son sürümünde aşağıdaki kullanıcı hakları kullanılabilir. Eski bir sürüm kullanıyorsanız, vikinizdeki Special:Version konusuna bakın ve sürümünüzün "Sürümler" sütununda olup olmadığını görün.
| Yetki | Açıklama | Varsayılan olarak bu hakka sahip kullanıcı grupları | Sürümler |
|---|---|---|---|
| Okuma | |||
| read | Sayfaları oku – false olarak ayarlandığında, $wgWhitelistRead olan belirli sayfalar için geçersiz kıl
Kullanıcı hakkı
'read' ile false olarak ayarlamak yalnızca viki sayfalarına (maddeler ve tartışma sayfaları gibi) erişimi kısıtlar. $wgUploadPath alt dizinleri altında yüklenen dosyalar (resimler, dosyalar, belgeler dahil) varsayılan olarak her zaman doğrudan URL erişimi yoluyla herkese açık olarak erişilebilir kalacaktır.Yüklenen dosyalara erişimi kısıtlamak için Manual:Image authorization ve img_auth.php sayfasındaki talimatlara bakın. |
*, user | 1.5+ |
| Düzenleme | |||
| applychangetags | Değişiklikleriyle beraber etiketleri uygula – edit hakkı gerekli
|
user | 1.25+ |
| autocreateaccount | Otomatik olarak harici bir kullanıcı hesabı ile oturum aç - createaccount'un daha sınırlı bir sürümü | — | 1.27+ |
| createaccount | Yeni kullanıcı hesapları oluştur – register / registration | *, sysop | 1.5+ |
| createpage | Sayfa oluştur (tartışma sayfası olmayan) – edit hakkı gerekli
|
*, user | 1.6+ |
| createtalk | Tartışma sayfaları oluştur – edit hakkı gerekli
|
*, user | 1.6+ |
| delete-redirect | Tek revizyon yönlendirmelerini silin (grup zaten delete hakkına sahipse buna gerek olmadığını unutmayın)
|
— | 1.36+ |
| edit | Sayfaları değiştir – requires the read right
|
*, user | 1.5+ |
| editsemiprotected | Korunan sayfalarda değişiklik yap (semi protected) – kademesiz koruma olmadan – requires the edit right
|
autoconfirmed, bot, sysop | 1.22+ |
| editprotected | Korunan sayfalarda değişiklik yap (fully protected) – kademesiz koruma olmadan – requires the edit right
|
sysop | 1.13+ |
| minoredit | Değişikliklerini küçük olarak kaydet – edit hakkı gerekli
|
user | 1.6+ |
| move | Sayfaları taşı – edit hakkı gerekli
|
user, sysop | 1.5+ |
| move-categorypages | Kategori sayfalarını taşı – move hakkı gerekli
|
user, sysop | 1.25+ |
| move-rootuserpages | Kök kullanıcı sayfalarını taşı – move hakkı gerekli
|
user, sysop | 1.14+ |
| move-subpages | Sayfaları alt sayfalarıyla beraber taşı – move hakkı gerekli
|
user, sysop | 1.13+ |
| movefile | Dosyaları taşı – move hakkı ve $AllowImageMoving için true olması gerekir
|
user, sysop | 1.14+ |
| reupload | Mevcut dosyaların üstüne yaz – upload hakkı gerekli
|
user, sysop | 1.6+ |
| reupload-own | Kendisinin yüklediği bir dosyanın üzerine yaz – upload hakkını gerekli (grup zaten reupload hakkına sahipse buna gerek olmadığını unutmayın)
|
— | 1.11+ |
| reupload-shared | Paylaşılan ortam deposundaki dosyaları yerel olarak geçersiz kıl – (ayarlanmışsa) yerel dosyalarla (upload hakkı gerekli)
|
user, sysop | 1.6+ |
| sendemail | Diğer kullanıcılara e-posta gönder | user | 1.16+ |
| upload | Dosya yükle – edit hakkı ve $EnableUploads doğru olmasını gerektirir
|
user, sysop | 1.5+ |
| upload_by_url | Bir URL adresinden dosya yükle – upload hakkı gerekli (1.20'den önce hizmetlilere verildi)
|
— | 1.8+ |
| Yönetim | |||
| autopatrol | Modifies certain actions performed by the permission holder, automatically marking them as "patrolled" – Depends on $wgUseRCPatrol, $wgUseNPPatrol, $wgUseFilePatrol
|
bot, sysop | 1.9+ |
| bigdelete | Uzun tarihli sayfaları sil ($wgDeleteRevisionsLimit ile belirlendiği gibi) – delete hakkı gerekli
|
sysop | 1.12+ |
| block | Diğer kullanıcıların değişiklik yapmalarını engelle ya da engeli kaldır – Engelleme seçenekleri arasında yeni hesapların düzenlenmesi ve kaydedilmesi ve aynı IP adresindeki diğer kullanıcıların otomatik olarak engellenmesi sayılabilir | sysop | 1.5+ |
| blockemail | Bir kullanıcının e-posta göndermesini engelle ya da engeli kaldır – engelleme sırasında Special:Emailuser arayüzünün kullanılmasının önlenmesine olanak tanır - block hakkını gerektirir – requires the block right
|
sysop | 1.11+ |
| browsearchive | Silinen sayfaları ara – Special:Undelete aracılığıyla – deletedhistory hakkı gerekli
|
sysop | 1.13+ |
| changetags | Tekil sürümler ve günlük kayıtlarına rastgele etiket ekle veya çıkar – şu anda uzantılar tarafından kullanılmıyor | user | 1.25+ |
| delete | Sayfaları sil 1.5-1.11sayfaların silinmesine veya geri alınmasına izin verir. 1.12+sayfaların silinmesine izin verir. Geri alma işlemleri için artık undelete var, aşağıya bakın
|
sysop | 1.5+ |
| deletedhistory | Silinmiş geçmiş girdilerini ilişkili metinleri olmadan görüntüle | sysop | 1.6+ |
| deletedtext | Silinmiş metni ve silinmiş revizyonlar arasındaki değişiklikleri görüntüle | sysop | 1.16+ |
| deletelogentry | Belirli günlük girdilerini sil ve geri getir – belirli günlük girişlerinin bilgilerinin (eylem metni, özet, eylemi yapan kullanıcı) silinmesine/geri almasına izin verir - deleterevision hakkını gerektirir | suppress | 1.20+ |
| deleterevision | Sayfaların belirli revizyonlarını sil ve geri yükle – belirli düzeltmelerin bilgilerinin (revizyon metni, düzenleme özeti, düzenleme yapan kullanıcı) silinmesine/silinmesine izin verir (1.20 sürümünde deleterevision ve deletelogentry bölün)
|
suppress | 1.6+ |
| editcontentmodel | Sayfanın içerik modelini düzenle – edit hakkı gerekli
|
user | 1.23.7+ |
| editinterface | Kullanıcı arayüzünü değiştir – arayüz iletileri içermektedir. Site çapı CSS/JSON/JS'yi düzenlemek için artık ayrı haklar var, aşağıya bakın. – edit hakkı gerekli
|
sysop, interface-admin | 1.5+ |
| editmyoptions | Tercihlerinizi düzenleyin | * | 1.22+ |
| editmyprivateinfo | Kendi özel verilerinizi (ör. e-posta adresi, gerçek ad) değiştirin ve parola sıfırlama e-postaları isteyin – ayrıca "Şifreyi Değiştir"i gizler, ancak şifreyi değiştirmenin diğer yollarını gizlemez – viewmyprivateinfo hakkı gerekli
|
* | 1.22+ |
| editmyusercss | Kendi kullanıcı CSS dosyaları düzenle – 1.31'den önce herkese atandı (yani "*") (grubun zaten editusercss hakkı varsa buna gerek olmadığını unutmayın) – edit hakkı gerekli
|
user | 1.22+ |
| editmyuserjs | Kendi kullanıcı JavaScript dosyalarını düzenle – 1.31'den önce herkese atandı (yani "*") (grubun zaten edituserjs hakkı varsa buna gerek olmadığını unutmayın) – edit hakkı gerekli
|
user | 1.22+ |
| editmyuserjsredirect | Yönlendirmeleri olan kendi kullanıcı JavaScript dosyalarınızı düzenleyin (grup zaten edituserjs hakkına sahipse buna gerek olmadığını unutmayın) – edit hakkı gerekli
|
— | 1.34+ |
| editmyuserjson | Kendi kullanıcı JSON dosyalarını düzenle (grup zaten edituserjson hakkına sahipse buna gerek olmadığını unutmayın) – edit hakkı gerekli
|
user | 1.31+ |
| editmywatchlist | Kendi izleme listeni düzenle (bazı eylemlerin bu yetki olmadan da sayfa ekleyebileceğini unutmayın) – viewmywatchlist hakkı gerekli
|
user | 1.22+ |
| editsitecss | Site çapı CSS'sini düzenle – editinterface hakkı gerekli
|
interface-admin | 1.32+ |
| editsitejs | Site çapı JavaScript'i düzenle – editinterface hakkı gerekli
|
interface-admin | 1.32+ |
| editsitejson | Site çapı JSON'u düzenle – editinterface hakkı gerekli
|
sysop, interface-admin | 1.32+ |
| editusercss | Diğer kullanıcıların CSS sayfalarında değişiklik yap – edit hakkı gerekli
|
interface-admin | 1.16+ |
| edituserjs | Diğer kullanıcıların JavaScript sayfalarında değişiklik yap – edit hakkı gerekli
|
interface-admin | 1.16+ |
| edituserjson | Diğer kullanıcıların JSON sayfalarında değişiklik yap – edit hakkı gerekli
|
sysop, interface-admin | 1.31+ |
| hideuser | Herkesten gizleyerek veya açarak bir kullanıcı adını engelle ya da engeli kaldır – Yalnızca 1000 veya daha az düzenlemesi olan kullanıcılar varsayılan olarak gizlenebilir. – block hakkı gerekli
Devre dışı bırakmak için |
suppress | 1.10+ |
| ignore-restricted-groups | Belirli kısıtlı kullanıcı gruplarını düzenlemede koşulları atla – Only applies to groups the user would be otherwise able to change, based on userrights right and the contents of $wgAddGroups.
|
— | 1.46+ |
| markbotedits | Geri döndürülen değişiklikleri, bot değişiklikleri olarak işaretle – Manual:Geri döndürme bölümüne bakın – rollback hakkı gerekli
|
sysop | 1.12+ |
| mergehistory | Sayfaların geçmişlerini birleştir – edit hakkı gerekli
|
sysop | 1.12+ |
| pagelang | Sayfanın dilini değiştir – $PageLanguageUseDB true olmalıdır | — | 1.24+ |
| patrol | Mark certain actions as "patrolled" – depends on $wgUseRCPatrol, $wgUseNPPatrol, $wgUseFilePatrol
|
sysop | 1.5+ |
| patrolmarks | Son değişiklikler gözleme işaretlerini görüntüle (note that this is not needed if the group already has the patrol right)
|
— | 1.16+ |
| protect | Koruma ayarlarını değiştir ve kademeli korumalı sayfaları düzenle – edit hakkı gerekli
|
sysop | 1.5+ |
| rollback | Belirli bir sayfayı değiştiren son kullanıcının değişikliklerini hızlıca geri döndür – edit hakkı gerekli
|
sysop | 1.5+ |
| suppressionlog | Özel günlükleri görüntüle | suppress | 1.6+ |
| suppressrevision | Herhangi bir kullanıcıdan belirli sayfa düzeltmelerini görüntüle, gizle ve göster – '1.13 öncesinde bu hak hiderevision olarak adlandırıldı' – deleterevision hakkı gerekli
|
suppress | 1.6+ |
| unblockself | Kendi engellemesini kaldır – Bu olmadan, engelleme yeteneğine sahip bir hizmetli başka bir hizmetli tarafından engellenirse engellemeyi kaldıramaz | sysop | 1.17+ |
| undelete | Bir sayfanın silinmesini geri al – deletedhistory hakkı gerekli
|
sysop | 1.12+ |
| userrights | Tüm kullanıcı haklarını değiştir – tüm* grupların herhangi bir kullanıcıya atanmasına veya kaldırılmasına izin verir. * |
bureaucrat | 1.5+ |
| userrights-interwiki | Diğer vikilerdeki kullanıcıların kullanıcı haklarını değiştir – requires the userrights right
|
— | 1.12+ |
| viewmyprivateinfo | Kendi özel bilgilerini görüntüle (e-posta adresi, gerçek isim vb.) | * | 1.22+ |
| viewmywatchlist | Kendi izleme listeni görüntüle | user | 1.22+ |
| viewsuppressed | Herhangi bir kullanıcıdan gizlenen düzeltmeleri görüntüle – yani "suppressrevision" ye daha dar bir alternatif (grubun zaten $suppressrevision hakkına sahip olması durumunda buna gerek olmadığını unutmayın) | suppress | 1.24+ |
| Yönetim | |||
| deletechangetags | Veritabanından etiketleri sil – şu anda uzantılar tarafından kullanılmıyor | sysop | 1.28+ |
| import | Diğer vikilerden sayfaları içeri aktar – “transwiki” – edit hakkı gerekli
|
sysop | 1.5+ |
| importupload | Bir dosya yüklemesinden sayfaları içeri aktar – Bu hak 1.5 sürümünde ve öncesinde 'importraw' olarak adlandırıldı – edit hakkı gerekli
|
sysop | 1.5+ |
| managechangetags | Etiket oluştur ve aktif(devre dışı bırak) et – şu anda uzantılar tarafından kullanılmıyor | sysop | 1.25+ |
| renameuser | Kullanıcıları yeniden adlandır (formerly was part of the Renameuser extension) | bureaucrat | 1.40+ |
| siteadmin | Veritabanını kilitle ve kilidi aç – görüntüleme dışında web sitesi ile olan tüm etkileşimleri engeller. (varsayılan olarak mevcut değildir) | — | 1.5+ |
| unwatchedpages | İzlenmeyen sayfaların bir listesini görüntüle – hiçbir kullanıcının izleme listesinde bulunmayan sayfaları listeler | sysop | 1.6+ |
| Teknik | |||
| apihighlimits | API sorgularında yüksek sınır kullan | bot, sysop | 1.12+ |
| autoconfirmed | IP tabanlı hız limitlerinden etkilenme – 'autoconfirmed' grup için kullanılırsa, daha fazla bilgi için aşağıdaki diğer tabloya bakın (note that this is not needed if the group already has the noratelimit right)
|
autoconfirmed, bot, sysop | 1.6+ |
| bot | Otomatik bir işlem gibi muamele gör – edits and logged actions are hidden from recent changes. isteğe bağlı olarak görüntülenebilir | bot | 1.5+ |
| ipblock-exempt | IP engellemelerini atla, otomatik engelle ve aralık engellemeleri | sysop | 1.9+ |
| nominornewtalk | Kullanıcı tartışma sayfalarında yaptığı küçük değişiklikler kullanıcıya yeni mesaj bildirimiyle bildirilmez – minoredit hakkı gerekli
|
bot | 1.9+ |
| noratelimit | Derecelendirme sınırlamalarından etkilenme – Ortalama sınırları etkilemez (bu hakkın verilmesinden önce $wgRateLimitsExcludedGroups yapılandırma değişkeni bu amaçla kullanıldı)
|
sysop, bureaucrat | 1.13+ |
| override-export-depth | Sayfaları, derinlik 5'e kadar bağlantılı sayfalarla beraber, dışa aktar Bu hakla, bağlantılı sayfaların derinliğini Special:Export bağlantıda tanımlayabilirsiniz. Aksi takdirde, varsayılan olarak 0 olan değeri $wgExportMaxLinkDepth kullanılır.
|
— | 1.15+ |
| suppressredirect | Bir sayfayı taşırken eski isimden yönlendirme oluşturma – move hakkı gerekli
|
bot, sysop | 1.12+ |
Grup listesi
MediaWiki'nin en son sürümünde aşağıdaki gruplar bulunur. Eski bir sürüm kullanıyorsanız, bunlardan bazıları uygulanamayabilir.
| Grup | Açıklama | Varsayılan haklar | Sürümler |
|---|---|---|---|
| * | tüm kullanıcılar (anonim dahil). | createaccount, createpage, createtalk, edit, editmyoptions, editmyprivateinfo, read, viewmyprivateinfo | 1.5+ |
| temp | Temporary user accounts (T330816) | Similar to * group
|
1.41+ |
| user | kayıtlı hesaplar. Does not include temporary accounts. | applychangetags, changetags, createpage, createtalk, edit, editcontentmodel, editmyusercss, editmyuserjs, editmyuserjson, editmywatchlist, minoredit, move, move-categorypages, move-rootuserpages, move-subpages, movefile, purge, read, reupload, reupload-shared, sendemail, upload, viewmywatchlist | 1.13+ |
| autoconfirmed | en az $wgAutoConfirmAge kadar eski ve en az $wgAutoConfirmCount kadar düzenlemeye sahip kayıtlı hesaplar.
|
autoconfirmed, editsemiprotected | 1.6+ |
| bot | bot hakkına sahip hesaplar (otomatik komut dosyaları için tasarlanmıştır). | autoconfirmed, autopatrol, apihighlimits, bot, editsemiprotected, nominornewtalk, suppressredirect | 1.5+ |
| sysop | varsayılan olarak sayfaları silebilir ve geri yükleyebilir, kullanıcıları engelleyebilir ve engelini kaldırabilir vb. | apihighlimits, autoconfirmed, autopatrol, bigdelete, block, blockemail, browsearchive, createaccount, delete, deletedhistory, deletedtext, editinterface, editprotected, editsemiprotected, editsitejson, edituserjson, import, importupload, ipblock-exempt, managechangetags, markbotedits, mergehistory, move, move-categorypages, move-rootuserpages, move-subpages, movefile, noratelimit, patrol, protect, reupload, reupload-shared, rollback, suppressredirect, unblockself, undelete, unwatchedpages, upload | 1.5+ |
| interface-admin | site çapında CSS/JS'yi düzenleyebilen kullanıcılar. | editinterface, editsitecss, editsitejs, editsitejson, editusercss, edituserjs, edituserjson | 1.32+ |
| bureaucrat | Varsayılan olarak diğer kullanıcıların haklarını değiştirebilen ve dolayısıyla tüm vikiye tam erişime sahip olan kullanıcılar. | noratelimit, renameuser, userrights | 1.5+ |
| suppress | deletelogentry, deleterevision, hideuser, suppressionlog, suppressrevision, viewsuppressed | 1.13+ |
Önceden tanımlanmış grupları kaldırma
Kutudan çıkan MediaWiki, önceden tanımlanmış birkaç grupla birlikte gelir. Bu grupların çoğu, $wgGroupPermissions[ 'grup-adı' ] gibi dizi anahtarlarının ayarlanmasıyla kaldırılabilir. Ayrıntılar için aşağıya bakın.
Örnek
Bu örnek bürokrat grubunu tamamen ortadan kaldıracaktır. Bu değişkenlerin altısının tamamının, Special:ListGroupRights listelenmekten kaldırmak istediği herhangi bir grup için ayarlanmamasını sağlamak gerekir; ancak, yalnızca $wgGroupPermissions öğesinin ayarının kaldırılması Special:UserRights öğesinden kaldırılması için yeterli olacaktır.
unset( $wgGroupPermissions['bureaucrat'] );
unset( $wgRevokePermissions['bureaucrat'] );
unset( $wgAddGroups['bureaucrat'] );
unset( $wgRemoveGroups['bureaucrat'] );
unset( $wgGroupsAddToSelf['bureaucrat'] );
unset( $wgGroupsRemoveFromSelf['bureaucrat'] );
This code will not work if any extension that modifies the default rights for the bureaucrat group, such as Extension:AntiSpoof, is installed.
More broadly, to disable a user group created by an extension, the above code needs to run after all extensions have been registered.
This used to be possible by registering an extension function in LocalSettings.php:
$wgExtensionFunctions[] = function() use ( &$wgGroupPermissions ) {
unset( $wgGroupPermissions['oversight'] );
unset( $wgGroupPermissions['flow-bot'] );
};
However, this no longer works reliably due to T275334.
Not:
Varsayılan haklar
Varsayılan haklar MainConfigSchema.php içinde tanımlanır.
- * HEAD sürümünde varsayılan değerler:
- * En son kararlı MediaWiki sürümü REL1_45 sürümündeki varsayılan değerleri burada bulabilirsiniz:
- Ek haklar:
PermissionManager::getAllRights()komutunu çalıştırarak vikinizdeki tüm izinleri listeleyebilmeniz gerekir.
Yeni haklar ekleme
Kodlayıcılar için bilgi sadece aşağıdadır.
Çekirdeğe yeni bir hak ekliyorsanız, örneğin yeni bir özel sayfa kontrolü, PermissionManager.php, $coreRights içindeki kullanılabilir haklar listesine eklemek için zorunlu (örnek).
Bir uzantıda yapıyor iseniz, bunun yerine $wgAvailableRights kullanmanız gerekir.
Muhtemelen yukarıda açıklanan $wgGroupPermissions öğesini düzenleyerek bazı kullanıcı gruplarına atamak da istersiniz.
Bu hakkın OAuth veya bot parolaları ile harici uygulamalara erişilebilir olmasını istiyorsanız, $wgGrantPermissions düzenleyerek bunu bir hibeye eklemeniz gerekir.
// proje projectmember-powers oluştur
$wgAvailableRights[] = 'projectmember-powers';
// projectmember-powers ile the projectmember-group ekle
$wgGroupPermissions['projectmember']['projectmember-powers'] = true;
// projectmember-powers 'basic' hibeye ekleyin, böylece proje üyesi yetkilerinizi bir API isteği üzerinde kullanabiliriz
$wgGrantPermissions['basic']['projectmember-powers'] = true;
Ayrıca /languages/i18n/tr.json'a (qqq.json belgelerinde) right-[isim] ve action-[isim] arabirim iletileri eklemeniz gerekir.
right-* mesajları Special:ListGroupRights üzerinde görülebilir ve action-* mesajları, "... izniniz yok" gibi bir cümlede kullanılır.
Ayrıca bakınız
- Special:ListGroupRights – Bu yardım sayfasına bağlantılar henüz belgelenmemiş haklar içerebilir
- Yardım:Kullanıcı yetkileri ve grupları – Special:Userrights arabiriminin kullanımını açıklayan yardım sayfası (bürokratlar için)
- Manual:Setting user groups in MediaWiki – Kullanıcı gruplarının yönetimi ve atanması hakkında bilgi.
- Manual:$wgNamespaceProtection
- Manual:$wgAutopromote
- Manual:$wgAddGroups, Manual:$wgRemoveGroups
- Manual:Preventing access – Örnekler
- Manual:Establishing a hierarchy of bureaucrats
- Category:Kullanıcı hakları uzantıları – Kullanıcı haklarıyla ilgili birçok uzantı