Controle de acesso

Weblate vem com um sistema de privilégios refinado para atribuir permissões de usuário para toda a instância com funções predefinidas, ou atribuindo um ou mais grupos de permissões a usuários para tudo, ou projetos individuais, componentes, glossários e assim por diante.

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.

Limite o acesso do usuário a projetos individuais selecionando uma configuração diferente de Controle de acesso. As opções disponíveis são:

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.

Particular

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.

Você precisará definir todas as permissões usando Controle de acesso em todo o site.

Escolha isso na sua própria instância Weblate se desejar definir o acesso de maneira específica e bastante personalizável.

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

../_images/project-access.webp

O padrão também pode ser alterado configurando DEFAULT_ACCESS_CONTROL.

Nota

Até mesmo as estatísticas do projeto Private são contabilizadas nas estatísticas gerais do site e no resumo do idioma. Isso não revela nomes de projetos ou qualquer outra informação.

Nota

Os administradores da instância podem modificar os conjuntos de permissões padrão disponíveis para os usuários nos projetos Público, Protegido e Particular usando configurações personalizadas.

Ver também

Controle de acesso

Gerenciando controle de acesso por projeto

Para projetos Públicos, Protegidos e Particulares:

Conceder aos usuários a capacidade de Gerenciar acesso ao projeto (consulte Lista de privilégios) permite que eles atribuam outros usuários em projetos Public, Protected e Private (mas não em projetos Custom) adicionando-os às equipes.

Estas são as equipes padrão fornecidas com o Weblate; equipes podem ser adicionadas ou modificadas por usuários com privilégios suficientes:

Administração

Todas as permissões disponíveis para o projeto.

Revisar

Aprovar traduções em uma revisão.

Disponível somente se fluxo de trabalho de revisão estiver ativado.

Para projetos Protegidos e Particulares apenas:

Traduzir

Traduzir o projeto e carregar as traduções feitas offline.

Fontes

Editar textos fonte (se permitido nas configurações do projeto) e as informações do texto-fonte.

Idiomas

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

Glossário

Gerenciar glossário (adicionar, remover e carregar entradas).

Memória

Gerenciar memória de tradução.

Capturas de tela

Gerenciar capturas de tela (adicioná-las, removê-las e associá-las a textos fonte).

Tradução automática

Pode usar tradução automática.

VCS

Gerenciar VCS e acessar o repositório exportado.

Cobrança

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

../_images/manage-users.webp

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

Dica

Você pode limitar equipes a idiomas ou componentes e atribuir a elas funções de acesso designadas (consulte Lista de privilégios).

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.

Convidando novos usuários

A adição de usuários existentes enviará a eles um convite para confirmação. Com REGISTRATION_OPEN, o administrador também pode convidar novos usuários por e-mail. Os usuários convidados precisam concluir o processo de registro para obter acesso ao projeto.

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: O Weblate agora não cria contas ou adiciona usuários às equipes automaticamente. Isso só é feito após a confirmação do usuário.

Bloqueando usuários

Adicionado na versão 4.7.

Se os usuários se comportarem mal no seu projeto, você poderá bloquear a contribuição deles. Com as permissões relevantes bloqueadas, os usuários ainda poderão ver o projeto, mas não poderão contribuir.

Gerenciamento de permissões por projeto

Você pode definir seus projetos como Protegido ou Particular (consulte Controle de acesso do projeto) e manage users access por projeto.

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 Controle de acesso em todo o site 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.

Controle de acesso em todo o site

Nota

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

O sistema de permissões baseia-se em funções que definem um conjunto de permissões e equipes que vinculam funções a usuários e traduções. Consulte Usuários, papéis, equipes e permissões para obter mais detalhes.

As funcionalidades mais avançadas do sistema de controle de acesso do Weblate podem ser configuradas na Interface de gerenciamento. Você pode usá-la para gerenciar as permissões de qualquer projeto. Você não precisa necessariamente alterá-la para Custom access control para utilizá-la. No entanto, é necessário ter privilégios de superusuário para utilizá-la.

Se você não está interessado em detalhes de implementação, e apenas deseja criar uma configuração simples o suficiente com base nos padrões, ou não tem um acesso de todo o site para toda a instalação do Weblate (como em Hosted Weblate), consulte a seção Gerenciando controle de acesso por projeto.

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 (Consulte 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:

Restringir a tradução para o Tcheco a um conjunto selecionado de tradutores (mantendo as traduções para outros idiomas públicas):

  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.

As permissões de gerenciamento dessa forma são poderosas, mas podem ser um trabalho bastante tedioso. Você só pode delegá-lo a outros usuários concedendo-lhes o status 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 pela Weblate. As permissões não podem ser atribuídas aos usuários, somente por meio da atribuição de funções.

Papel

Uma função define um conjunto de permissões (e pode ser reutilizada em vários lugares).

Usuário

Um usuário pode pertencer a várias equipes.

Grupo

Os grupos conectam funções e usuários a objetos de autenticação (projetos, idiomas, componentes 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 de navegação no 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 à navegação de componentes

Conceder acesso de navegação a um usuário em um projeto dá a ele acesso a qualquer componente com permissões de navegação derivadas. Com Acesso restrito ativado, o acesso a componentes (ou listas de componentes) é concedido explicitamente.

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.

    O uso de grandes listas de componentes pode ter um impacto no desempenho; em vez disso, considere a possibilidade de fornecer acesso por meio de projetos.

  • 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:

Um projeto foo com os componentes: foo/bar e foo/baz, com direitos de revisão e gerenciamento, na seguinte equipe:

Grupo Revisores-admins de espanhol

Funções

Revisar textos, Gerenciar repositório

Componentes

foo/bar

Idiomas

Espanhol

Os membros dessa equipe terão essas permissões (assumindo as configurações de função padrão):

  • 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

Ao editar Team, você pode especificar Automatic assignments, que é uma lista de expressões regulares usadas para atribuir automaticamente usuários recém-criados a uma equipe com base em seus endereços de e-mail. Essa atribuição ocorre somente na criação da conta.

O caso de uso mais comum de funcionalidade é atribuir todos os novos usuários a alguma equipe padrão. Esse comportamento é usado para as equipes padrão Users e Guest (consulte Lista de equipes). Use a expressão regular ^.*$ para corresponder a todos os usuários.

Outro caso de uso para essa opção pode ser conceder alguns privilégios adicionais aos funcionários de sua empresa por padrão. Supondo que todos eles usem endereços de e-mail corporativos em seu domínio, isso pode ser feito com uma expressão como ^.*@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 (consulte 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.

Lista de privilégios

Escopo

Permissão

Funções integradas

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

Resolver comentário

Administração, Revisar textos

Componente

Editar configurações do componente

Administração

Bloquear componente, evitando traduções

Administração, Gerenciar repositório

Glossário

Adicionar entrada no glossário

Administração, Gerenciar glossário, Usuário avançado

Adicionar terminologia ao 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 ao glossário

Administração, Gerenciar glossário, Usuário avançado

Sugestões automáticas

Usar sugestões automáticas

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

Memória de tradução

Editar memória de tradução

Administração, Gerenciar memória de tradução

Excluir memória de tradução

Administração, Gerenciar memória de tradução

Projetos

Editar configurações do projeto

Administração

Gerenciar acesso ao projeto

Administração

Relatórios

Relatórios de download

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

Editar informações adicionais do texto

Administração, Editar fonte

Textos

Adicionar novo texto

Administração

Remover um texto

Administração

Descartar verificação com falha

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

Editar textos

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

Revisar textos

Administração, Revisar textos

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

Administração, Revisar textos

Editar textos fonte

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

Sugestões

Aceitar sugestão

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

Adicionar sugestão

Administração, Editar fonte, Adicionar sugestão, Usuário avançado, Revisar textos, Traduzir

Excluir sugestão

Administração, Usuário avançado

Votar na sugestão

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

Traduções

Adicionar idioma para tradução

Administração, Usuário avançado, Gerenciar idiomas

Executar tradução automática

Administração, Tradução automática

Excluir tradução existente

Administração, Gerenciar idiomas

Baixar arquivo de tradução

Administração, Editar fonte, Acessar repositório, Usuário avançado, Revisar textos, Traduzir, Gerenciar idiomas

Adicionar vários idiomas para tradução

Administração, Gerenciar idiomas

Envios

Definir autor da tradução enviada

Administração

Sobrescrever os textos existentes com os enviados

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

Enviar traduções

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

VCS

Acessar repositório interno

Administração, Acessar repositório, Usuário avançado, Gerenciar repositório

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

Administração, Gerenciar repositório

Enviar alteração do repositório interno

Administração, Gerenciar repositório

Redefinir as alterações no repositório interno

Administração, Gerenciar repositório

Visualizar local do repositório upstream

Administração, Acessar repositório, Usuário avançado, Gerenciar repositório

Atualizar o repositório interno

Administração, Gerenciar repositório

Privilégios para todo o site

Usar interface de gerenciamento

Adicionar novos projetos

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

Gerenciar complementos para todo o site

Nota

Os privilégios em todo o site não são concedidos a nenhuma função padrão. Esses privilégios são poderosos e muito próximos do status de Superusuário. A maioria deles afeta todos os projetos em sua instalação do Weblate.

Lista de funções integradas

Administração

Visualizar informações de cobrança, Baixar alterações, Postar comentário, Excluir comentário, Resolver comentário, Editar configurações do componente, Bloquear componente, impedindo traduções, Adicionar entrada de glossário, Excluir entrada de glossário, Editar entrada de glossário, Adicionar terminologia de glossário, Enviar entradas de glossário, Usar sugestões automáticas, Excluir memória de tradução, Editar memória de tradução, Editar configurações do projeto, Gerenciar acesso ao projeto, Baixar relatórios, Adicionar captura de tela, Excluir captura de tela, Editar captura de tela, Editar informações adicionais do texto, Aceitar sugestão, Adicionar sugestão, Excluir sugestão, Votar em sugestão, Adicionar idioma para tradução, Adicionar vários idiomas para tradução, Realizar tradução automática, Excluir tradução existente, Baixar arquivo de tradução, Adicionar novo texto, Descartar verificação falha, Remover um texto, Editar textos, Editar texto quando sugestões são obrigatórias, Revisar textos, Editar textos de origem, Definir autor da tradução enviada, Sobrescrever textos existentes com envio, Enviar traduções, Acessar o repositório interno, Commitar alterações no repositório interno, Enviar alteração do repositório interno, Redefinir alterações no repositório interno, Atualizar o repositório interno, Visualizar localização do repositório upstream

Editar fonte

Publicar comentário, Usar sugestões automáticas, Editar informações adicionais do texto, Aceitar sugestão, Adicionar sugestão, Votar na sugestão, Baixar arquivo de tradução, Descartar verificação falha, Editar textos, Editar textos de origem, Sobrescrever textos existentes com envio, Enviar traduções

Adicionar sugestão

Adicionar sugestão

Acessar repositório

Baixar arquivo de tradução, Acessar o repositório interno, Ver a localização do repositório upstream

Gerenciar glossário

Adicionar entrada do glossário, Excluir entrada do glossário, Editar entrada do glossário, Adicionar terminologia do glossário, Enviar entrada do glossário

Usuário avançado

Publicar comentário, Adicionar entrada de glossário, Excluir entrada de glossário, Editar entrada de glossário, Enviar entradas de glossário, Usar sugestões automáticas, Aceitar sugestão, Adicionar sugestão, Excluir sugestão, Votar em sugestão, Adicionar idioma para tradução, Baixar arquivo de tradução, Descartar verificação falha, Editar textos, Editar textos de origem, Sobrescrever textos existentes com envio, Enviar traduções, Acessar o repositório interno, Visualizar localização do repositório upstream

Revisar textos

Publicar comentário, Resolver comentário, Usar sugestões automáticas, Aceitar sugestão, Adicionar sugestão, Votar em sugestão, Baixar arquivo de tradução, Descartar verificação falha, Editar textos, Editar texto quando sugestões são obrigatórias, Revisar textos, Sobrescrever textos existentes com envio, Enviar traduções

Traduzir

Publicar comentário, Usar sugestões automáticas, Aceitar sugestão, Adicionar sugestão, Votar em sugestão, Baixar arquivo de tradução, Descartar verificação falha, Editar textos, Sobrescrever textos existentes com envio, Enviar traduções

Gerenciar idiomas

Adicionar idioma para tradução, Adicionar vários idiomas para tradução, Excluir tradução existente, Baixar arquivo de tradução

Tradução automática

Executar tradução automática

Gerenciar memória de tradução

Excluir memória de tradução, Editar memória de tradução

Gerenciar capturas de tela

Adicionar captura de tela, Excluir captura de tela, Editar captura de tela

Gerenciar repositório

Bloquear o componente, impedindo traduções, Acessar o repositório interno, Commit alterações no repositório interno, Push alterações do repositório interno, Redefinir alterações no repositório interno, Update o repositório interno, View upstream repository location

Cobrança

Visualizar informações de cobrança

Adicionar novos projetos

Adicionar novos projetos

Lista de equipes

As equipes a seguir são criadas na instalação (ou após a execução de setupgroups) e você pode modificá-las livremente. No entanto, a migração as recriará se você as excluir ou renomear.

Convidados

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

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

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 dos projetos públicos para todos os usuários. Por padrão, todos os usuários são membros dessa 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

Criadores do projeto

Adicionado na versão 5.1.

Usuários que podem criar novos projetos.

Funções padrão: Adicionar novos projetos

Aviso

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

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 particular.

Dica

Você pode usar Convidando novos usuários para adicionar novos usuários.