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 em 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 guia Acesso da configuração (Operações ↓ Configurações) de cada projeto.
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 custom settings.
Ver também
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 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).
Essas funcionalidades estão disponíveis na página Controle de acesso, que pode ser acessada no projeto a partir do menu Operações ↓ Usuá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 possui administradores, que podem adicionar ou remover membros da equipe.
Sendo útil caso queira montar equipes autônomas.
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 convites está disponível para todo o site em management interface, na aba Users. Tanto os administradores do projeto quanto os administradores do site podem convidar múltiplos usuários de uma vez só, colando endereços de e-mail separados por espaços. Todos os convites criados em uma ação em massa utilizam a equipe selecionada, e os convites em massa para o site inteiro também aplicam o marcador de superusuário selecionado.
Site-wide user management is controlled by the global user.edit
permission. Unlike project access management, this is a trusted administrative
permission which allows editing user accounts across the whole instance,
including assigning site-wide teams and granting superuser status to the
managed account, even the caller’s own account.
Os convites em massa são processados individualmente. Endereços inválidos e endereços com convites já pendentes são ignorados, enquanto os convites válidos são criados e enviados normalmente.
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.
This project-scoped delegation is separate from the site-wide user.edit
permission. Membership in a project Administration team allows managing
access only for that project, while user.edit grants site-wide user
management in the Weblate UI and API and should be assigned only to fully
trusted site administrators.
Tokens de acesso por projeto¶
Adicionado na versão 4.10.
Você pode definir tokens de acesso no escopo do projeto na guia Acesso à API. Os tokens da API podem ter uma data de expiração definida e suas permissões podem ser personalizadas pelas associações da equipe, assim como pelos usuários.
Controle de acesso em todo o site¶
Nota
Este recurso não está disponível em 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 Personalizado 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 default teams:
Usuários (isso é feito por padrão pela automatic team assignment).
Revisores (se você estiver usando fluxo de revisão com revisores dedicados).
Gestores (se você deseja delegar a maioria das operações de gestão a outra pessoa).
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):
Remova 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 de Usuários.
Grupo Usuários¶ Seleção de idioma
Como definido
Idiomas
Todos, exceto Tcheco
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
Adicione 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).
Nota
Uma equipe não pode ter papéis atribuídos a ela; nesse caso, o acesso para visualizar o 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 visualizar o projeto (isso é usado na equipe padrão Visitantes, 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.
Âmbito das equipes¶
O âmbito 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.
Otherwise, if the team specifies any Projects, either by directly listing them or by having Projects selection set to a value like All public projects, all those permissions are applied to all the projects, which effectively grants the same permissions to access all projects unrestricted components.
The restrictions imposed by a team’s Languages are applied separately, when it’s verified if a user has access to perform certain actions. Namely, it’s applied only to actions directly related to the translation process itself like reviewing, saving translations, adding suggestions, etc.
Individual team memberships can further limit these permissions to selected languages. Leaving the per-member language limit empty applies no additional limit beyond the team language selection. The same language limit can be set when inviting new users to a project team. When a per-member language limit is set, the membership grants only permissions that can be evaluated for one of those languages. Project-wide, component-wide and global permissions from that team are not granted for that member.
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
foocom os componentes:foo/barefoo/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
fooincluindo ambos componentes nele:foo/barefoo/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 a Equipe, você pode especificar Atribuições automáticas, 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 Visitantes 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
Bulk inviting through the user interface creates invitations. Existing users still have to confirm the invitation before they become team members.
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¶
Assunto |
Permissão |
Funções integradas |
|---|---|---|
Alterações |
Baixar alterações |
Administração |
Comentários |
Publicar comentário |
Administração |
Edit source |
||
Power user |
||
Translation coordinator |
||
Revisar textos |
||
Translate |
||
Excluir comentário |
Administração |
|
Resolver comentário |
Administração |
|
Translation coordinator |
||
Revisar textos |
||
Componente |
Editar configurações do componente |
Administração |
Bloquear componente, evitando traduções |
Administração |
|
Manage repository |
||
Glossário |
Adicionar entrada no glossário |
Administração |
Manage glossary |
||
Power user |
||
Translation coordinator |
||
Adicionar terminologia ao Glossário |
Administração |
|
Manage glossary |
||
Translation coordinator |
||
Editar entrada do glossário |
Administração |
|
Manage glossary |
||
Power user |
||
Translation coordinator |
||
Excluir entrada do glossário |
Administração |
|
Manage glossary |
||
Power user |
||
Translation coordinator |
||
Enviar entradas ao glossário |
Administração |
|
Manage glossary |
||
Power user |
||
Translation coordinator |
||
Sugestões automáticas |
Usar sugestões automáticas |
Administração |
Edit source |
||
Power user |
||
Translation coordinator |
||
Revisar textos |
||
Translate |
||
Memória de tradução |
Editar memória de tradução |
Administração |
Manage translation memory |
||
Excluir memória de tradução |
Administração |
|
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 |
Translation coordinator |
||
Manage screenshots |
||
Editar captura de tela |
Administração |
|
Translation coordinator |
||
Manage screenshots |
||
Excluir captura de tela |
Administração |
|
Translation coordinator |
||
Manage screenshots |
||
Textos fonte |
Editar informações adicionais do texto |
Administração |
Edit source |
||
Textos |
Adicionar novo texto |
Administração |
Remover um texto |
Administração |
|
Descartar verificação com falha |
Administração |
|
Edit source |
||
Power user |
||
Translation coordinator |
||
Revisar textos |
||
Translate |
||
Editar textos |
Administração |
|
Edit source |
||
Power user |
||
Translation coordinator |
||
Revisar textos |
||
Translate |
||
Revisar textos |
Administração |
|
Translation coordinator |
||
Revisar textos |
||
Editar textos em massa |
Administração |
|
Bulk editing |
||
Editar texto quando as sugestões são forçadas |
Administração |
|
Translation coordinator |
||
Revisar textos |
||
Editar textos fonte |
Administração |
|
Edit source |
||
Power user |
||
Translation coordinator |
||
Sugestões |
Aceitar sugestão |
Administração |
Edit source |
||
Power user |
||
Translation coordinator |
||
Revisar textos |
||
Translate |
||
Adicionar sugestão |
Administração |
|
Edit source |
||
Adicionar sugestão |
||
Power user |
||
Translation coordinator |
||
Revisar textos |
||
Translate |
||
Excluir sugestão |
Administração |
|
Power user |
||
Translation coordinator |
||
Votar na sugestão |
Administração |
|
Edit source |
||
Power user |
||
Translation coordinator |
||
Revisar textos |
||
Translate |
||
Traduções |
Adicionar idioma para tradução |
Administração |
Power user |
||
Translation coordinator |
||
Manage languages |
||
Executar tradução automática |
Administração |
|
Automatic translation |
||
Excluir tradução existente |
Administração |
|
Manage languages |
||
Baixar arquivo de tradução |
Administração |
|
Edit source |
||
Access repository |
||
Power user |
||
Translation coordinator |
||
Revisar textos |
||
Translate |
||
Manage languages |
||
Adicionar vários idiomas para tradução |
Administração |
|
Manage languages |
||
Envios |
Definir autor da tradução enviada |
Administração |
Sobrescrever os textos existentes com os enviados |
Administração |
|
Edit source |
||
Power user |
||
Translation coordinator |
||
Revisar textos |
||
Translate |
||
Enviar traduções |
Administração |
|
Edit source |
||
Power user |
||
Translation coordinator |
||
Revisar textos |
||
Translate |
||
VCS |
Acessar repositório interno |
Administração |
Access repository |
||
Power user |
||
Translation coordinator |
||
Manage repository |
||
Fazer commit das alterações para o repositório interno |
Administração |
|
Manage repository |
||
Enviar alteração do repositório interno |
Administração |
|
Manage repository |
||
Redefinir as alterações no repositório interno |
Administração |
|
Manage repository |
||
Visualizar local do repositório upstream |
Administração |
|
Access repository |
||
Power user |
||
Translation coordinator |
||
Manage repository |
||
Atualizar o repositório interno |
Administração |
|
Manage repository |
||
Novidades |
Publicar novidades |
Administração |
Translation coordinator |
||
Excluir novidades |
Administração |
|
Translation coordinator |
||
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 |
||
Visualizar informações de equipe |
||
Gerenciar usuários |
||
Visualizar informações de usuário |
||
Gerenciar funções |
||
Visualizar informações de função |
||
Gerenciar novidades |
||
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 |
|
Editar fonte |
|
Adicionar sugestão |
|
Acessar repositório |
|
Gerenciar glossário |
|
Usuário avançado |
|
Coordenador de tradução |
|
Revisar textos |
|
Traduzir |
|
Gerenciar idiomas |
|
Bulk editing |
|
Tradução automática |
|
Gerenciar memória de tradução |
|
Gerenciar capturas de tela |
|
Gerenciar repositório |
|
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).Remova 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
- Visitantes
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.
By default, automatic team assignment makes all new accounts members of this team when they join.
Funções padrão: nenhuma
- Usuários
Equipe padrão para todos os usuários.
By default, automatic team assignment makes all new accounts members of this team when they join.
Funções padrão: Usuário avançado
- Revisores
Grupo para revisores (consulte Fluxos 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¶
If you want to use your Weblate installation in a less public manner, i.e. allow
new users on an invitational basis only, it can be done by configuring Weblate
in such a way that only known users have an access to it. In order to do so, you can set
REGISTRATION_OPEN to False to prevent registrations of any new
users, and set REQUIRE_LOGIN to True to require signing in to access
all the site pages. This is basically the way to lock your Weblate installation.
Additionally, changing DEFAULT_ACCESS_CONTROL to 100 will make
all newly created projects private, requiring explicit access to be granted.
Dica
Você pode usar Convidando novos usuários para adicionar novos usuários.
Expiration of user accounts¶
Each account can have an expiry set. After the expiration, the account will be automatically disabled. This is used for Tokens de acesso por projeto, but can be utilized for regular users as well.