Controle de acesso

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.

Controle de acesso do projeto

Nota

Projetos operando o plano livre no Hosted Weblate são sempre Público. Você pode trocar para o plano pago se quer restringir o acesso para seu projeto.

You can limit user’s access to individual projects by selecting a different Controle de acesso setting. Available options are:

Público

Visível para todos.

Qualquer usuário autenticado pode contribuir.

O repositório VCS pode ser exposto para todo mundo.

Escolha essa opção para projetos em código aberto, ou quando sua instância Weblate é privada ou trancada.

Protegido

Visível para todos.

Apenas usuários escolhidos podem contribuir.

Somente os usuários selecionados podem acessar o repositório VCS.

Escolha este para ganhar visibilidade, mas continuar tendo controle de quem pode contribuir.

Privado

Visível apenas para os usuários escolhidos.

Apenas usuários escolhidos podem contribuir.

Somente os usuários selecionados podem acessar o repositório VCS.

Escolha esta opção para projetos que não devem ser expostos publicamente.

Personalizado

Visível apenas para os usuários escolhidos.

Apenas usuários escolhidos podem contribuir.

Somente os usuários selecionados podem acessar o repositório VCS.

Não disponível em Hosted Weblate.

You will have to set up all the permissions using Site-wide access control.

Choose this on your own Weblate instance if you want to define access in a specific, finely customizable way.

O Controle de acesso pode ser alterado na aba Acesso da configuração (GerenciarConfigurações) de cada projeto.

../_images/project-access.webp

O valor padrão pode ser alterado por DEFAULT_ACCESS_CONTROL.

Nota

Mesmo para projetos Privados, algumas informações sobre o seu projeto serão expostas: estatísticas e resumo de linguagem para toda a instância incluirão contagens para todos os projetos, apesar da configuração de controle de acesso. O nome do seu projeto e outras informações não podem ser revelados por meio disso.

Nota

O conjunto real de permissões disponíveis para usuários por padrão em projetos Públicos, Protegidos e Privados pode ser redefinido pelo administrador da instância de Weblate usando configurações personalizadas.

Ver também

Controle de acesso

Gerenciando controle de acesso por projeto

Os usuários com o privilégio Gerenciar acesso ao projeto (consulte List of privileges) podem gerenciar usuários em projetos adicionando-os às equipes. A coleção inicial de equipes é fornecida pelo Weblate, mas outros adicionais podem ser definidos fornecendo um controle de acesso mais refinado. Você pode limitar as equipes a idiomas e atribuir-lhes funções de acesso designadas (consulte List of privileges).

As seguintes equipes são criadas automaticamente para cada projeto:

Para projetos Públicos, Protegidos e Privados:

Administração

Inclui todas as permissões disponíveis para o projeto.

Revisar (somente se fluxo de trabalho de revisão estiver ativado)

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

Para projetos Protegidos e Privados apenas:

Traduzir

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

Fontes

Pode editar textos fonte (se permitido nas configurações do projeto) e informações de textos fonte.

Idiomas

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

Glossário

Pode gerenciar glossário (adicionar ou remover entradas, e também enviar).

Memória

Pode gerenciar memória de tradução.

Capturas de tela

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

Tradução automática

Pode usar tradução automática.

VCS

Pode gerenciar VCS e acessar o repositório exportado.

Cobrança

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

../_images/manage-users.webp

Esses recursos estão disponíveis na página Controle de acesso, que pode ser acessada no projeto a partir do menu GerenciarUsuários.

Administradores de equipe

Adicionado na versão 4.15.

Cada equipe pode ter um administrador de equipe, que pode adicionar e remover usuários dentro da equipe. Isso é útil no caso de você querer construir equipes autogovernadas.

Inviting new users

Adding existing users will send them invitation to confirm. With REGISTRATION_OPEN the administrator can also invite new users using e-mail. Invited users have to complete the registration process to get access to the project.

Não é necessário ter nenhum privilégio em todo o site para fazer isso; a permissão de gerenciamento de acesso no escopo do projeto (por exemplo, ser membro da equipe de Administração) seria suficiente.

Dica

Caso o usuário convidado tenha perdido a validade do convite, um novo convite deverá ser criado.

O mesmo tipo de convite está disponível em todo o site a partir da interface de gerenciamento na aba Usuários.

Alterado na versão 5.0: Weblate now does not automatically create accounts or add users to the teams. This is only done after confirmation from the user.

Bloqueando usuários

Adicionado na versão 4.7.

No caso de alguns usuários se comportarem mal em seu projeto, você tem a opção de bloqueá-los de contribuir. O usuário bloqueado ainda poderá ver o projeto se tiver permissão para isso, mas não poderá contribuir.

Gerenciamento de permissões por projeto

You can set your projects to Protected or Private (see Controle de acesso do projeto), and manage users per-project in the Weblate user interface.

Por padrão, isso impede que o Weblate conceda acesso fornecido por equipes padrão Usuários e Visualizadores devido à própria configuração dessas equipes. Isso não impede que você conceda permissões a esses projetos em todo o site, alterando equipes padrão, criando uma nova ou criando configurações personalizadas adicionais para componentes individuais, conforme descrito em Site-wide access control abaixo.

Um dos principais benefícios de gerenciar permissões por meio da interface de usuário do Weblate é que você pode delegá-las a outros usuários sem dar a eles o privilégio de superusuário. Para isso, adicione-os à equipe Administração do projeto.

Site-wide access control

Nota

Este recurso não está disponível no Hosted Weblate.

O sistema de permissão é baseado em equipes e funções, onde as funções de definir um conjunto de permissões, e equipes vinculam-nas para os usuários e traduções. Veja Usuários, papéis, equipes e permissões para mais detalhes.

The most powerful features of the Weblate’s access control system can be configured in the Interface de gerenciamento. You can use it to manage permissions of any project. You don’t necessarily have to switch it to Custom access control to utilize it. However you must have superuser privileges in order to use it.

If you are not interested in details of implementation, and just want to create a simple-enough configuration based on the defaults, or don’t have a site-wide access to the whole Weblate installation (like on Hosted Weblate), please refer to the Gerenciando controle de acesso por projeto section.

Gerenciamento de permissões para todo o site

Para gerenciar permissões para uma instância inteira de uma vez, adicione usuários às equipes padrão:

Você deve manter todos os projetos configurados como Públicos (veja Controle de acesso do projeto), caso contrário as permissões de todo o site fornecidas pela participação nas equipes Usuários e Revisores não terão nenhum efeito.

Você também pode conceder algumas permissões adicionais de sua escolha às equipes padrão. Por exemplo, você pode querer dar permissão para gerenciar capturas de tela para todos os Usuários.

Você também pode definir algumas novas equipes personalizadas. Se você deseja continuar gerenciando suas permissões em todo o site para essas equipes, escolha um valor apropriado para Seleção de projeto (por exemplo Todos os projetos ou Todos os projetos públicos).

Permissões personalizadas a idiomas, componentes ou projetos

Você pode criar suas próprias equipes dedicadas para gerenciar permissões para objetos distintos, como linguagens, componentes e projetos. Embora essa equipes só possam conceder privilégios adicionais, você não pode revogar qualquer permissão concedida por equipes de todo o site ou por projeto adicionando outra equipe personalizada.

Exemplo:

Se você quiser (por qualquer motivo) permitir a tradução para um idioma específico (digamos, tcheco) apenas para um conjunto fechado de tradutores confiáveis, mantendo as traduções para outros idiomas públicos, você terá que:

  1. Remover a permissão para traduzir Tcheco de todos os usuários. Na configuração padrão, isso pode ser feito alterando a equipe padrão Usuários.

    Grupo Usuários

    Seleção de idioma

    Como definido

    Idiomas

    Todos, exceto Tcheco

  1. Adicionar uma equipe dedicada para tradutores(as) de Tcheco.

    Grupo Tradutores(as) de tcheco

    Funções

    Usuários(as) avançados(as)

    Seleção de projeto

    Todos os projetos públicos

    Seleção de idioma

    Como definido

    Idiomas

    Tcheco

  1. Adicionar usuários aos quais deseja conceder permissões a esta equipe.

Como você pode ver, o gerenciamento de permissões dessa maneira é poderoso, mas pode ser um trabalho tedioso. Você não pode delegá-lo a outro usuário, a menos que conceda permissões de superusuário.

Usuários, papéis, equipes e permissões

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

Permissão

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

Papel

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

Usuário

Usuário pode pertencer a várias equipes.

Grupo

Grupo conecta papéis, 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"; }

Nota

Uma equipe não pode ter papéis atribuídos a ela; nesse caso, o acesso para navegar no projeto por qualquer pessoa é presumido (veja abaixo).

Acesso para navegar até um projeto

Um usuário tem que ser um membro de uma equipe vinculada ao projeto ou qualquer componente dentro daquele projeto. Ser membro é suficiente, não são necessárias permissões específicas para navegar o projeto (isso é usado na equipe padrão Visualizadores, consulte Lista de equipes).

Acesso para navegar até um componente

Um usuário pode acessar componentes irrestritos assim que for possível acessar o projeto dos componentes (e terá todas as permissões que foram concedidas ao usuário para o projeto). Com o Acesso restrito ativado, o acesso ao componente requer permissões explícitas para o componente (ou uma lista de componentes na qual o componente está contido).

Escopo de equipes

O escopo da permissão atribuída pelas funções nas equipes é aplicado pelas seguintes regras:

  • Se a equipe especificar qualquer Lista de componentes, todas as permissões dadas aos membros dessa equipe serão concedidas para todos os componentes nas listas de componentes anexadas à equipe, e um acesso sem permissões adicionais é concedido para todos os projetos estes componentes estão contidos. Componentes e Projetos são ignorados.

    Using huge component lists might have a performance impact, please consider giving access via projects instead.

  • Se a equipe especificar quaisquer Componentes, todas as permissões dadas aos membros dessa equipe são concedidas para todos os componentes anexados à equipe, e um acesso sem permissões adicionais é concedido para todos os projetos nos quais que esses componentes estão. Projetos são ignorados.

  • Caso contrário, se a equipe especificar Projetos, seja listando-os diretamente ou tendo Seleção de projetos definida com um valor como Todos os projetos públicos, todas essas permissões são aplicadas a todos os projetos, que efetivamente concede as mesmas permissões para acessar todos os componentes irrestritos dos projetos.

  • As restrições impostas pelos Idiomas de uma equipe são aplicadas separadamente, quando é verificado se um usuário tem acesso para realizar determinadas ações. Ou seja, é aplicado apenas a ações diretamente relacionadas ao próprio processo de tradução, como revisar, salvar traduções, adicionar sugestões, etc.

Dica

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

Exemplo:

Digamos que haja um projeto foo com os componentes foo/bar e foo/baz e a seguinte equipe:

Grupo Revisores-admins de espanhol

Funções

Revisar textos, Gerenciar repositório

Componentes

foo/bar

Idiomas

Espanhol

Membros desta equipe terão as seguintes permissões (presumindo as configurações padrão de papeis):

  • Acesso geral (navegação) para todo o projeto foo incluindo ambos componentes nele: foo/bar e foo/baz.

  • Revisar textos na tradução para espanhol de foo/bar (não em outro lugar).

  • Gerenciar VCS para todo o repositório foo/bar, por exemplo, fazer commit de alterações pendentes feitas por tradutores de todos os idiomas.

Atribuições de equipe automáticas

While editing the Team, you can specify Automatic assignments, which is a list of regular expressions used to automatically assign newly created users to a team based on their e-mail addresses. This assignment only happens upon account creation.

The most common use-case for the feature is to assign all new users to some default team. This behavior is used for the default Users and Guest teams (see Lista de equipes). Use regular expression ^.*$ to match all users.

Another use-case for this option might be to give some additional privileges to employees of your company by default. Assuming all of them use corporate e-mail addresses on your domain, this can be accomplished with an expression like ^.*@mycompany.com.

Nota

Associação automática de equipe para Usuários e Visualizadores sempre será recriada ao atualizar de uma versão anterior do Weblate para outra. Se você deseja desativá-los, defina a expressão regular para ^$ (que nunca corresponderá).

Nota

Por enquanto, não há como adicionar em massa usuários já existentes a alguma equipe por meio da interface do usuário. Para isso, você pode recorrer ao uso da API REST.

Equipes e funções padrão

Após a instalação, um conjunto padrão de equipes é criado (veja Lista de equipes).

Esses funções e essas equipes são criados após a instalação. As funções embutidas são sempre mantidas atualizadas pela migração do banco de dados ao atualizar. Você não pode alterá-las. Defina uma nova função caso você queira definir seu próprio conjunto de permissões.

List of privileges

Escopo

Permissão

Built-in roles

Cobrança (consulte Cobrança)

Visualizar informações de cobrança

Administration, Billing

Alterações

Baixar alterações

Administration

Comentários

Publicar comentário

Administration, Edit source, Power user, Review strings, Translate

Excluir comentário

Administration

Resolver comentário

Administration, Review strings

Componente

Editar configurações do componente

Administration

Bloquear componente, evitando traduções

Administration, Manage repository

Glossário

Adicionar entrada no glossário

Administration, Manage glossary, Power user

Editar entrada do glossário

Administration, Manage glossary, Power user

Excluir entrada do glossário

Administration, Manage glossary, Power user

Enviar entradas ao glossário

Administration, Manage glossary, Power user

Sugestões automáticas

Usar sugestões automáticas

Administration, Edit source, Power user, Review strings, Translate

Memória de tradução

Editar memória de tradução

Administration, Manage translation memory

Excluir memória de tradução

Administration, Manage translation memory

Projetos

Editar configurações do projeto

Administration

Gerenciar acesso ao projeto

Administration

Relatórios

Relatórios de download

Administration

Capturas de tela

Adicionar captura de tela

Administration, Manage screenshots

Editar captura de tela

Administration, Manage screenshots

Excluir captura de tela

Administration, Manage screenshots

Textos fonte

Editar informações adicionais do texto

Administration, Edit source

Textos

Adicionar novo texto

Administration

Remover um texto

Administration

Dispensar verificação com falha

Administration, Edit source, Power user, Review strings, Translate

Editar textos

Administration, Edit source, Power user, Review strings, Translate

Revisar textos

Administration, Review strings

Editar texto quando as sugestões são forçadas

Administration, Review strings

Editar textos fonte

Administration, Edit source, Power user

Sugestões

Aceitar sugestão

Administration, Edit source, Power user, Review strings, Translate

Adicionar sugestão

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

Excluir sugestão

Administration, Power user

Votar na sugestão

Administration, Edit source, Power user, Review strings, Translate

Traduções

Adicionar idioma para tradução

Administration, Power user, Manage languages

Executar tradução automática

Administration, Automatic translation

Excluir tradução existente

Administration, Manage languages

Baixar arquivo de tradução

Administration, Edit source, Access repository, Power user, Review strings, Translate, Manage languages

Adicionar vários idiomas para tradução

Administration, Manage languages

Envios

Definir autor da tradução enviada

Administration

Sobrescrever os textos existentes com os enviados

Administration, Edit source, Power user, Review strings, Translate

Enviar traduções

Administration, Edit source, Power user, Review strings, Translate

VCS

Acessar repositório interno

Administration, Access repository, Power user, Manage repository

Fazer commit das alterações para o repositório interno

Administration, Manage repository

Enviar alteração do repositório interno

Administration, Manage repository

Redefinir as alterações no repositório interno

Administration, Manage repository

Visualizar local do repositório upstream

Administration, Access repository, Power user, Manage repository

Atualizar o repositório interno

Administration, Manage repository

Privilégios para todo o site

Usar interface de gerenciamento

Adicionar novos projetos

Adicionar definições de idioma

Gerenciar definições de idiomas

Gerenciar equipes

Gerenciar usuários

Gerenciar funções

Gerenciar anúncios

Gerenciar memória de tradução

Gerenciar tradução automática

Gerenciar listas de componentes

Gerenciar faturamento

Nota

Privilégios para todo o site não são concedidos a nenhuma função padrão. Eles são poderosos e muito próximos do status de superusuário. A maioria deles afetam todos os projetos de sua instalação do Weblate.

List of built-in roles

Administração

View billing info, Download changes, Post comment, Delete comment, Resolve comment, Edit component settings, Lock component, preventing translations, Add glossary entry, Delete glossary entry, Edit glossary entry, Upload glossary entries, Use automatic suggestions, Delete translation memory, Edit translation memory, Edit project settings, Manage project access, Download reports, Add screenshot, Delete screenshot, Edit screenshot, Edit additional string info, Accept suggestion, Add suggestion, Delete suggestion, Vote on suggestion, Add language for translation, Add several languages for translation, Perform automatic translation, Delete existing translation, Download translation file, Add new string, Dismiss failing check, Remove a string, Edit strings, Edit string when suggestions are enforced, Review strings, Edit source strings, Define author of uploaded translation, Overwrite existing strings with upload, Upload translations, Access the internal repository, Commit changes to the internal repository, Push change from the internal repository, Reset changes in the internal repository, Update the internal repository, View upstream repository location

Edit source

Post comment, Use automatic suggestions, Edit additional string info, Accept suggestion, Add suggestion, Vote on suggestion, Download translation file, Dismiss failing check, Edit strings, Edit source strings, Overwrite existing strings with upload, Upload translations

Add suggestion

Add suggestion

Access repository

Download translation file, Access the internal repository, View upstream repository location

Manage glossary

Add glossary entry, Delete glossary entry, Edit glossary entry, Upload glossary entries

Power user

Post comment, Add glossary entry, Delete glossary entry, Edit glossary entry, Upload glossary entries, Use automatic suggestions, Accept suggestion, Add suggestion, Delete suggestion, Vote on suggestion, Add language for translation, Download translation file, Dismiss failing check, Edit strings, Edit source strings, Overwrite existing strings with upload, Upload translations, Access the internal repository, View upstream repository location

Review strings

Post comment, Resolve comment, Use automatic suggestions, Accept suggestion, Add suggestion, Vote on suggestion, Download translation file, Dismiss failing check, Edit strings, Edit string when suggestions are enforced, Review strings, Overwrite existing strings with upload, Upload translations

Translate

Post comment, Use automatic suggestions, Accept suggestion, Add suggestion, Vote on suggestion, Download translation file, Dismiss failing check, Edit strings, Overwrite existing strings with upload, Upload translations

Manage languages

Add language for translation, Add several languages for translation, Delete existing translation, Download translation file

Automatic translation

Perform automatic translation

Manage translation memory

Delete translation memory, Edit translation memory

Manage screenshots

Add screenshot, Delete screenshot, Edit screenshot

Manage repository

Lock component, preventing translations, Access the internal repository, Commit changes to the internal repository, Push change from the internal repository, Reset changes in the internal repository, Update the internal repository, View upstream repository location

Billing

View billing info

Add new projects

Add new projects

Lista de equipes

The following teams are created upon installation (or after executing setupgroups) and you are free to modify them. The migration will, however, re-create them if you delete or rename them.

Convidados

Define permissões para usuários não autenticados.

Esta equipe contém apenas usuários anônimos (consulte ANONYMOUS_USER_NAME).

Você pode remover funções desta equipe para limitar as permissões para usuários não autenticados.

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 desta equipe.

Por padrão, associação automática de equipe faz com que todos os novos membros de contas desta equipe quando eles entram.

Funções padrão: nenhuma

Usuários

Equipe padrão para todos os usuários.

Por padrão, associação automática de equipe faz com que todos os novos membros de contas desta equipe quando eles entram.

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 para administradores.

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

Project creators

Adicionado na versão 5.1.

Users who can create new projects.

Default roles: Add new projects

Aviso

Nunca remova as equipes e usuários predefinidos do Weblate, pois isso pode levar a problemas inesperados! Se você não tiver uso para eles, você pode remover todos os privilégios deles.

Restrições adicionais de acesso

Se você quer usar a instalação do Weblate de forma menos pública, ou seja, permitir novos usuários apenas por convite, isso pode ser feito configurando o Weblate para que apenas usuários conhecidos tenham acesso a ele. Para fazer isso, você pode definir REGISTRATION_OPEN para False para prevenir registros de quaisquer novos usuários, e definir REQUIRE_LOGIN para /.* para exigir login para acessar todas as páginas do site. Assim você terá seu Weblate privado.

Dica

Você pode usar Inviting new users para adicionar novos usuários.