Controle de acesso

Alterado na versão 3.0: Antes do Weblate 3.0, o sistema de privilégios era baseado no Django, mas agora é especificamente construído para Weblate. Se você estiver usando algo mais antigo, consulte a documentação para a versão específica que você está usando.

O Weblate vem com um sistema de privilégios fino para atribuir permissões ao usuário para toda a instância ou em um escopo limitado.

O sistema de permissão é baseado em grupos e funções, onde as funções de definir um conjunto de permissões, e grupos as atribuem para os usuários e traduções. Veja Usuários, funções, grupos e permissões para mais detalhes.

Após a instalação, um conjunto padrão de grupos é criado e você pode usá-los para atribuir funções de usuários para toda a instância (ver Grupos e funções padrão). Além disso, quando acl`está ativado, você pode atribuir usuários a projetos de tradução específicos. Configurações mais refinadas pode ser alcançadas usando :ref:`custom-acl.

Configurações comuns

Bloqueando o Weblate

Para confinar completamente seu Weblate, você pode usar o LOGIN_REQUIRED_URLS para forçar os usuários a entrar e o REGISTRATION_OPEN para impedir novos registros.

Permissões para todo o site

Para gerenciar permissões para uma instância inteira, basta adicionar utilizadores aos grupos Usuários (isso é feito por padrão, usando o Associações automáticas de grupo), Revisores e Gerenciadores. Manter todos os projetos configurados como “Público” (veja Controle de acesso do projeto).

Permissões por projeto

Nota

Este recurso está indisponível para os projetos que executam o plano Libre no Hosted Weblate.

Defina seus projetos para o Protegido ou Privado, e gerencie usuários por projeto na interface do Weblate.

Permissões personalizadas a idiomas, componentes ou projetos

Nota

Este recurso está indisponível para os projetos que executam o plano Libre no Hosted Weblate.

Members are granted any permissions assigned to groups they are in, so you can grant the user multiple permissions at once. Create groups and attach them to a project, component, or language. You can put users in multiple groups, and permissions can overlap between them.

Conceder quaisquer permissões selecionadas com base no projeto, componente ou conjunto de idiomas. Para conseguir isso, crie um novo grupo (por exemplo, tradutores de tcheco) e configure-o para um determinado recurso. Quaisquer permissões atribuídas serão concedidas aos membros desse grupo para os recursos selecionados.

Isso funcionará muito bem sem configuração adicional, se usar por permissões de projeto. Para permissões em toda a instância, você provavelmente também vai querer remover essas permissões do grupo Usuários ou alterar a atribuição automática de todos os usuários para esse grupo (ver Associações automáticas de grupo).

Controle de acesso do projeto

Nota

Ao ativar controle de acesso, todos os usuários são proibidos de acessar qualquer coisa dentro de um determinado projeto, a menos que você adicione as permissões para que eles façam exatamente isso.

Nota

Este recurso está indisponível para os projetos que executam o plano Libre no Hosted Weblate.

Limite o acesso do usuário a projetos individuais selecionado uma variação de controle de acesso diferente na aba Acesso em Configurações de cada projeto. Isso cria automaticamente vários grupos para o projeto em questão. Consulte Grupos predefinidos.

Access control can be set to:

Público

Publicamente visível, traduzível por todos usuários autenticados

Protegido

Publicamente visível, mas somente traduzível por usuários selecionados

Privado

Visível e traduzível apenas por usuários selecionados

Personalizado

Administração do Django gerencia usuários em vez do Weblate, consulte Controle de acesso personalizado.

../_images/project-access.png

Concede acesso a um projeto adicionando o privilégio diretamente ao usuário ou grupo de usuários na interface administrativa do Django, ou usando o gerenciamento do usuário na página do projeto, conforme descrito em Managing per-project access control.

Nota

Mesmo com a controle de acesso ativada, algumas informações estarão disponíveis sobre o seu projeto:

  • Estatísticas para todo o caso, incluindo contagens para todos os projetos.

  • Resumo do idioma para toda a instância, incluindo contagens para todos os projetos.

Associações automáticas de grupo

From the Authentication in the Django admin interface, users can be assigned to groups [you want this for] automatically based on their e-mail addresses. This only happens upon account creation.

Nota

Associação automática de grupo para Usuários e Visualizadores sempre será criada durante migrações. Se você deseja desativá-los, defina a expressão regular para ^$ (que nunca corresponderá).

Usuários, funções, grupos e permissões

Os modelos de autenticação consistem em vários objetos:

Permissão

Permissões individuais definidas pelo Weblate. Permissões não podem ser atribuídas a usuários. Isso só pode ser feito através da atribuição de funções.

Função

A função define um conjunto de permissões. Isso permite a reutilização desses conjuntos em vários lugares, facilitando a administração.

Usuário

Os usuários podem pertencer a vários grupos.

Grupo

Grupos conectam funções, usuários e objetos de autenticação (projetos, idiomas e listas de componentes).

graph auth { "User" -- "Group"; "Group" -- "Role"; "Role" -- "Permission"; "Group" -- "Project"; "Group" -- "Language"; "Group" -- "Components"; "Group" -- "Component list"; }

Verificação de permissões

Sempre que uma permissão é verificada para decidir se alguém é capaz de realizar uma determinada ação, a verificação é realizada de acordo com o escopo, e as seguintes verificações são realizadas nesta ordem:

  1. A Lista de componentes do grupo é comparada com componente ou projeto acessado (para acesso a nível de projeto).

  2. Os Componentes de grupo é comparada com componente ou projeto acessado (para acesso a nível de projeto).

  3. Os Projetos de grupo são comparados com o projeto acessado.

Assim, a concessão de acesso a um componente dá ao usuário acesso ao projeto em que também está.

Nota

Apenas a primeira regra será usada. Então, se você definir todas de Lista de componentes, Componentes e Projeto, apenas Lista de componentes terá efeito.

Uma etapa adicional é executada se estiver verificando a permissão para a tradução:

  1. Os Idiomas de grupo é compatível com traduções acessadas, é ignorado para acesso em nível de componente ou projeto.

Dica

Use Seleção de idioma ou Seleção de projeto para automatizar a inclusão de todos os idiomas ou projetos.

Verificando acesso a um projeto

A user has to be a member of a group linked to the project, or any component inside that project. Having membership is enough, no specific permissions are needed to access the project (this is used in the default Viewers group, see Grupos e funções padrão).

Verificando acesso a um componente

A user can access the unrestricted component once able to access the containing project. With Restricted access turned on, access to the component requires explicit permission to that component (or a component list it is in).

Gerenciando usuários e grupos

All users and the various groups they are in can be managed using the Django admin interface available, which you can get to by appending /admin/ to the Weblate site URL.

Managing per-project access control

Nota

This feature only works for projects using access control, see Controle de acesso do projeto.

Os usuários com o privilégio Gerenciar acesso ao projeto (veja a Controle de acesso) também podem gerenciar usuários em projetos de controle de acesso ativado através da página do projeto. A interface permite que você:

  • Adicione usuários existentes ao projeto

  • Convide novos usuários para o projeto

  • Change user permissions

  • Revoke user access

Novo na versão 3.11.

  • Resend the e-mail for user invitations (invalidating any previously sent invitation)

User management is available in the Manage menu of any project:

../_images/manage-users.png

Grupos predefinidos

Weblate vem com um conjunto predefinido de grupos para um projeto, onde você pode atribuir usuários.

Translate

Pode traduzir o projeto, e enviar traduções feitas offline.

Sources

Pode editar textos fonte em Componentes monolíngues e informações de textos fonte.

Languages

Pode gerenciar idiomas traduzidos (adicionar ou remover traduções).

Glossary

Pode gerenciar glossário (adicionar ou remover entradas ou enviar).

Memory

Pode gerenciar memória de tradução.

Screenshots

Pode gerenciar capturas de tela (adicioná-las ou removê-las e associá-las a textos fonte).

Review

Pode aprovar traduções durante a revisão.

VCS

Pode gerenciar VCS e acessar o repositório exportado.

Administration

Tem todas as permissões disponíveis no projeto.

Billing

Pode acessar informações de cobrança (consulte Cobrança).

Controle de acesso personalizado

To gain more access control adjustments in a project, you can set Access control to Custom to switch over to using the Django admin-interface instead of the one in Weblate.

If you want to do this by default for all current and new projects, configure the DEFAULT_ACCESS_CONTROL to administrate all permissions and relations using the Django admin interface.

Aviso

Ao ativar isso, o Weblate removerá todos os Controle de acesso do projeto que ele criou para este projeto. Se você estiver fazendo isso sem permissão administrativa da instância, você perderá instantaneamente o seu acesso para gerenciar o projeto.

Grupos e funções padrão

These roles and groups are created upon installation. The built-in roles are always kept up to date by the database migration when upgrading. Custom changes are not lost. Please define a new role if you want to define your own set of permissions.

Lista de privilégios

Cobrança (consulte Cobrança)

Visualizar informações de cobrança [Administração, Cobrança]

Alterações

Baixar alterações [Administração]

Comentários

Publicar comentário [Administração, Editar fonte, Usuário avançado, Revisar textos, Traduzir]

Excluir comentário [Administração]

Componente

Editar configurações do componente [Administração]

Lock component, preventing translations [Administration]

Glossário

Adicionar entrada do glossário [Administração, Gerenciar glossário, Usuário avançado]

Editar entrada do glossário [Administração, Gerenciar glossário, Usuário avançado]

Excluir entrada do glossário [Administração, Gerenciar glossário, Usuário avançado]

Enviar entradas do glossário [Administração, Gerenciar glossário, Usuário avançado]

Sugestões automáticas

Use automatic suggestions [Administration, Edit source, Power user, Review strings, Translate]

Memória de tradução

Edit translation memory [Administration, Manage translation memory]

Delete translation memory [Administration, Manage translation memory]

Projetos

Editar configurações do projeto [Administração]

Gerenciar acesso ao projeto [Administração]

Relatórios

Baixar relatórios [Administração]

Capturas de tela

Adicionar captura de tela [Administração, Gerenciar capturas de tela]

Editar captura de tela [Administração, Gerenciar capturas de tela]

Excluir captura de tela [Administração, Gerenciar capturas de tela]

Textos fonte

Edit additional string info [Administration, Edit source]

Textos

Add new string [Administration]

Remove a string [Administration]

Ignore failing check [Administration, Edit source, Power user, Review strings, Translate]

Editar textos [Administração, Editar fonte, Usuário avançado, Revisar textos, Traduzir]

Revisar textos [Administração, Revisar textos]

Edit string when suggestions are enforced [Administration, Review strings]

Editar textos fonte [Administração, Editar fonte, Usuário avançado]

Sugestões

Accept suggestion [Administration, Edit source, Power user, Review strings, Translate]

Add suggestion [Administration, Edit source, Add suggestion, Power user, Review strings, Translate]

Delete suggestion [Administration, Power user]

Vote on suggestion [Administration, Edit source, Power user, Review strings, Translate]

Traduções

Add language for translation [Administration, Power user, Manage languages]

Efetuar tradução automática [Administração, Gerenciar idiomas]

Delete existing translation [Administration, Manage languages]

Add several languages for translation [Administration, Manage languages]

Envios

Define author of uploaded translation [Administration]

Overwrite existing strings with upload [Administration, Edit source, Power user, Review strings, Translate]

Upload translations [Administration, Edit source, Power user, Review strings, Translate]

VCS

Access the internal repository [Administration, Access repository, Power user, Manage repository]

Fazer commit das alterações para o repositório interno [Administração, Gerenciar repositório]

Push change from the internal repository [Administration, Manage repository]

Redefinir as alterações no repositório interno [Administração, Gerenciar repositório]

View upstream repository location [Administration, Access repository, Power user, Manage repository]

Atualizar o repositório interno [Administração, Gerenciar repositório]

Privilégios para todo o site

Usar interface de gerenciamento

adicionar novos projetos

Adicionar definições de idioma

Gerenciar definições de idiomas

Gerenciar grupos

Gerenciar usuários

Gerenciar funções

Gerenciar anúncios

Gerenciar memória de tradução

Gerenciar listas de componentes

Nota

Site-wide privileges are not granted to any default role. These are powerful and quite close to superuser status. Most of them affect all projects in your Weblate installation.

Lista de grupos

Os seguintes grupos são criados após a instalação (ou após a execução de setupgroups) e você está livre para modificá-los. A migração irá, no entanto, recriá-los se você excluí-los ou renomeá-los.

Convidados

Defines permissions for non-authenticated users.

This group only contains anonymous users (see ANONYMOUS_USER_NAME).

You can remove roles from this group to limit permissions for non-authenticated users.

Funções padrão: Adicionar sugestão, Acessar repositório

Visualizadores

Essa função garante a visibilidade de projetos públicos para todos os usuários. Por padrão, todos os usuários são membros deste grupo.

By default Associações automáticas de grupo makes all new accounts members of this group when they join.

Funções padrão: nenhuma

Usuários

Grupo padrão para todos os usuários.

By default Associações automáticas de grupo makes all new accounts members of this group when they join.

Funções padrão: Usuário avançado

Revisores

Grupo para revisores (consulte Fluxos de trabalho de tradução).

Funções padrão: Revisar textos

Gerenciadores

Grupo pra administradores.

Funções padrão: Administração

Aviso

Never remove the predefined Weblate groups and users, as this can lead to unexpected problems. If you have no use for them, you can removing all their privileges instead.