Podręcznik:Uprawnienia użytkowników
Uprawnienia użytkownika to uprawnienia (takie jak możliwość edytowania stron lub blokowania użytkowników), które mogą być przypisane do różnych grup użytkowników. MediaWiki jest dostarczana z domyślnym zestawem praw użytkownika i grup użytkowników, ale można je dostosować. Na tej stronie wyjaśniono domyślne prawa i grupy oraz jak je dopasować.
Aby uzyskać informacje na temat dodania i usunięcia użytkowników wiki z grup, zobacz Pomoc: Prawa i grupy użytkownika i Podręcznik:Przydzielanie użytkownika do grup w MediaWiki .
Zmienianie uprawnień grup
Domyślna instalacja MediaWiki przypisuje pewne prawa do predefiniowanych grup domyślnych (patrz poniżej). Możesz zmienić domyślne prawa edytując tablicę $wgGroupPermissions w LocalSettings.php wg składni.
$wgGroupPermissions['group']['right'] = true /* lub fałszywe */;
$wgGroupPermissions
będzie ustawione na includes/DefaultSettings.php
, ale nie ma go w LocalSettings.php
. Następnie trzeba będzie go dodać do tego pliku.Jeśli członek ma wiele grup, otrzymuje wszystkie uprawnienia z każdej z grup, do których przynależy.
Wszyscy użytkownicy, w tym użytkownicy anonimowi, należą do grupy '*'
; wszyscy zarejestrowani użytkownicy należą do 'user'
grupy.
Oprócz domyślnych grup, można w sposób arbitralny tworzyć nowe grupy za pomocą tej samej tablicy.
Przykłady
W tym przykładzie zostanie wyłączone przeglądanie wszystkich stron nie wymienionych w $wgWhitelistRead , a następnie ponownie włączone tylko dla zarejestrowanych użytkowników:
$wgGroupPermissions['*']['read'] = false;
# Następująca linia nie jest konieczna, ponieważ jest w ustawieniach domyślnych. Ustawienie '*' na 'false' nie wyłącza praw dla grup, które mają prawo oddzielnie ustawione na 'true'!
$wgGroupPermissions['user']['read'] = true;
Ten przykład wyłączy edycję wszystkich stron, a następnie ponownie włączy dla użytkowników tylko z potwierdzonym adresem mailowym confirmed email addresses:
# Wyłącz dla wszystkich.
$wgGroupPermissions['*']['edit'] = false;
# Wyłącz również dla grupy 'użytkownicy' (users): domyślnie "użytkownik" ma uprawnienie do edycji, nawet jeśli "*" nie ma.
$wgGroupPermissions['user']['edit'] = false;
# Spraw, aby użytkownicy z potwierdzonymi adresami e-mail byli w grupie.
$wgAutopromote['emailconfirmed'] = APCOND_EMAILCONFIRMED;
# Ukryj grupę z listy użytkowników.
$wgImplicitGroups[] = 'emailconfirmed';
# Wreszcie, ustaw na 'true' dla właściwej grupy.
$wgGroupPermissions['emailconfirmed']['edit'] = true;
Tworzenie nowej grupy i przypisanie do niej uprawnień
Możesz tworzyć nowe grupy użytkowników, definiując uprawnienia dla odpowiedniej nazwy grupy w $wgGroupPermissions[ ' nazwa-grupy' ]
gdzie nazwa-grupy jest rzeczywistą nazwą grupy.
Oprócz przypisania uprawnień, należy utworzyć te trzy strony wiki z odpowiednią treścią:
- MediaWiki:Group-<group-name> (content:
Nazwa< grupy/code>)
- MediaWiki:Group-<group-name>-member (content:
Nazwa członka grupy
) - MediaWiki:Grouppage-<group-name> (content:
Nazwa strony grupy
)
Domyślnie członkowie grupy Biurokraci mogą dodawać użytkowników do każdej grupy lub usunąć je z niej.
Jeśli jednak używasz Podręcznik:$wgAddGroups i Podręcznik:$wgRemoveGroups , może być konieczne, abyś zamiast tego je dostosował.
Przykłady
W tym przykładzie zostanie utworzona arbitralna grupa "projektmember", która może blokować użytkowników i usunąć strony, a których edycje są ukryte domyślnie w dzienniku ostatnich zmian:
$wgGroupPermissions['projectmember']['bot'] = true;
$wgGroupPermissions['projectmember']['block'] = true;
$wgGroupPermissions['projectmember']['delete'] = true;
Nazwa grupy nie może zawierać spacji, więc użyj 'random-group'
lub 'random_group'
zamiast 'random group'
. Ponadto zaleca się używanie tylko liter małych liter do tworzenia nazwy grupy.
W tym przykładzie, prawdopodobnie chciałbyś również stworzyć te strony:
- MediaWiki:Group-projectmember (content:
Członkowie projaktu
)
- MediaWiki:Group-projectmember-member (content:
Członek projektu
)
- MediaWiki:Grouppage-projectmember (content:
Członkowie projektu
)
Zapewni to, że grupa będzie określana jako "Członkowie projektu" w całym interfejsie, a członek będzie określany jako "Członek projektu", a przeglądy połączą nazwę grupy zProject:Członkowie projektu.
Przykład ten domyślnie wyłącza dostęp do pisania (redagowania i tworzenia stron), tworzy grupę o nazwie "writer" i przyznaje jej dostęp do pisanie. Użytkownicy mogą być ręcznie dodani do tej grupy za pośrednictwem Special:UserRights:
$wgGroupPermissions['*']['edit'] = false;
$wgGroupPermissions['*']['createpage'] = false;
$wgGroupPermissions['user']['edit'] = false;
$wgGroupPermissions['user']['createpage'] = false;
$wgGroupPermissions['writer']['edit'] = true;
$wgGroupPermissions['writer']['createpage'] = true;
W tym przykładzie, prawdopodobnie chciałbyś również stworzyć te strony:
- MediaWiki:Group-writer (content:
Writers
)
- MediaWiki:Group-writer-member (content:
Writer
)
- MediaWiki:Grouppage-writer (content:
Project:Write
)
Usuwanie predefiniowanych grup
MediaWiki domyślnie jest dostarczana z szeregiem grup z predefiniowanych.
Większość z tych grup można usunąć, usuwając odpowiednie klucze tablicy, między innymi $wgGroupPermissions[ '<group-name>' ].
Szczegóły: patrz poniżej.
Przykład
Ten przykład całkowicie eliminuje grupę 'biurokratów'.
Należy upewnić się, że każda z tych sześciu zmiennych jest wyłączona dla każdej grupy, którą chcemy usunąć z listy w Special:ListGroupRights; jednakże wystarczy po prostu wyłączyć ustawienie $wgGroupPermissions, aby usunąć ją z Special:UserRights.
Kod ten powinien być umieszczony po każdej linii require_once
, która doda rozszerzenia, takie jak Extension:AntiSpoof , zawierający kod, który daje biurokratom domyślne uprawnienia do grupy.
unset( $wgGroupPermissions['bureaucrat'] );
unset( $wgRevokePermissions['bureaucrat'] );
unset( $wgAddGroups['bureaucrat'] );
unset( $wgRemoveGroups['bureaucrat'] );
unset( $wgGroupsAddToSelf['bureaucrat'] );
unset( $wgGroupsRemoveFromSelf['bureaucrat'] );
W niektórych rozszerzeniach (Flow, Semantic MediaWiki itp.), prawa są dodane podczas rejestracji rozszerzenia lub w funkcji rejestracja. W tym przypadku może być konieczne użycie funkcji rejestracji w LocalSettings.php
do usunięcia niektórych z góry zdefiniowanych grup użytkowników:
$wgExtensionFunctions[] = function() use ( &$wgGroupPermissions ) {
unset( $wgGroupPermissions['oversight'] );
unset( $wgGroupPermissions['flow-bot'] );
};
Uwaga na temat grupy o nazwie "user" - "użytkownik"
Za pomocą powyższego mechanizmu możesz usunąć grupy sysop, biurokrata i bot, które - jeśli są używane - mogą być przypisane za pomocą zwykłego user permission system.
Jednak obecnie nie można usunąć grupy user
.
Ta grupa nie jest przypisana przez zwykły system uprawnień.
Zamiast tego każdy zalogowany użytkownik automatycznie jest członkiem tej grupy.
Jest to zakodowane na stałe w MediaWiki i obecnie nie można go łatwo zmienić.
Lista uprawnień
W najnowszej wersji MediaWiki dostępne są następujące uprawnienia użytkownika.
Jeśli używasz starszej wersji, sprawdź Special:Version na swoim wiki i sprawdź, czy twoja wersja jest objęta kolumną "Wersje".
Uprawnienie
Opis
Grupy użytkowników, które mają to prawo przyznane domyślnie
Wersje
Czytanie
read
Czytanie treści stron - w przypadku ustawienia na false , nadpisanie dla określonych stron z $WhiteListRead
*, user
1.5+
Edytowanie
applychangetags
Wprowadzanie znaczników wraz z własnymi zmianami - wymagane uprawnienie edit
user
1.25+
autocreateaccount
Automatyczne logowanie za pomocą zewnętrznego konta użytkownika - bardziej ograniczona wersja createaccount
—
1.27+
createaccount
Tworzenie nowych kont użytkowników - register / registration
*, sysop
1.5+
createpage
Tworzenie stron (niebędących stronami dyskusji) - wymagane uprawnienie edit
*, user
1.6+
createtalk
Tworzenie stron dyskusji - wymagane uprawnienie edit
*, user
1.6+
delete-redirect
Usuwanie przekierowań bez historii zmian (zwróć uwagę, że nie jest to konieczne, jeśli grupa ma już prawo do delete
)
—
1.36+
edit
Edycja stron
*, user
1.5+
editsemiprotected
Edycja stron zabezpieczonych na poziomie „Allow only autoconfirmed users” - bez ochrony w kaskadzie - requires the edit right
autoconfirmed, bot, sysop
1.22+
editprotected
Edycja stron zabezpieczonych na poziomie „Allow only administrators” - bez ochrony w kaskadzie - requires the edit right
sysop
1.13+
minoredit
Oznaczanie edycji jako drobnych - wymagane uprawnienie edit
user
1.6+
move
Przenoszenie stron - wymagane uprawnienie edit
user, sysop
1.5+
move-categorypages
Przenoszenie stron kategorii - wymagane uprawnienie move
user, sysop
1.25+
move-rootuserpages
Przenoszenie głównych stron użytkowników - wymagane uprawnienie move
user, sysop
1.14+
move-subpages
Przenoszenie stron razem z ich podstronami - wymagane uprawnienie move
user, sysop
1.13+
movefile
Przenoszenie plików - wymaga uprawnienia move
oraz $wgAllowImageMoving ustawione na true
user, sysop
1.14+
reupload
Nadpisywanie istniejącego pliku - wymagane uprawnienie upload
user, sysop
1.6+
reupload-own
Nadpisywanie wcześniej przesłanego pliku - wymaga prawa upload
(uwaga: nie jest to konieczne, jeśli grupa ma już prawo reupload)
—
1.11+
reupload-shared
Lokalne nadpisywanie pliku istniejącego w repozytorium mediów - (jeśli jest to ustawione) z lokalnymi plikami wymagane uprawnienie upload
user, sysop
1.6+
sendemail
Wysyłanie e‐maili do innych użytkowników
user
1.16+
upload
Przesyłanie plików na serwer - wymaga uprawnienia edit
oraz $wgEnableUploads ustawionego na true
user, sysop
1.5+
upload_by_url
Przesyłanie plików z adresu URL - wymagane uprawnienie upload
(Przed 1.20 przypisane do do grupy sysops)
—
1.8+
Zarządzanie
bigdelete
Usuwanie stron z długą historią edycji (określone przez $wgDeleteRevisionsLimit ) - wymagane uprawnienie delete
sysop
1.12+
block
Blokowanie i odblokowywanie użytkownikom możliwości edycji - Opcje blokowania obejmują uniemożliwianie edytowania i rejestrowania nowych kont oraz automatyczne blokowanie innych użytkowników pod tym samym adresem IP
sysop
1.5+
blockemail
Blokowanie lub odblokowywanie użytkownikom możliwości wysyłania wiadomości - pozwala na uniemożliwienie korzystania z interfejsu Special:Emailuser podczas blokowania - wymaga prawa block'
sysop
1.11+
browsearchive
Przeszukiwanie usuniętych stron - przez Special:Undelete - wymagane uprawnienie deletedhistory
sysop
1.13+
changetags
Dodawanie i usuwanie dowolnych znaczników z poszczególnych wersji i wpisów w rejestrze - obecnie nieużywane przez rozszerzenia
user
1.25+
delete
Usuwanie stron 1.5–1.11: pozwala na usuwanie lub przywracanie stron.
1.12+: pozwala na usuwanie stron. W przypadku przywracania, teraz jest prawo 'undelete', patrz poniżej
sysop
1.5+
deletedhistory
Podgląd usuniętych wersji bez przypisanego im tekstu
sysop
1.6+
deletedtext
Podgląd usuniętego tekstu i zmian pomiędzy usuniętymi wersjami
sysop
deletelogentry
Usuwanie i przywracanie wpisów rejestru - pozwala na usunięcie/przywrócenie informacji (tekstu akcji, podsumowania, użytkownika, który wykonał akcję) określonych wpisów w dzienniku - wymaga prawa deleterevision
suppress
1.20+
deleterevision
Usuwanie i odtwarzanie określonej wersji strony - umożliwia usunięcie/wymazanie informacji (tekstu rewizji, podsumowania edycji, użytkownika, który dokonał edycji) dotyczących określonych rewizji Rozdzielone na prawa deleterevision and deletelogentry w wersji 1.20
suppress
1.6+
editcontentmodel
Edycja modelu zawartości strony - wymagane uprawnienie edit
user
1.23.7+
editinterface
Edycja interfejsu użytkownika - zawiera interface messages. W celu edycji w całej witrynie CSS/JSON/JS istnieją już teraz osobne prawa, patrz poniżej. - wymagane uprawnienie edit
sysop, interface-admin
1.5+
editmyoptions
Edycja swoich preferencji
*
1.22+
editmyprivateinfo
Edycja swoich prywatnych danych (np. adres e-mail, prawdziwe imię i nazwisko) i wysyłanie wiadomości e-mail resetujących hasło - ukrywa również "Zmień hasło", ale nie inne sposoby zmiany hasła - wymagane uprawnienie viewmyprivateinfo
*
1.22+
editmyusercss
Edycja własnych plików CSS - przed wersją 1.31 zostało przypisane grupie 'wszyscy' (tj. "*") (zauważ, że nie jest to konieczne, jeśli grupa ma już prawo editusercss) - wymagane uprawnienie edit
user
1.22+
editmyuserjs
Edycja własnych plików JavaScript - przed 1.31 został przydzielony wszystkim (tj. "*") (obiecaj, że nie jest to konieczne, jeśli grupa ma już prawo edituserjs) - wymagane uprawnienie edit
user
1.22+
editmyuserjsredirect
Edycja własnych plików JavaScript będących przekierowaniami (zwróć uwagę, że nie jest to konieczne, jeśli grupa posiada już prawo edituserjs) - wymagane uprawnienie edit
—
1.34+
editmyuserjson
Edycja własnych plików JSON (należy pamiętać, że nie jest to konieczne, jeśli grupa ma już prawo edituserjson). - wymagane uprawnienie edit
user
1.31+
editmywatchlist
Edycja swojej listy obserwowanych stron (niektóre akcje mogą dodawać strony do obserwowanych bez tego uprawnienia) - wymaga prawa viewmywatchlist
*
1.22+
editsitecss
Edycja plików CSS projektu - wymagane uprawnienie editinterface
interface-admin
1.32+
editsitejs
Edycja plików JavaScript projektu - wymagane uprawnienie editinterface
interface-admin
1.32+
editsitejson
Edycja plików JSON projektu - wymagane uprawnienie editinterface
sysop, interface-admin
1.32+
editusercss
Edycja plików CSS innych użytkowników - wymagane uprawnienie edit
interface-admin
1.16+
edituserjs
Edycja plików JavaScript innych użytkowników - wymagane uprawnienie edit
interface-admin
1.16+
edituserjson
Edycja plików JSON innych użytkowników - wymagane uprawnienie edit
sysop, interface-admin
1.31+
hideuser
Blokowanie i odblokowywanie użytkownika i ukrywanie lub pokazywanie tego faktu w widoku publicznym - Wypłaty można wyłączyć tylko użytkowników z 1000 edycjami lub mniej - wymagane uprawnienie block
Użyj $wgHideUserContribLimit
, aby wyłączyć.
suppress
1.10+
markbotedits
Oznaczanie rewertu jako edycji bota - zobacz Manual:Rollback - wymagane uprawnienie rollback
sysop
1.12+
mergehistory
Łączenie historii edycji stron - wymagane uprawnienie edit
sysop
1.12+
pagelang
Zmiana języka strony - $wgPageLanguageUseDB musi być prawdziwe
—
1.24+
patrol
Oznaczanie edycji jako „sprawdzone” - $wgUseRCPatrol musi być prawdziwe
sysop
1.5+
patrolmarks
Podgląd znaczników patrolowania ostatnich zmian – oznaczania jako „sprawdzone”
—
1.16+
protect
Zmiana ustawień zabezpieczeń i edycja stron zabezpieczonych kaskadowo - wymagane uprawnienie edit
sysop
1.5+
rollback
Szybkie wycofywanie zmian wprowadzonych przez użytkownika, który jako ostatni edytował stronę - wymagane uprawnienie edit
sysop
1.5+
suppressionlog
Podgląd rejestrów prywatnych
suppress
1.6+
suppressrevision
Podgląd, ukrywanie i odkrywanie wersji ukrytych przed wszystkimi - Przed 1.13 to prawo nazywało się hiderevision - wymagane uprawnienie deleterevision
suppress
1.6+
unblockself
Odblokowanie samego siebie - Bez niego administrator, który ma możliwość blokowania, nie może się odblokować, jeśli został zablokowany przez innego administratora
sysop
1.17+
undelete
Odtwarzanie usuniętych stron - wymagane uprawnienie deletedhistory
sysop
1.12+
userrights
Edycja uprawnień użytkowników - umożliwia przypisanie lub usunięcie wszystkich grup (*) do każdego użytkownika.
(*) Z $wgAddGroups i $wgRemoveGroups można ustawić możliwość dodawania/usunięcia niektórych grup zamiast wszystkich
bureaucrat
1.5+
userrights-interwiki
Edycja uprawnień użytkowników na innych witrynach wiki - requires the userrights right
—
1.12+
viewmyprivateinfo
Podgląd swoich prywatnych danych (np. adres e-mail, prawdziwe imię i nazwisko)
*
1.22+
viewmywatchlist
Podgląd swojej listy obserwowanych stron
*
1.22+
viewsuppressed
Podgląd wersji ukrytych przed każdym użytkownikiem - tj. wąskiej alternatywy dla "suppressrevision" (zwróć uwagę, że nie jest to konieczne, jeśli grupa ma już prawo $suppressrevition)
suppress
1.24+
Administrowanie
autopatrol
Automatyczne oznaczanie własnych edycji jako „sprawdzone” - $wgUseRCPatrol musi być prawdziwe
bot, sysop
1.9+
deletechangetags
Usuwanie znaczników z bazy danych - obecnie nieużywane przez rozszerzenia
sysop
1.28+
import
Importowanie stron z innych wiki - "transwiki [jak na drodze] - wymagane uprawnienie edit
sysop
1.5+
importupload
Importowanie stron poprzez przesłanie pliku - Prawo to zostało nazwane 'importraw' w wersji 1.5 i przed nią. - wymagane uprawnienie edit
sysop
1.5+
managechangetags
Tworzenie i (dez)aktywowanie znaczników - obecnie nieużywane przez rozszerzenia
sysop
1.25+
siteadmin
Blokowanie i odblokowywanie bazy danych - który blokuje wszelkie interakcje z witryną, z wyjątkiem przeglądania. (nie jest dostępna domyślnie)
—
1.5+
unwatchedpages
Podgląd listy stron nieobserwowanych - wykazuje strony, które żaden użytkownik nie wykazał na liście obserwacyjnej
sysop
1.6+
Techniczne
apihighlimits
Zwiększony limit w zapytaniach wykonywanych poprzez interfejs API
bot, sysop
1.12+
autoconfirmed
Wyłączenie z ograniczeń przepustowości nałożonych na IP - stosowane w grupie 'autoconfirmed', więcej informacji można uzyskać w poniższej tabeli (note that this is not needed if the group already has the noratelimit right)
autoconfirmed, bot, sysop
1.6+
bot
Oznaczanie edycji jako wykonanych automatycznie - opcjonalnie można je oglądać
bot
1.5+
ipblock-exempt
Obejście blokad adresów IP, automatycznych blokad i blokad zakresów adresów IP
sysop
1.9+
nominornewtalk
Drobne zmiany na stronach dyskusji użytkowników nie włączają powiadomienia o nowej wiadomości - wymagane uprawnienie minoredit
bot
1.9+
noratelimit
Brak ograniczeń przepustowości - nie ma wpływu na limity szybkości (Przed wprowadzeniem tego prawa, zmienna konfiguracyjna $wgRateLimitsExcludedGroups była używana do tego celu)
sysop, bureaucrat
1.13+
override-export-depth
Eksport stron wraz z linkowanymi do głębokości 5 linków
Z tej prawej strony można określić głębokość powiązanych stron w Special:Export. W przeciwnym razie użyje się wartości $wgExportMaxLinkDepth , która jest domyślnie 0 .
—
?
suppressredirect
Przenoszenie stron bez tworzenia przekierowania w miejscu starej nazwy - wymagane uprawnienie move
bot, sysop
1.12+
Chociaż wszystkie te uprawnienia kontrolują oddzielne rzeczy, czasami do wykonania określonych działań potrzeba wielu uprawnień. Na przykład pozwalając ludziom edytować, ale nie czytać stron nie ma sensu, ponieważ w celu edytowania strony musisz najpierw być w stanie je przeczytać (założąc, że nie są one dopuszczone). Pozwolenie na przesyłanie, ale nie edycję nie ma sensu, ponieważ aby przesłać obraz, musisz w sposób automatyczny utworzyć stronę opisu obrazu itp.
Lista grup
W najnowszej wersji MediaWiki dostępne są następujące uprawnienia użytkownika.
Jeśli używasz starszej wersji, niektóre z nich mogą nie być zaimplantowane.
Grupa
Opis
Prawa domyślne
Wersje
*
wszystkich użytkowników (w tym anonimowych).
createaccount, createpage, createtalk, edit, editmyoptions, editmyprivateinfo, editmywatchlist, read, viewmyprivateinfo, viewmywatchlist, writeapi
1.5+
temp
Temporary user accounts (T330816)
Similar to * group
1.41+
user
konta zarejestrowane.
applychangetags, changetags, createpage, createtalk, edit, editcontentmodel, editmyusercss, editmyuserjs, editmyuserjson, minoredit, move, move-categorypages, move-rootuserpages, move-subpages, movefile, purge, read, reupload, reupload-shared, sendemail, upload, writeapi
autoconfirmed
zarejestrowane konta trwają przez minimalny okres ustawiony w $wgAutoConfirmAge i które mają co najmniej tyle edycji, ile $OutoConfirmsCount.
autoconfirmed, editsemiprotected
1.6+
bot
konta z uprawnieniem bot (przeznaczone dla skryptów automatycznych).
autoconfirmed, autopatrol, apihighlimits, bot, editsemiprotected, nominornewtalk, suppressredirect, writeapi
1.5+
sysop
Użytkownicy, którzy domyślnie mogą usunąć i przywrócić strony, zablokować i odblokować użytkowników itp.
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
Użytkownicy, którzy mogą edytować CSS/JS w całej witrynie.
editinterface, editsitecss, editsitejs, editsitejson, editusercss, edituserjs, edituserjson
1.32+
bureaucrat
użytkownicy, którzy domyślnie mogą zmienić prawa innych użytkowników.
noratelimit, userrights
1.5+
suppress
deletelogentry, deleterevision, hideuser, suppressionlog, suppressrevision, viewsuppressed
W MW 1.12, można utworzyć własne grupy, do których użytkownicy są automatycznie promowani (jak w przypadku automatycznego potwierdzenia i e-mail) za pomocą $wgAutopromote .
Możesz nawet stworzyć dowolną grupę, przypisując im prawa.
Domyślne prawa
Domyślne prawa są zdefiniowane w MainConfigSchema.php .
- Domyślne wartości w wersji HEAD: https://phabricator.wikimedia.org/diffusion/MW/browse/master/includes/MainConfigSchema.php
- Domyślne wartości w najnowszym stabilnym wydaniu MediaWiki, wersji 1.42, są dostępne tutaj: https://phabricator.wikimedia.org/diffusion/MW/browse/REL1_42/includes/MainConfigSchema.php
- Dodatkowe uprawnienia: powinieneś mieć możliwość wylistowania wszystkich dostępnych uprawnień w swojej wiki poprzez uruchomienie
User::getAllRights()
.
Dodawanie nowych uprawnień
Informacje tylko dla koderów są tylko następujące.
Jeżeli dodajesz nowe uprawnienie w jądrze, np. control a new special page, jesteś zobowiązany dodać je do listy dostępnych prawa w PermissionManager.php , $coreRights
(example).
Jeżeli zaś robisz to w rozszerzeniu , powinieneś zamiast tego użyć $wgAvailableRights .
Prawdopodobnie chcesz również przypisać je niektórym grupom użytkowników poprzez edycję $wgGroupPermissions opisanych powyżej.
Jeśli chcesz, aby to prawo było dostępne dla zewnętrznych aplikacji za pomocą OAuth lub haseł botów, musisz dodać je do grantu, edytując $wgGrantPermissions .
// create projectmember-powers right
$wgAvailableRights[] = 'projectmember-powers';
// dołączenie uprawnień członka projektu do grupy członka projektu
$wgGroupPermissions['projectmember']['projectmember-powers'] = true;
// Dodać uprawnienia członka projektu do 'podstawowej' dotacji, abyśmy mogli wykorzystać uprawnienia członkowski projektu w odniesieniu do wniosku API
$wgGrantPermissions['basic']['projectmember-powers'] = true;
Musisz także dodać komunikaty interfejsu right-[name]
i action-[name]
do /languages/i18n/en.json (z dokumentacją w qqq.json).
Komunikaty right-* można zobaczyć na Special:ListGroupRights a wiadomości action-* używane są w zdaniach takich jak "Nie masz zezwolenia na ...".
Zobacz też
- Special:ListGroupRights – linki do tej strony pomocy mogą zawierać nieudokumentowane prawa
- Pomoc: Prawa i grupy użytkownika – strona pomocy opisująca użycie interfejsu Special:Userrights (dla grupy biurokratów)
- Podręcznik:Przydzielanie użytkownika do grup w MediaWiki – informacje o zarządzaniu grupami użytkowników i przypisywaniu do nich.
- Podręcznik:$wgNamespaceProtection
- Podręcznik:$wgAutopromote
- Podręcznik:$wgAddGroups , Podręcznik:$wgRemoveGroups
- Manual:Preventing access – przykłady
- Manual:Establishing a hierarchy of bureaucrats
- Kategoria:Rozszerzenia praw użytkowników – Wiele rozszerzeń dotyczących praw użytkowników