Jump to content

Manual:Direitos de usuário

From mediawiki.org
This page is a translated version of the page Manual:User rights and the translation is 88% complete.
Outdated translations are marked like this.

Os direitos de usuário são permissões (como a capacidade de editar páginas ou bloquear usuários) que podem ser atribuídas a diferentes grupos de usuários. O MediaWiki é fornecido com um conjunto padrão de direitos de usuário e grupos de usuários, mas eles podem ser personalizados. Esta página explica os direitos e grupos padrão e como personalizá-los.

Para obter informações sobre como adicionar e remover usuários individuais da wiki de grupos, consulte Help:Direitos e grupos de usuários e Manual:Definindo grupos de usuários no MediaWiki .

Alterando permissões de grupo

A instalação padrão do MediaWiki atribui certos direitos a grupos padrão (ver abaixo). Você pode alterar os direitos padrão editando o arranjo $wgGroupPermissions em LocalSettings.php com a sintaxe

$wgGroupPermissions['group']['right'] = true /* ou false */;
Em uma instalação padrão, o $wgGroupPermissions será configurado em includes/DefaultSettings.php, mas não estará presente em LocalSettings.php Você terá de adicioná-lo ao arquivo

Se um membro possuir múltiplos grupos, ele receberá todas as permissões de todo grupo no qual ele está. Todos os usuários, incluindo usuários anônimos, estão no grupo '*'; todos os usuários registrados estão no grupo 'user'. Além dos grupos padrão, você pode arbitrariamente criar novos grupos que utilizam o mesmo arranjo.

Exemplos

Este exemplo irá desativar a visualização de todas as páginas que não constem na $wgWhitelistRead e, em seguida, reativará apenas para usuários registrados:

$wgGroupPermissions['*']['read'] = false;
# A seguinte linha não é realmente necessária, já que está nos padrões. Ajustar '*' para false não desativa direitos para grupos que têm o direito configurado de maneira separada para true!
$wgGroupPermissions['user']['read'] = true;

Este exemplo desativa a edição de todas as páginas, em seguida, reabilita apenas para os usuários com confirmação de endereço de e-mail:

# Desabilitar para todos.
$wgGroupPermissions['*']['edit'] = false;
# Desabilitar os usuários, também: por padrão, 'user' tem permissão para editar, mesmo se '*' não esteja ativado.
$wgGroupPermissions['user']['edit'] = false;
# Alterá-lo para que os usuários com confirmação de endereço de email estão no grupo.
$wgAutopromote['emailconfirmed'] = APCOND_EMAILCONFIRMED;
# Ocultar grupo da lista de usuários.
$wgImplicitGroups[] = 'emailconfirmed';
# Finalmente, defina-o como true para o grupo desejado.
$wgGroupPermissions['emailconfirmed']['edit'] = true;

Criando um novo grupo e atribuindo permissões a ele

Você pode criar novos grupos de usuários pela definição das permissões de acordo com o nome do grupo em $wgGroupPermissions[ 'group-name' ] onde <group-name> é o nome real do grupo.

Além de atribuir permissões, você deve criar estas três páginas wiki com conteúdo apropriado:

  • MediaWiki:Group-<group-name> (conteúdo: Nome do grupo)
  • MediaWiki:Group-<group-name>-member (conteúdo: Nome de um membro do grupo)
  • MediaWiki:Grouppage-<group-name> (conteúdo: Name of the group page)

Por padrão, os burocratas podem adicionar usuários ou removê-los de qualquer grupo. No entanto, se você estiver usando Manual:$wgAddGroups e Manual:$wgRemoveGroups , you pode precisar personalizar esses.

Exemplos

Este exemplo irá criar um grupo arbitrário projectmember que pode bloquear usuários e excluir páginas e cujas edições estão ocultas por padrão no log de mudanças recentes:

$wgGroupPermissions['projectmember']['bot'] = true;
$wgGroupPermissions['projectmember']['block'] = true;
$wgGroupPermissions['projectmember']['delete'] = true;
o nome do grupo não pode conter espaços, então use 'random-group' ou 'random_group' ao invés de 'random group'. Além disso, é recomendável usar apenas letras minúsculas para criar um grupo.

Neste exemplo, você provavelmente também queira criar páginas:

  • MediaWiki:Group-projectmember (content: Membros do projeto)
  • MediaWiki:Group-projectmember-member (conteúdo: Membro do projeto)
  • MediaWiki:Grouppage-projectmember (conteúdo: Project:Project Members)

Isto irá assegurar que o grupo será referido como "Project members" em toda a interface, e um membro será referido como um "project members", e visões gerais ligarão o nome do grupo para Project:Project members.

Este exemplo desabilita o acesso de gravação (edição e criação de página) por padrão, cria um grupo chamado "Gravar" e concede acesso de gravação. Os usuários podem ser adicionados manualmente a este grupo 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;

Neste exemplo, você provavelmente também queira criar páginas:

  • MediaWiki:Group-writer (conteúdo: Writers)
  • MediaWiki:Group-writer-member (conteúdo: Writer)
  • MediaWiki:Grouppage-writer (conteúdo: Project:Write)

Removendo grupos predefinidos

O MediaWiki da caixa vem com uma série de grupos predefinidos. A maioria desses grupos pode ser removida desarmando as chaves de matriz de acordo, entre elas $wgGroupPermissions[ '<group-name>' ]. Para mais detalhes, veja abaixo.

Exemplo

Este exemplo eliminará completamente o grupo burocrático. É necessário garantir que todas as seis dessas variáveis estejam desativadas para qualquer grupo que se deseja remover de ser listado em Special:ListGroupRights; No entanto, basta unsetter $wgGroupPermissions será suficiente para removê-lo de Special:UserRights. Este código deve ser colocado após qualquer linhas require_once que adicionam extensões como $RenameUser contendo código que fornece permissões de grupo de burocratas por padrão.

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

Em algumas extensões (Flow, Semantic MediaWiki, etc.), os direitos são adicionados durante o registro de extensão ou em uma função de registro. Neste caso, pode ser necessário usar uma função de registro em LocalSettings.php para remover alguns grupos de usuários predefinidos:

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

Nota sobre o grupo chamado "usuário"

Com o mecanismo acima, você pode remover os grupos sysop, burocrata e bot, que - se usado - pode ser atribuído pelo habitual sistema de permissão do usuário. No entanto, atualmente não é possível remover o grupo user. Este grupo não é atribuído através do sistema de permissão usual. Em vez disso, cada usuário logado automaticamente é membro desse grupo. Isso é codificado em MediaWiki e atualmente não pode ser alterado facilmente.

Lista de permissões

Os direitos de usuário a seguir estão disponíveis na última versão do MediaWiki. Se você estiver usando uma versão mais antiga, verifique "Special:Version" em sua wiki e veja se sua versão é abordado na coluna "versões".

Direito Descrição Grupos de usuários que têm esse direito por padrão Versões
Leitura
read Ler páginas - quando configurado como falso, substitua por páginas específicas com $wgWhitelistRead
Atenção Atenção: Configurando o direito do usuário de "leitura" (permitir a visualização de páginas) para false só protegerá páginas da wiki (artigo, palestra, ...), mas carregado arquivos (imagens, arquivos, documentos... no $wgUploadPath subdiretórios) permanecerá sempre legível por acesso direto por padrão.
Use as informações das páginas Manual:Image authorization e img_auth.php quando tiver a necessidade de restringir as visualizações de imagens e o acesso de download de arquivos apenas aos usuários que efetuaram login.
*, user 1.5+
Edição
applychangetags Aplicar etiquetas juntamente com as alterações de alguém - requires the edit right user 1.25+
autocreateaccount Iniciar a sessão automaticamente com uma conta de usuário externa - uma versão mais limitada de createaccount 1.27+
createaccount Criar novas contas de usuário - register / registration *, sysop 1.5+
createpage Criar páginas (que não sejam páginas de discussão) - requer o direito edit *, user 1.6+
createtalk Criar páginas de discussão - requer o direito edit *, user 1.6+
delete-redirect Eliminar redirecionamentos com uma única revisão (note that this is not needed if the group already has the delete right) 1.36+
edit Editar páginas *, user 1.5+
editsemiprotected Editar páginas protegidas como "Allow only autoconfirmed users" - sem proteção em cascata - requires the edit right autoconfirmed, bot, sysop 1.22+
editprotected Editar páginas protegidas como "Allow only administrators" - sem proteção em cascata - requires the edit right sysop 1.13+
minoredit Marcar edições como menores - requires the edit right user 1.6+
move Mover páginas - requer o direito edit user, sysop 1.5+
move-categorypages Mover páginas de categorias - requer o direito move user, sysop 1.25+
move-rootuserpages Mover páginas raiz de usuários - requer o direito move user, sysop 1.14+
move-subpages Mover páginas com as suas subpáginas - requer o direito move user, sysop 1.13+
movefile Mover arquivos - requer o direito move e $AllowImageMoving como verdadeiro user, sysop 1.14+
reupload Sobrescrever um arquivo existente - requer o direito upload user, sysop 1.6+
reupload-own Sobrescrever um arquivo existente enviado pelo mesmo usuário - requer o direito upload (note que isso não é necessário se o grupo já possui o direito reupload) 1.11+
reupload-shared Sobrescrever localmente arquivos no repositório compartilhado de mídias - (se um estiver configurado) com arquivos locais (requer o direito upload) user, sysop 1.6+
sendemail Enviar email a outros usuários user 1.16+
upload Enviar arquivos - requer o direito edit e $wgEnableUploads como verdadeiro user, sysop 1.5+
upload_by_url Enviar um arquivo por um URL - requer o direito upload (Antes da 1.20, era dado a administradores) 1.8+
Gerenciamento
bigdelete Eliminar páginas com histórico grande (conforme determinado por $wgDeleteRevisionsLimit ) - requer o direito delete sysop 1.12+
block Bloqueiar ou desbloqueiar outros usuários de editar - As opções de bloqueio incluem evitar a edição e o registro de novas contas e o auto-bloqueio de outros usuários no mesmo endereço IP sysop 1.5+
blockemail Bloquear ou desbloquear um usuário para que não possa mandar emails - permite impedir o uso da interface Special:EmailUser, ao bloquear - requer o direito bloquear sysop 1.11+
browsearchive Buscar páginas eliminadas - através Special:Undelete. - requer o direito deletedhistory sysop 1.13+
changetags Adicionar e remover etiquetas arbitrárias em revisões e registros individuais - atualmente não utilizado por extensões user 1.25+
delete Eliminar páginas 1.5–1.11: permite a eliminação ou não eliminação de páginas.
1.12+: permite a eliminação de páginas. Para desfazer eliminações, existe agora o direito 'undelete' right, veja abaixo.
sysop 1.5+
deletedhistory Ver entradas de histórico eliminadas, sem o texto associado sysop 1.6+
deletedtext Ver texto removido e alterado entre revisões removidas sysop 1.16+
deletelogentry Eliminar e restaurar entradas específicas de registos - permite excluir/descomprimir informações (texto de ação, resumo, usuário que fez a ação) de entradas de registros específicas - requer o direito excluir revisão suppress 1.20+
deleterevision Eliminar e restaurar revisões específicas de páginas - permite excluir/restaurar informações (texto de revisão, sumário de edição, o usuário que fez a edição) de revisões específicas (não disponível por padrão) Dividiu em deleterevision e deletelogentry em 1.20 suppress 1.6+
editcontentmodel Editar o modelo de uma pagina - requer o direito edit user 1.23.7+
editinterface Editar a interface de usuário - contém mensagens de interface. Para editar o CSS/JSON/JS global, há dois direitos segregados; veja-os abaixo. - requer o direito edit sysop, interface-admin 1.5+
editmyoptions Modifique suas preferências. * 1.22+
editmyprivateinfo Editar seus próprios dados privados (exemplo: endereço de e-mail, nome real) e solicitar e-mails de redefinição de senha - also hides the "Change Password", but not other ways to change the password - requires the viewmyprivateinfo right * 1.22+
editmyusercss Edite seu próprio arquivo CSS de usuário - antes da 1.31, era atribuído a todos (*) (note que isso não é necessário se o grupo já possui o direito editusercss) - requer o direito edit user 1.22+
editmyuserjs Edite seu próprio arquivo JavaScript de usuário - antes da 1.31, era atribuído a todos (*) (note que isso não é necessário se o grupo já possui o direito edituserjs) - requer o direito edit user 1.22+
editmyuserjsredirect Editar seus próprios arquivos JavaScript de usuários que são redirecionados (note that this is not needed if the group already has the edituserjs right) - requires the edit right 1.34+
editmyuserjson Edite seus próprios arquivos JSON do usuário (note que isso não é necessário se o grupo já possui o direito edituserjson) - requer o direito edit user 1.31+
editmywatchlist Editar sua própria lista de páginas vigiadas (note que algumas ações seguirão adicionando páginas mesmo sem este direito) - requires the viewmywatchlist right * 1.22+
editsitecss Editar CSS global do site - requires the editinterface right interface-admin 1.32+
editsitejs Editar JavaScript global do site - requer o direito editinterface interface-admin 1.32+
editsitejson Editar JSON global do site - requires the editinterface right sysop, interface-admin 1.32+
editusercss Editar os arquivos CSS de outros usuários - requer o direito edit interface-admin 1.16+
edituserjs Editar os arquivos JS de outros usuários - requires the edit right interface-admin 1.16+
edituserjson

Editar arquivos JSON de outros usuários - requer o direito edit

sysop, interface-admin 1.31+
hideuser Bloquear or desbloquear um nome de usuário, escondendo-o do público - Somente usuários com 1000 edições ou menos podem ser suprimidos por padrão. - requires the block right

Use $wgHideUserContribLimit para desabilitar.

suppress 1.10+
markbotedits Marcar edições revertidas como edições de robôs - veja [[Manual:Rollback |Manual:Administrators#Rollback]]. - requer o direito rollback sysop 1.12+
mergehistory Fundir o histórico de páginas - requires the edit right sysop 1.12+
pagelang Mudar idioma da página - $wgPageLanguageUseDB deve ser true 1.24+
patrol Marcar edições como patrulhadas - $wgUseRCPatrol deve estar setada em true sysop 1.5+
patrolmarks Usar funcionalidades de patrulhagem das mudanças recentes 1.16+
protect Mudar configuração de proteção e editar páginas protegidas em cascata - requer o direito edit sysop 1.5+
rollback Reverter rapidamente o último usuário que editou uma página em particular - requires the edit right sysop 1.5+
suppressionlog Ver registros privados suppress 1.6+
suppressrevision Rever e restaurar edições indisponíveis a administradores - Anteriormente a 1.13 este privilégio era chamado hiderevision - requer o direito deleterevision suppress 1.6+
unblockself Desbloquear a si mesmo - Sem ele um administrador que tem a capacidade de bloquear não pode desbloquear-se se bloqueado por outro administrador. sysop 1.17+
undelete Restaurar páginas - requer o direito deletedhistory sysop 1.12+
userrights Editar todos os direitos de usuário - permite a atribuição ou remoção de todos os grupos * para qualquer usuário.

(*)Com as variáveis $wgAddGroups e $wgRemoveGroups você pode definir a possibilidade de adicionar/remover certos grupos, em vez de todos.

bureaucrat 1.5+
userrights-interwiki Editar direitos de usuário de usuários em outras wikis - requires the userrights right 1.12+
viewmyprivateinfo Ver seus próprios dados privados (por exemplo: endereço de e-mail, nome real) * 1.22+
viewmywatchlist Ver a sua lista de páginas vigiadas * 1.22+
viewsuppressed Ver revisões escondidas de qualquer usuário - ou seja, uma alternativa mais restritiva a “suppressrevision” (note que isso não é necessário se o grupo já possui o direito suppressrevision) suppress 1.24+
<span id="Administration">Administration
autopatrol Ter edições automaticamente marcadas como patrulhadas - $wgUseRCPatrol deve ser verdade bot, sysop 1.9+
deletechangetags Deletar etiquetas da base de dados. - atualmente não utilizado por extensões sysop 1.28+
import Importar páginas de outros wikis - "transwiki" - requer o direito edit sysop 1.5+
importupload Importar páginas de um arquivo carregado - Este privilégio era chamado de 'importraw' na versão 1.5 e em versões anteriores. - requer o direito edit sysop 1.5+
managechangetags Criar e (des)ativar etiquetas - atualmente não utilizado por extensões sysop 1.25+
siteadmin Bloquear e desbloquear o banco de dados - que bloqueia todas as interações com o site, exceto a visualização. (não disponível por padrão) 1.5+
unwatchedpages Ver uma lista de páginas não vigiadas - ista as páginas que nenhum usuário esteja vigiando. sysop 1.6+
Technical
apihighlimits Usar limites superiores em consultas (queries) via API bot, sysop 1.12+
autoconfirmed Não ser afetado pelos limites de frequência baseados no número de IP - utilizado para o grupo 'autoconfirmados', ver a outra tabela abaixo para obter mais informações. (note that this is not needed if the group already has the noratelimit right) autoconfirmed, bot, sysop 1.6+
bot Ser tratado como um processo automatizado - pode ser visto opcionalmente bot 1.5+
ipblock-exempt Contornar bloqueios de IP, automáticos e de intervalo sysop 1.9+
nominornewtalk Não ter o aviso de novas mensagens despoletado quando são feitas edições menores a páginas de discussão - requer o direito minoredit bot 1.9+
noratelimit Não afetado pelos limites de velocidade de operação - não afetado pelos limites de velocidade (antes da introdução desse privilégio, a variável de configuração $wgRateLimitsExcludedGroups era usado para esta finalidade) sysop, bureaucrat 1.13+
override-export-depth Exportar páginas incluindo páginas ligadas até uma profundidade de 5
Com este direito, você pode definir a profundidade das páginas vinculadas em Special:Export. Caso contrário, o valor de $wgExportMaxLinkDepth , que é 0 por padrão, será usado.
1.15+
suppressredirect Não criar um redirecionamento do nome antigo quando uma página é movida - requer o direito move bot, sysop 1.12+
Embora essas permissões controlem todas as coisas separadas, às vezes para executar determinadas ações, você precisa de várias permissões. Por exemplo, permitir às pessoas editar, mas não ler as páginas não faz sentido, uma vez que, a fim de editar uma página você deve primeiro ser capaz de lê-la (assumindo que não são páginas da lista branca) Permitir uploads, mas não a edição não faz sentido uma vez que, a fim de fazer upload de uma imagem, você deve implicitamente criar uma página de descrição da imagem, etc.


Lista de Grupos

Os seguintes grupos estão disponíveis na última versão do MediaWiki. Se você estiver usando uma versão mais antiga, em seguida, alguns destes não podem ser implementados.

Grupo Descrição Direitos padrão Versões
* todos os usuários (incluindo anônimos). createaccount, createpage, createtalk, edit, editmyoptions, editmyprivateinfo, editmywatchlist, read, viewmyprivateinfo, viewmywatchlist 1.5+
temp Temporary user accounts (T330816) Similar to * group 1.41+
user contas registradas. 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 1.13+
autoconfirmed contas registradas pelo menos tão antigas quanto $wgAutoConfirmAge e tendo, pelo menos, tantas edições quanto $wgAutoConfirmCount . autoconfirmed, editsemiprotected 1.6+
bot contas com o direito de robô (destina-se à operação com scripts automatizados). autoconfirmed, autopatrol, apihighlimits, bot, editsemiprotected, nominornewtalk, suppressredirect 1.5+
sysop usuários que por padrão podem apagar e restaurar páginas, bloquear e desbloquear usuários, etc. 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 usuários que podem editar o CSS/JS global. editinterface, editsitecss, editsitejs, editsitejson, editusercss, edituserjs, edituserjson 1.32+
bureaucrat usuários que, por padrão, podem alterar os direitos dos outros usuários. noratelimit, userrights 1.5+
suppress deletelogentry, deleterevision, hideuser, suppressionlog, suppressrevision, viewsuppressed 1.13+

Desde a versão 1.12, você pode criar seus próprios grupos em que os usuários são automaticamente promovidos (como com autoconfirmados e e-mail confirmado) usando $wgAutopromote . Você pode até mesmo criar qualquer grupo personalizado por apenas atribuir direitos a eles.

Direitos padrão

Os direitos padrão estão em MainConfigSchema.php .

Adicionando novos direitos

A informação para codificadores apenas segue.

Se você estiver adicionando um novo direito no núcleo, por exemplo, para controle uma nova página especial, você precisa requerer para adicioná-lo à lista de direitos disponíveis em PermissionManager.php , $coreRights (example). Se vocês está fazendo isso em uma extensão , você precisa usar $wgAvailableRights .

Você provavelmente também deseja atribuí-lo a algum grupo de usuários editando descrição $wgGroupPermissions acima.

Se você quiser que este direito seja acessível a aplicativos externos por OAuth ou por senhas de robôs, então você precisará adicioná-lo a uma concessão editando $wgGrantPermissions .

// criar o direito projectmember-powers
$wgAvailableRights[] = 'projectmember-powers';

// adicionar projectmember-powers para projectmember-group
$wgGroupPermissions['projectmember']['projectmember-powers'] = true;

// adicione projectmember-powers do projeto à concessão 'basic' para que possamos usar os projectmember do projeto em uma solicitação de API
$wgGrantPermissions['basic']['projectmember-powers'] = true;

Você também precisa adicionar right-[name] e action-[name] mensagens de interface para /languages/i18n/en.json (with documentation no qqq.json). As mensagens corretas * podem ser vistas em Special:ListGroupRights e as mensagens de ação * são usadas em uma frase como "Você não tem permissão para...".

Ver também