Manual:Direitos de usuário

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page Manual:User rights and the translation is 100% complete.

Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎हिन्दी • ‎Bahasa Indonesia • ‎日本語 • ‎한국어 • ‎polski • ‎português do Brasil • ‎русский • ‎Tagalog • ‎中文

Os direitos de usuário são permissões específicas de acesso que podem ser atribuídas para determinados grupos de usuários. Usuários podem, por sua vez, ser inseridos ou removidos desses grupos através da página especial Special:UserRights. Veja Help:Direitos e grupos de usuáriosHelp:User rights and groups.

O acesso a esta interface é propriamente regido pelo direito userrights, e apenas usuários do grupo Bureaucrats podem fazê-lo (em uma configuração padrão). Veja Manual:Definindo grupos de usuários no MediaWikiManual:Setting user groups in MediaWiki para obter informações sobre gestão e atribuição de grupos de usuários.

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 $wgGroupPermissionsManual:$wgGroupPermissions em LocalSettings.phpManual: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 email:

# 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:$wgAddGroupsManual:$wgAddGroups e Manual:$wgRemoveGroupsManual:$wgRemoveGroups, you pode precisar personalizar esses.

Exemplos

Este exemplo irá criar um grupo arbitrário ninja 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['ninja']['bot']    = true;
$wgGroupPermissions['ninja']['block']  = true;
$wgGroupPermissions['ninja']['delete'] = true;
Nota: o nome do grupo não pode conter espaços, então use 'random-group' ou 'random_group' ao invés de 'random group'

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

  • MediaWiki:Group-ninja (conteúdo: Ninjas)
  • MediaWiki:Group-ninja-member (conteúdo: ninja)
  • MediaWiki:Grouppage-ninja (conteúdo: Project:Ninjas)

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

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['Write']['edit'] = true;
$wgGroupPermissions['Write']['createpage'] = true;

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

  • MediaWiki:Group-Write (conteúdo: Writers)
  • MediaWiki:Group-Write-member (conteúdo: Writer)
  • MediaWiki:Grouppage-Write (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 Extension:RenameuserExtension: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() {
	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 $wgWhitelistReadManual:$wgWhitelistRead
Atenção Atenção: 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 Authorisation 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+
'Edição'
edit Editar páginas *, user 1.5+
createpage Criar páginas (que não sejam páginas de discussão) - requer o edit certo *, user 1.6+
createtalk Criar páginas de discussão - requer o edit certo *, user 1.6+
move Mover páginas - requer o edit certo user 1.5+
movefile Mover arquivos - requer o move certo e $wgAllowImageMovingManual:$wgAllowImageMoving ser verdadeiro user 1.14+
move-subpages Mover páginas com as suas subpáginas - requer o move certo user 1.13+
move-rootuserpages Mover páginas raiz de usuários - requer o move certo user 1.14+
move-categorypages Mover páginas de categorias - (requer o move right) user 1.25+
createaccount Criar novas contas de usuário - register / registration * 1.5+
autocreateaccount Iniciar a sessão automaticamente com uma conta de usuário externa - uma versão mais limitada de createaccount 1.27+
upload Enviar arquivos - requer o edit certo user 1.5+
reupload Sobrescrever um arquivo existente - requer o upload certo user 1.6+
reupload-own Sobrescrever um arquivo existente enviado pelo mesmo usuário - requer o direito upload (note que isso não é necessário no caso do grupo já possuir o direito reupload'upload) 1.11+
reupload-shared Sobrescrever localmente arquivos no repositório partilhado de mídias - (se um estiver configurado) com arquivos locais (requer o upload right) user 1.6+
upload_by_url Enviar um arquivo por um URL - requer o upload certo 1.8+
editprotected Editar páginas protegidas como "Allow only administrators" - sem proteção em cascata sysop 1.13+
editsemiprotected Editar páginas protegidas como "Allow only autoconfirmed users" - sem proteção em cascata autoconfirmed 1.22+
applychangetags Aplicar etiquetas juntamente com as alterações de alguém user 1.25+
sendemail Enviar email a outros usuários user 1.16+
'Gerenciamento'
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+
bigdelete Eliminar páginas com histórico grande sysop 1.12+
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
undelete Restaurar páginas sysop 1.12+
browsearchive Buscar páginas eliminadas - através Special:Undelete. sysop 1.13+
mergehistory Fundir o histórico de páginas sysop 1.12+
protect Mudar níveis de proteção e editar páginas protegidas em cascata sysop 1.5+
block Impedir outros usuários de editarem - 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 Impedir um usuário de enviar email - permite impedir o uso da interface Special:EmailUser, ao bloquear sysop 1.11+
hideuser Bloquear um nome de usuário, escondendo-o do público - (não disponível por padrão)

Somente usuários com 1000 edições ou menos podem ser suprimidos por padrão. Use $wgHideUserContribLimit para desabilitar.

1.10+
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+
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 outros sites wiki 1.12+
rollback Reverter rapidamente o último usuário que editou uma página em particular sysop 1.5+
markbotedits Marcar edições revertidas como edições de robôs - veja Manual:Administrators#Rollback. sysop 1.12+
pagelang Mudar idioma da página - $wgPageLanguageUseDBManual:$wgPageLanguageUseDB deve ser true 1.24+
patrol Marcar edições como patrulhadas - $wgUseRCPatrolManual:$wgUseRCPatrol deve estar setada em true sysop 1.5+
patrolmarks Usar funcionalidades de patrulhagem das mudanças recentes 1.16+
changetags Adicionar e remover etiquetas arbitrárias em revisões e logs individuais - atualmente não utilizado por extensões user 1.25+
editcontentmodel Editar o modelo de uma pagina 1.23.7+
editinterface Editar a interface de usuário - contém mensagens de interface. sysop 1.5+
editusercssjs ⧼right-editusercssjs⧽ - Divida em editusercss e edituserjs em 1.16 e obsoleto, removido em 1.29 1.12+
editusercss Editar os arquivos CSS de outros usuários sysop 1.16+
edituserjs Editar os arquivos JS de outros usuários sysop 1.16+
editmyusercss Edite seu próprio arquivo CSS de usuário * 1.22+
editmyuserjs Edite seu próprio arquivo JavaScript de usuário * 1.22+
editmywatchlist Editar sua lista de vigiados. Observe que algumas ações seguirão adicionando páginas, mesmo sem este direito. * 1.22+
viewmywatchlist Ver sua lista de vigiados * 1.22+
editmyprivateinfo Editar seus próprios dados privados (exemplo: endereço de e-mail, nome real) * 1.22+
viewmyprivateinfo Ver seus próprios dados privados (por exemplo: endereço de e-mail, nome real) * 1.22+
editmyoptions Modifique suas preferências. * 1.22+
suppressrevision Rever e restaurar edições indisponíveis a administradores - Anteriormente a 1.13 este privilégio era chamado hiderevision (não disponível por padrão) 1.6+
viewsuppressed Ver revisões escondidas de qualquer usuário - ou seja, uma alternativa mais estreita para "suppressrevision" (não está disponível por padrão) 1.24+
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 log específicas (não disponível por padrão) 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 (não está disponível por padrão) 1.6+
sendemail-new-users ⧼right-sendemail-new-users⧽ user 1.31+
'Administration'
siteadmin Bloquear e desbloquear o banco de dados - que bloqueia todas as interações com o site, exceto a visualização. Desativado por padrão 1.5+
import Importar páginas de outros wikis - "transwiki" 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. sysop 1.5+
trackback deprecated-inline/pt-br permite a remoção de trackbacks (se a variável $wgUseTrackbacks estiver em true). 1.7 - 1.18
unwatchedpages Ver uma lista de páginas não vigiadas - ista as páginas que nenhum usuário esteja vigiando. sysop 1.6+
managechangetags Criar e (des)ativar tags - atualmente usado por extensões sysop 1.25+
'Technical'
bot Ser tratado como um processo automatizado - pode ser visto opcionalmente bot 1.5+
purge Carregar a cache de uma página no site sem página de confirmação - Parâmetro de URL "&action=purge" user 1.10+
minoredit Marcar edições como menores user 1.6+
nominornewtalk Não ter o aviso de novas mensagens despoletado quando são feitas edições menores a páginas de discussão - exige edição menor certo 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+
ipblock-exempt Contornar bloqueios de IP, automáticos e de intervalo sysop 1.9+
proxyunbannable ⧼right-proxyunbannable⧽ sysop 1.7 - 1.27
autopatrol Ter edições automaticamente marcadas como patrulhadas - $wgUseRCPatrolManual:$wgUseRCPatrol deve ser verdade bot, sysop 1.9+
apihighlimits Usar limites superiores em consultas (queries) via API bot, sysop 1.12+
writeapi Uso da API de escrita *, user, bot 1.13+
suppressredirect Não criar um redirecionamento do nome antigo quando uma página é movida 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. autoconfirmed, bot, sysop 1.6+
emailconfirmed deprecated-inline/pt-br utilizado para o grupo 'emailconfirmed', ver a outra tabela abaixo para obter mais informações. 1.7 - 1.13
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, editmyusercss, editmyuserjs, editmywatchlist, read, viewmyprivateinfo, viewmywatchlist, writeapi 1.5+
user contas registradas. applychangetags, changetags, createpage, createtalk, edit, minoredit, move, move-categorypages, move-rootuserpages, move-subpages, movefile, purge, read, reupload, reupload-shared, sendemail, upload, writeapi
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, writeapi 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, editusercss, edituserjs, import, importupload, ipblock-exempt, managechangetags, markbotedits, mergehistory, move, move-categorypages, move-rootuserpages, move-subpages, movefile, noratelimit, patrol, protect, proxyunbannable, reupload, reupload-shared, rollback, suppressredirect, unblockself, undelete, unwatchedpages, upload, upload_by_url 1.5+
bureaucrat usuários que, por padrão, podem alterar os direitos dos outros usuários. noratelimit, userrights 1.5+

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 DefaultSettings.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 User.phpManual:User.php, $mCoreRights (example). Se vocês está fazendo isso em uma extensão, você precisa usar $wgAvailableRightsManual:$wgAvailableRights.

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

If you want this right to be accessible to external applications by OAuth or by bot passwords, then you will need to add it to a grant by editing $wgGrantPermissionsManual:$wgGrantPermissions

// create ninja-powers right
$wgAvailableRights[] = 'ninja-powers';

//add ninja-powers to the ninja-group
$wgGroupPermissions['ninja']['ninja-powers'] = true;

//add ninja-powers to the 'basic' grant so we can use our ninja powers over an API request
$wgGrantPermissions['basic']['ninja-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...".

Veja também