Jump to content

Manual:Hak pengguna

From mediawiki.org
This page is a translated version of the page Manual:User rights and the translation is 100% complete.

Hak pengguna adalah hak akses dan kemampuan spesifik (seperti kemampuan menyunting laman atau memblokir pengguna) yang dapat diberikan pada kelompok pengguna tertentu. MediaWiki dikirim dengan seperangkat hak pengguna dan kolompok pengguna standar, tapi ini bisa diubahsuaikan. Halaman ini menjelaskan hak dan kelompok standar serta cara mengubahsuaikan mereka.

Untuk informasi mengenai cara memasukkan dan mengeluarkan pengguna wiki tertentu dari suatu kelompok lihat Bantuan:Hak dan kelompok pengguna dan Manual:Menyetel grup pengguna di MediaWiki .

Mengganti hak kelompok

Instalasi MediaWiki bawaan menetapkan hak tertentu untuk kelompok bawaan (lihat di bawah). Anda dapat mengganti hak bawaan dengan mengubah larik $wgGroupPermissions pada LocalSettings.php dengan sintaks yang telah di tentukan.

$wgGroupPermissions['group']['right'] = true /* atau false */;
Pada instalasi bawaan $wgGroupPermissions akan diatur di dalam includes/DefaultSettings.php, tetapi "tidak" terdapat di $LocalSettings. Selanjutnya anda harus menambahkannya di file tersebut.

Jika member memiliki beberapa kelompok, mereka akan mendapatkan seluruh izin pada setiap kelompok dimana mereka berada. Semua pengguna, termasuk pengguna anonim, berada dalam kelompok '*'; semua pengguna terdaftar berada dalam kelompok 'user'. Sebagai tambahan untuk kelompok bawaan, kamu dapat membuat kelompok baru menggunakan larik yang sama.

Contoh

Contoh beriku akan menonaktifkan izin melihat untuk setiap halaman jika tidak terdapat dalam $wgWhitelistRead , lalu hanya mengaktifkan ulang pengguna terdaftar:

$wgGroupPermissions['*']['read'] = false;
# Baris berikut tidaklah penting, karna merupakan bawan. Pengaturan '*' menjadi false tidak menonaktifkan hak untuk group yang memiliki hak terpisah menjadi true.
$wgGroupPermissions['user']['read'] = true;

Contoh berikut akan menonaktifkan perubahan pada seluruh halaman, lalu diaktifkan kembali hanya untuk pengguna dengan alamat surel yang telah di konfirmasi.

# Nonaktifkan untuk semua orang.
$wgGroupPermissions['*']['edit'] = false;
# Nonaktifkan untuk pengguna dan secara bawaan 'user' di izinkan untuk merubah, meskipun '*' tidak.
$wgGroupPermissions['user']['edit'] = false;
# Buat pengguna dengan alamat surel yang dikonfirmasi masuk ke dalam kelompok.
$wgAutopromote['emailconfirmed'] = APCOND_EMAILCONFIRMED;
# Sembunyikan kelompok dari daftar pengguna.
$wgImplicitGroups[] = 'emailconfirmed';
# Terakhir, tetapkan menjadi true untuk kelompok yang diinginkan.
$wgGroupPermissions['emailconfirmed']['edit'] = true;

Membuat kelompok baru dan menetapkan izin untuknya

Anda bisa membuat kelompok pengguna baru dengan mendefinisikan izin untuk nama kelompok tersebut dalam $wgGroupPermissions[ 'group-name' ] di mana <group-name> adalah nama sebenarnya dari kelompok tersebut.

Selain memberikan hak izin, Anda sebaiknya membuat tiga halaman wiki dengan isi yang sesuai:

  • MediaWiki:Group-<group-name> (isi: Nama kelompok)
  • MediaWiki:Group-<group-name>-member (isi: Nama anggota kelompok)
  • MediaWiki:Grouppage-<group-name> (isi: Nama laman kelompok)

Secara bawaan, birokrat bisa menambahkan pengguna ke, atau menghapus mereka dari, kelompok manapun. Namun, jika Anda menggunakan Manual:$wgAddGroups dan Manual:$wgRemoveGroups , Anda mungkin harus mengubahsuaikan itu.

Contoh

Ini akan membuat suatu kelompok "projectmember" yang bisa memblokir pengguna dan menghapus halaman, dan suntingannya disembunyikan secara default di log perubahan terbaru:

$wgGroupPermissions['projectmember']['bot'] = true;
$wgGroupPermissions['projectmember']['block'] = true;
$wgGroupPermissions['projectmember']['delete'] = true;
Nama grup tidak boleh mengandung spasi, jadi gunakan 'random-group' atau 'random_group', bukan 'random group'. Selain itu disarankan untuk hanya menggunakan huruf kecil ketika membuat kelompok.

Dalam contoh ini, Anda mungkin juga ingin membuat laman-laman berikut:

  • MediaWiki:Group-projectmember (isi: Anggota proyek)
  • MediaWiki:Group-projectmember-member (isi: Anggota proyek)
  • MediaWiki:Grouppage-projectmember (isi: Project:Anggota Proyek)

Ini akan membuat kelompok tersebut disebut sebagai "Anggota proyek" diseluruh antarmuka, dan seorang anggotanya akan disebut sebagai "Anggota proyek", dan pemeriksaan akan menghubungkan nama kelompok ke pranala Project:Anggota Proyek.

Contoh ini mematikan hak akses menulis (menyunting dan membuat laman) secara default, membuat sebuah kelompok bernama "Tulis", dan memberi kelompok tersebut hak menulis. Pengguna bisa dimasukkan secara manual ke kelompok ini melalui Special:UserRights:

$wgGroupPermissions['*']['edit'] = false;
$wgGroupPermissions['*']['createpage'] = false;
$wgGroupPermissions['user']['edit'] = false;
$wgGroupPermissions['user']['createpage'] = false;
$wgGroupPermissions['writer']['edit'] = true;
$wgGroupPermissions['writer']['createpage'] = true;

Dalam contoh ini, Anda mungkin juga ingin membuat laman-laman berikut:

  • MediaWiki:Group-writer (isi: Penulis)
  • MediaWiki:Group-writer-member (isi: Penulis)
  • MediaWiki:Grouppage-writer (isi: Project:Tulis)

Menghapus kelompok yang sudah didefinisikan

MediaWiki secara bawaan memiliki beberapa kelompok yang sudah didefinisikan. Kebanyakan dari grup tersebut bisa dihapus dengan mematikan kunci larik yang sesuai, di antaranya $wgGroupPermissions[ '<nama-kelompok>' ]. Untuk keterangan lebih lanjut, lihat di bawah.

Contoh

Contoh ini akan menghapus kelompok birokrat. Perlu dipastikan bahwa keenam variabel berikut telah dimatikan untuk grup yang ingin dihapus dari daftar di Special:ListGroupRights; namun, mematikan $wgGroupPermissions cukup untuk menghapusnya dari Special:UserRights. Kode ini harus ditempatkan setelah setiap baris $ 1 yang menambahkan ekstensi, seperti $ 2 yang berisi kode yang memberikan izin kelompok birokrat secara default.

unset( $wgGroupPermissions['bureaucrat'] );
unset( $wgRevokePermissions['bureaucrat'] );
unset( $wgAddGroups['bureaucrat'] );
unset( $wgRemoveGroups['bureaucrat'] );
unset( $wgGroupsAddToSelf['bureaucrat'] );
unset( $wgGroupsRemoveFromSelf['bureaucrat'] );

Dalam beberapa ekstensi (Flow, Semantic MediaWiki, dll.), hak akses diberikan ketika registrasi ekstensi atau dalam sebuah fungsi registrasi. Dalam kasus ini, perlu digunakan sebuah fungsi registrasi dalam LocalSettings.php untuk menghapus beberapa kelompok pengguna yang sudah didefinisikan.

$wgExtensionFunctions[] = function() use ( &$wgGroupPermissions ) {
    unset( $wgGroupPermissions['oversight'] );
    unset( $wgGroupPermissions['flow-bot'] );
};


Catatan mengenai kelompok yang bernama "user"

Dengan mekanisme di atas, Anda bisa menghapus kelompok pengurus, birokrat, dan bot, yang—jika digunakan—bisa diberikan melalui sistem perizinan pengguna. Namun, untuk saat ini tidak mungkin menghapus kelompok user. Kelompok ini tidak diberikan melalui sistem perizinan yang biasa. Melainkan, setiap pengguna yang masuk log secara otomatis merupakan anggota kelompok tersebut. Ini ditetapkan dalam MediaWiki dan untuk saat ini tidak bisa diubah dengan mudah.

Daftar hak

Hak berikut tersedia dalam versi mutakhir dari MediaWiki. Jika Anda menggunakan versi yang lebih tua, lihat Special:Version di wiki Anda dan lihat apakah versi Anda tercakup dalam kolom "Versi".

Hak Deskripsi Kelompok pengguna yang memiliki hak secara default Versi
Bahan bacaan
read Membaca halaman - ketika diatur menjadi false, diabaikan untuk halaman tertentu dengan $wgWhitelistRead
Peringatan Peringatan Setting the user right read (allow viewing pages) to false will only protect wiki (article, talk, ...) pages, but uploaded files (images, files, docs... in the $wgUploadPath subdirectories) will always remain readable via direct access by default.
Use the information from Manual:Image authorization and img_auth.php pages when you have the need to restrict image views and file download access to only logged-in users.
*, user 1.5+
Penyuntingan
applychangetags Terapkan tags bersamaan dengan perubahan pengguna - membutuhkan hak edit user 1.25+
autocreateaccount Masuk log otomatis dengan akun pengguna luar - Sebuah versi terbatas untuk "createaccount" 1.27+
createaccount Membuat akun baru - register / registration *, sysop 1.5+
createpage Membuat halaman baru (yang bukan halaman pembicaraan) - Memerlukan hak edit *, user 1.6+
createtalk Membuat halaman pembicaraan - Memerlukan hak edit *, user 1.6+
delete-redirect Menghapus pengalihan satu revisi (perhatikan bahwa ini tidak diperlukan apabila kelompokya sudah memiliki hak delete) 1.36+
edit Sunting halaman *, user 1.5+
editsemiprotected Menyunting halaman yang dilindungi sebagai "Allow only autoconfirmed users" - tanpa perlindungan di bawah - requires the edit right autoconfirmed, bot, sysop 1.22+
editprotected Menyunting halaman yang dilindungi sebagai "Allow only administrators" - tanpa perlindungan di bawah - requires the edit right sysop 1.13+
minoredit Menandai suntingan sebagai minor - Memerlukan hak edit user 1.6+
move Memindahkan halaman - Memerlukan hak edit user, sysop 1.5+
move-categorypages Pindahkan halaman kategori - memerlukan hak move user, sysop 1.25+
move-rootuserpages Memindahkan halaman utama pengguna - Memerlukan hak move user, sysop 1.14+
move-subpages Memindahkan halaman dengan seluruh subhalamannya - Memerlukan hak move user, sysop 1.13+
movefile Memindahkan berkas - Memerlukan hak move dan $wgAllowImageMoving menjadi true user, sysop 1.14+
reupload Menimpa berkas yang sudah ada - Memerlukan hak upload user, sysop 1.6+
reupload-own Menimpa berkas yang sudah ada yang dimuat oleh pengguna yang sama - memerlukan hak upload (perhatikan bahwa ini tidak diperlukan apabila kelompoknya sudah memiliki hak reupload) 1.11+
reupload-shared Menolak berkas-berkas pada penyimpanan media lokal bersama - (jika ditetapkan) dengan berkas lokal (memerlukan hak upload) user, sysop 1.6+
sendemail Mengirim surel ke pengguna lain user 1.16+
upload Memuat berkas - memerlukan hak edit dan $wgEnableUploads diatur menjadi true user, sysop 1.5+
upload_by_url Memuatkan berkas dari sebuah alamat URL - memerlukan hak upload (sebelum 1.20 diberikan kepada pengurus) 1.8+
Pengelolaan
bigdelete Menghapus halaman dengan banyak versi terdahulu (sebagaimana ditentukan oleh $wgDeleteRevisionsLimit ) - memerlukan hak delete sysop 1.12+
block Blokir atau buka blokir pengguna lain dari penyuntingan - pilihan pemblokiran termasuk mencegah penyuntingan dan mendaftarkan akun beru, dan pemblokiran otomatis pengguna lain pada alamat IP yang sama sysop 1.5+
blockemail Blokir atau buka blokir pengguna dari mengirimkan surel - memungkinkan pencegahan penggunaan antarmuka Special:Emailuser saat memblokir - memerlukan hak blok sysop 1.11+
browsearchive Mencari halaman yang telah dihapus - melalui Special:Undelete - memerlukan hak deletedhistory sysop 1.13+
changetags Tambah dan hapus tag arbitrari pada revisi masing-masing dan entri log - saat ini tidak dipakai oleh ekstensi user 1.25+
delete Menghapus halaman 1.5–1.11: mengizinkan penghapusan atau pengembalian halaman.
1.12+: mengizinkan penghapusan halaman. Untuk pengembalian, terdapat hak 'undelete', lihat di bawah
sysop 1.5+
deletedhistory Melihat entri-entri revisi yang dihapus, tanpa teks yang berhubungan sysop 1.6+
deletedtext Melihat teks yang dihapus dan perubahan antara revisi yang dihapus sysop
deletelogentry Menghapus dan membatalkan penghapusan entri log tertentu - mengizinkan menghapus/mengembalikan informasi (teks tindakan, ringkasan, pengguna yang melakukan tindakan) dari entri log tertentu—memerlukan hak deleterevision suppress 1.20+
deleterevision Menghapus dan membatalkan penghapusan revisi tertentu suatu halaman - mengizinkan menghapus/mengembalikan informasi (teks revisi, ringkasan penyuntingan, pengguna yang melakukan penyuntingan) dari revisi tertentu Dibagi menjadi deleterevision dan deletelogentry pada 1.20 suppress 1.6+
editcontentmodel Menyunting model konten halaman - memerlukan hak edit user 1.23.7+
editinterface Menyunting antarmuka pengguna - mengandung pesan antarmuka. Untuk menyunting CSS/JSON/JS situs, terdapat hak tersendiri, lihat di bawah. - memerlukan hak edit sysop, interface-admin 1.5+
editmyoptions Menyunting preferensi Anda sendiri * 1.22+
editmyprivateinfo Menyunting data pribadi Anda sendiri (seperti alamat surel, nama asli) dan meminta surel pengaturan ulang kata sandi - juga menyembunyikan "Ubah Kata Sandi", tetapi tidak menyembunyikan cara-cara lain untuk mengubah kata sandi - Memerlukan hak viewmyprivateinfo * 1.22+
editmyusercss Sunting berkas CSS pengguna Anda - sebelum 1.31 ini diberikan ke semua orang ("*") (perhatikan bahwa ini tidak diperlukan apabila kelompoknya sudah memiliki hak editusercss) - memerlukan hak edit user 1.22+
editmyuserjs Sunting berkas JavaScript pengguna Anda - sebelum 1.31 ini diberikan ke semua orang ("*") (perhatikan bahwa ini tidak diperlukan apabila kelompoknya sudah memiliki hak edituserjs) - memerlukan hak edit user 1.22+
editmyuserjsredirect Sunting berkas JavaScript pengguna Anda yang merupakan alihan. (perhatikan bahwa ini tidak diperlukan apabila kelompokya sudah memiliki hak edituserjs) - memerlukan hak edit 1.34+
editmyuserjson Sunting berkas JSON pengguna Anda (perhatikan bahwa ini tidak diperlukan apabila kelompokya sudah memiliki hak edituserjson) - memerlukan hak edit user 1.31+
editmywatchlist Sunting daftar pantau Anda sendiri (ingatlah bahwa beberapa tindakan tetap akan menambahkan halaman walaupun tanpa hak ini) - memerlukan hak viewmywatchlist * 1.22+
editsitecss Menyunting CSS untuk keseluruhan situs - memerlukan hak editinterface interface-admin 1.32+
editsitejs Menyunting JavaScript untuk keseluruhan situs - memerlukan hak editinterface interface-admin 1.32+
editsitejson Menyunting JSON untuk keseluruhan situs - memerlukan hak editinterface sysop, interface-admin 1.32+
editusercss Menyunting berkas CSS pengguna lain - memerlukan hak edit interface-admin 1.16+
edituserjs Menyunting berkas JS pengguna lain - memerlukan hak edit interface-admin 1.16+
edituserjson Menyunting berkas JSON pengguna lain - memerlukan hak edit sysop, interface-admin 1.31+
hideuser Blokir atau buka blokir nama pengguna, sembunyikan atau munculkan dari publik - Hanya pengguna dengan 1000 suntingan atau kurang yang bisa disembunyikan secara default. - memerlukan hak block

Gunakan $wgHideUserContribLimit to menonaktifkannya.

suppress 1.10+
markbotedits Menandai pengembalian revisi sebagai suntingan bot - Lihat Manual:Rollback - memerlukan hak rollback sysop 1.12+
mergehistory Menggabungkan versi terdahulu halaman-halaman - memerlukan hak edit sysop 1.12+
pagelang Ubah bahasa halaman - $wgPageLanguageUseDB harus bernilai true 1.24+
patrol Menandai suntingan pengguna lain sebagai terpatroli - $wgUseRCPatrol harus bernilai true sysop 1.5+
patrolmarks Melihat penandaan patroli perubahan terbaru 1.16+
protect Mengubah tingkat pelindungan dan sunting halaman yang dilindungi beruntun - memerlukan hak edit sysop 1.5+
rollback Mengembalikan dengan cepat suntingan-suntingan pengguna terakhir yang menyunting halaman tertentu - memerlukan hak edit sysop 1.5+
suppressionlog Lihat log rahasia suppress 1.6+
suppressrevision Menampilkan, menyembunyikan dan membatalkan penyembunyian revisi tertentu atas suatu halaman dari pengguna - Sebelum 1.13 hak ini dinamakan hiderevision - memerlukan hak deleterevision suppress 1.6+
unblockself Melepaskan blokir sendiri - Tanpanya, pengurus dengan kemampuan untuk memblokir, tidak dapat membuka blokir yang dilakukan oleh pengurus lain. sysop 1.17+
undelete Mengembalikan halaman yang telah dihapus - memerlukan hak deletedhistory sysop 1.12+
userrights Menyunting seluruh hak pengguna - mengizinkan penetapan atau penghapusan semua* kelompok dari pengguna siapapun.

*Dengan $wgAddGroups dan $wgRemoveGroups Anda bisa mengatur kemungkinan menambah/menghapus grup tertentu bukannya semua

bureaucrat 1.5+
userrights-interwiki Menyunting hak para pengguna di wiki lain - requires the userrights right 1.12+
viewmyprivateinfo Melihat data pribadi Anda sendiri (misal: alamat surel, nama asli) * 1.22+
viewmywatchlist Melihat daftar pantauan Anda sendiri * 1.22+
viewsuppressed Lihat revisi yang disembunyikan dari semua pengguna - merupakan alternatif yang lebih sempit dari "suppressrevision" (perhatikan bahwa ini tidak diperlukan apabila kelompok sudah memiliki hak suppressrevision) suppress 1.24+
Administrasi
autopatrol Menyunting dengan status suntingan secara otomatis ditandai terpantau - $wgUseRCPatrol harus bernilai true bot, sysop 1.9+
deletechangetags Hapus tag dari basis data - saat ini tidak dipakai oleh ekstensi sysop 1.28+
import Mengimpor halaman dari wiki lain - "transwiki" - memerlukan hak edit sysop 1.5+
importupload Mengimpor halaman dari sebuah berkas yang dimuatkan - Hak berikut disebut 'importraw' pada dan sebelum versi 1.5 - memerlukan hak edit sysop 1.5+
managechangetags Buat dan matikan tag - saat ini tidak dipakai oleh ekstensi sysop 1.25+
siteadmin Mengunci dan membuka kunci basis data - yang memblokir semua interaksi dengan situs web kecuali melihatnya. (tidak tersedia secara default) 1.5+
unwatchedpages Melihat daftar halaman-halaman yang tidak dipantau - mendaftarkan halaman yang belum dipantau pengguna manapun sysop 1.6+
Teknis
apihighlimits Menggunakan batasan yang lebih tinggi dalam kueri API bot, sysop 1.12+
autoconfirmed Tidak dipengaruhi rate limit berbasis IP - digunakan untuk kelompok 'autoconfirmed', lihat tabel di bawah untuk informasi lebih lanjut (note that this is not needed if the group already has the noratelimit right) autoconfirmed, bot, sysop 1.6+
bot Diperlakukan sebagai sebuah proses otomatis - bisa dilihat secara opsional bot 1.5+
ipblock-exempt Mengabaikan pemblokiran IP, pemblokiran otomatis, dan rentang pemblokiran sysop 1.9+
nominornewtalk Ketiadaan suntingan kecil di halaman pembicaraan memicu tampilan pesan baru - memerlukan hak minoredit bot 1.9+
noratelimit Tidak dipengaruhi oleh pembatasan jumlah suntingan - tidak dipengaruhi oleh rate limit (sebelum hak ini diperkenalkan, variabel konfigurasi $wgRateLimitsExcludedGroups digunakan untuk tujuan ini) sysop, bureaucrat 1.13+
override-export-depth Ekspor halaman termasuk halaman-halaman terkait hingga 5 kedalaman
Dengan hak ini, Anda bisa mendefinisikan kedalaman laman yang ditaut pada Special:Export. Bila tidak, nilai dari $wgExportMaxLinkDepth , yang secara default adalah 0, akan digunakan.
?
suppressredirect Tidak membuat pengalihan dari nama lama ketika memindahkan halaman - memerlukan hak move bot, sysop 1.12+
Meskipun izin-izin di atas mengendalikan hal-hal yang berbeda, terkadang untuk melakukan beberapa tindakan tertentu diperlukan beberapa izin. Misalnya membolehkan orang-orang menyunting tapi melarang mereka membaca halaman tidaklah masuk akal, karena untuk menyunting suatu halaman Anda harus bisa membacanya (diasumsikan bahwa tidak ada halaman yang di-whitelist). Membolehkan pengunggahan tapi melarang penyuntingan juga tidak masuk akal, karena untuk mengunggah sebuah gambar secara implisit Anda juga harus membuat halaman deskripsi gambar, dll.


Daftar kelompok

Berikut ini kelompok-kelompok yang tersedia di MediaWiki versi terkini. Jika Anda menggunakan versi yang lebih lama maka sebagian kelompok mungkin tidak diimplementasikan.

Kelompok Deskripsi Hak bawaan Versi
* semua pengguna (termasuk yang anonim). createaccount, createpage, createtalk, edit, editmyoptions, editmyprivateinfo, editmywatchlist, read, viewmyprivateinfo, viewmywatchlist, writeapi 1.5+
temp Temporary user accounts (T330816) Similar to * group 1.41+
user akun yang terdaftar. Does not include temporary accounts. 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 akun yang terdaftar dengan usia $wgAutoConfirmAge dan telah membuat $wgAutoConfirmCount suntingan. autoconfirmed, editsemiprotected 1.6+
bot akun dengan hak bot (diperuntukkan untuk skrip otomatis). autoconfirmed, autopatrol, apihighlimits, bot, editsemiprotected, nominornewtalk, suppressredirect, writeapi 1.5+
sysop pengguna yang secara bawaan bisa menghapus dan mengembalikan laman, memblokir dan membatalkan blokir pengguna, dan lain-lain. 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 pengguna yang bisa menyunting CSS/JS situs. editinterface, editsitecss, editsitejs, editsitejson, editusercss, edituserjs, edituserjson 1.32+
bureaucrat Pengguna yang dapat mengubah hak pengguna lain secara default dan karenanya memiliki akses penuh ke seluruh wiki. noratelimit, userrights 1.5+
suppress deletelogentry, deleterevision, hideuser, suppressionlog, suppressrevision, viewsuppressed

Sejak MW 1.2, Anda bisa membuat kelompok Anda sendiri di mana pengguna secara otomatis masuk kelompok tersebut (mirip autoconfirmed dan emailconfirmed) menggunakan $wgAutopromote . Anda bahkan bisa membuat kelompok apapun hanya dengan memberikan hak kepada kelompok tersebut.


Hak bawaan

Hak bawaan didefinisikan di MainConfigSchema.php .

Menambahkan hak baru

Informasi berikut hanya untuk penulis kode.

Jika Anda menambahkan hak baru ke kode inti, misalnya untuk mengendalikan halaman istimewa baru, Anda diharuskan menambahkannya ke daftar hak yang tersedia di PermissionManager.php , $coreRights (contoh). Jika Anda melakukannya dalam sebuah ekstensi , yang Anda perlu lakukan adalah menggunakan $wgAvailableRights .

Anda kemungkinan juga ingin memberikannya ke beberapa kelompok pengguna dengan menyunting $wgGroupPermissions sebagimana dijelaskan di atas.

Jika Anda ingin hak ini bisa diakses aplikasi luar melalui OAuth atau kata sandi bot, maka Anda perlu menambahkannya dengan menyunting $wgGrantPermissions .

// buat hak projectmember-powers
$wgAvailableRights[] = 'projectmember-powers';

// tambahkan projectmember-powers ke projectmember-group
$wgGroupPermissions['projectmember']['projectmember-powers'] = true;

// tambahkan projectmember-powers ke grant 'basic' agar kita bisa menggunakan kuasa projectmember kepda permintaan API
$wgGrantPermissions['basic']['projectmember-powers'] = true;

Anda juga perlu menambahkan pesan antarmuka right-[name] dan action-[name] ke /languages/i18n/en.json (dengan dokumentasi di qqq.json). Pesan right-* dapat dilihat pada Special:ListGroupRights dan pesan action-* digunakan dalam kalimat seperti "Anda tidak memiliki izin untuk ...".


Lihat juga