Control de acceso

Distinto en la versión 3.0: Hasta Weblate 3.0, el sistema de privilegios se basaba en Django, pero ahora se ha construido específicamente para Weblate. Si utiliza una versión antigua, consulte la documentación que corresponda a esa versión, ya que la información que aquí se ofrece no será relevante.

Weblate incluye un sistema de privilegios detallado que permite asignar permisos de usuario en toda la instalación o en un ámbito limitado.

El sistema de permisos está basado en grupos y roles, donde los roles definen conjuntos de permisos, y los grupos les asignan a los usuarios y traducciones. Ver Users, roles, groups and permissions para más detalles.

Después de la instalación se crea un nuevo conjunto de grupos, y puedes usarlos para asignar roles de usuarios para toda la instancia (ver Default groups and roles). Además, cuando Control de acceso al proyecto está activado, puedes asignar los usuarios a proyectos de traducción específicos. Se pueden archivar más configuraciones de grano fino usando Control de acceso personalizado.

Configuraciones comunes

Restringir Weblate

Para cerrar por completo su Weblate, puede servirse de REQUIRE_LOGIN, que fuerza a los usuarios a acceder a sus cuentas, y REGISTRATION_OPEN, para evitar más altas.

Permisos para todo el sitio

Para gestionar los permisos de toda una instalación, basta con añadir los usuarios a los grupos Usuarios (esto se hace de manera predeterminada a través del Asignaciones de grupo automático), Revisores y Supervisores. Mantenga todos los proyectos configurados como Público (vea Control de acceso al proyecto).

Permisos por proyecto

Nota

Esta funcionalidad no está disponible para proyectos que usan el plan Libre en Hosted Weblate.

Defina sus proyectos como Protegido o Privado y gestione a los usuarios por proyecto en la interfaz de Weblate.

Permisos personalizados para idiomas, componentes o proyectos

Nota

Esta funcionalidad no está disponible para proyectos que usan el plan Libre en Hosted Weblate.

Los miembros reciben cualesquier permisos que se hayan asignado a los grupos a los que pertenecen, de manera que es posible conceder varios permisos de una vez a los usuarios. Cree grupos y asígnelos a un proyecto, un componente o un idioma. Puede poner a los usuarios en varios grupos, y los permisos de estos pueden coincidir entre sí.

Granting any selected permissions based on project, component or language set. To achieve this, create a new group (e.g. Czech translators) and configure it for a given resource. Any assigned permissions will be granted to members of that group for selected resources.

This will work just fine without additional setup, if using per project permissions. For permissions on the whole instance, you will probably also want to remove these permissions from the Users group, or change automatic assignment of all users to that group (see Asignaciones de grupo automático).

Control de acceso al proyecto

Nota

By turning on access control, all users are prohibited from accessing anything within a given project, unless you add the permissions for them to do just that.

Nota

Esta funcionalidad no está disponible para proyectos que usan el plan Libre en Hosted Weblate.

Limit user’s access to individual projects by selecting a different access control variation on the Access tab in the Settings of each respective project. This automatically creates several groups for the project in question, see Grupos predefinidos.

El control de acceso puede establecerse a:

Público

Visible públicamente, traducible por todos los usuarios que hayan accedido a sus cuentas

Protegido

Visible públicamente y traducible solo por usuarios seleccionados

Privado

Solo visible para, y traducible por, usuarios seleccionados

Personalizado

La administración de Django gestiona los usuarios, Weblate no; vea Control de acceso personalizado.

../_images/project-access.png

Grant access to a project by adding the privilege either directly to an user, or group of users in the Django admin-interface, or by using user management on the project page, as described in Gestionar el control de acceso por proyecto.

Nota

Aunque se haya activado el control de acceso, determinados datos sobre su proyecto estarán disponibles:

  • Estadísticas de toda la instalación, incluidos recuentos para todos los proyectos.

  • Language summary for the whole instance, including counts for all projects.

Asignaciones de grupo automático

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

Automatic group assignment to Users and Viewers is always recreated during migrations. If you want to turn it off, set the regular expression to ^$ (which will never match).

Users, roles, groups and permissions

Los modelos de autenticación consisten de varios objetos:

Permiso

Individual permissions defined by Weblate. Permissions can not be assigned to users. This can only be done through assignment of roles.

Role

A Role defines a set of permissions. This allows reuse of these sets in several places, making the administration easier.

Usuario

Los usuarios pueden ser miembros de varios grupos.

Grupo

Groups connect roles, users and authentication objects (projects, languages and component lists).

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

Comprobación de permisos

Whenever a permission is checked to decide whether one is able to perform a given action, the check is carried out according to scope, and the following checks are performed in this order:

  1. The group Component list is matched against accessed component or project (for project-level access).

  2. The group Components is matched against accessed component or project (for project-level access).

  3. The group Projects is matched against accessed project.

Como podrá apreciar, otorgar acceso a un componente también da al usuario acceso al proyecto en que está.

Nota

Only the first rule will be used. So if you set all of Component list, Components and Project, only Component list will be applied.

An additional step is performed if checking permission for the translation:

  1. The group Languages is matched against accessed translations, it is ignored for component- or project-level access.

Consejo

Use Language selection or Project selection to automate inclusion of all languages or projects.

Comprobar el acceso a un proyecto

Cada usuario debe pertenecer a un grupo enlazado ya sea al proyecto o a cualquier componente con que cuente. Basta con ser miembro; no hace falta ningún permiso concreto para acceder a un proyecto (esto se usa en el grupo predeterminado Lectores; vea Default groups and roles).

Comprobar el acceso a un componente

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

Gestionar usuarios y 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.

Gestionar el control de acceso por proyecto

Nota

Esta función es aplicable solo a los proyectos que utilizan el control de acceso; vea Control de acceso al proyecto.

Users with the Manage project access privilege (see Control de acceso) can also manage users in projects with access control turned on through the project page. The interface allows you to:

  • Añadir usuarios existentes al proyecto

  • Invitar usuarios nuevos al proyecto

  • Cambiar permisos de usuario

  • Revocar acceso de usuario

Nuevo en la versión 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 viene con un conjunto de grupos predefinidos para los proyectos, a los cuales es posible asignar usuarios.

Translate

Puede traducir el proyecto y cargar traducciones realizadas sin conexión.

Sources

Can edit source strings in Componentes monolingües and source string info.

Languages

Puede gestionar los idiomas traducibles (añadir o quitar traducciones).

Glossary

Puede gestionar el glosario (añadir o quitar entradas, o bien cargarlas).

Memory

Puede gestionar la memoria de traducción.

Screenshots

Puede gestionar las capturas de pantalla (añadirlas o eliminarlas, así como asociarlas a cadenas de origen).

Review

Puede aprobar traducciones durante la revisión.

VCS

Puede gestionar el sistema de control de versiones y acceder al repositorio exportado.

Administration

Cuenta con todos los permisos disponibles en el proyecto.

Billing

Puede acceder a la información de facturación (vea Facturación).

Control de acceso 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.

Advertencia

By turning this on, Weblate will remove all Control de acceso al proyecto it has created for this project. If you are doing this without admin permission from the instance, you will instantly lose your access to manage the project.

Default groups and roles

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 privilegios

Facturación (vea Facturación)

Ver información de facturación [Administración, Facturación]

Cambios

Descargar cambios [Administración]

Comentarios

Post comment [Administration, Edit source, Power user, Review strings, Translate]

Eliminar comentario [Administración]

Componente

Editar configuración de componentes [Administración]

Lock component, preventing translations [Administration]

Glosario

Añadir entrada de glosario [Administración, Gestionar glosario, Usuario avanzado]

Editar entrada de glosario [Administración, Gestionar glosario, Usuario avanzado]

Eliminar entrada de glosario [Administración, Gestionar glosario, Usuario avanzado]

Cargar entradas de glosario [Administración, Gestionar glosario, Usuario avanzado]

Sugerencias automáticas

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

Memoria de traducción

Edit translation memory [Administration, Manage translation memory]

Delete translation memory [Administration, Manage translation memory]

Proyectos

Editar configuración del proyecto [Administración]

Gestionar acceso al proyecto [Administración]

Informes

Download reports [Administration]

Capturas de pantalla

Add screenshot [Administration, Manage screenshots]

Edit screenshot [Administration, Manage screenshots]

Delete screenshot [Administration, Manage screenshots]

Cadenas de origen

Edit additional string info [Administration, Edit source]

Cadenas

Add new string [Administration]

Remove a string [Administration]

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

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

Review strings [Administration, Review strings]

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

Edit source strings [Administration, Edit source, Power user]

Sugerencias

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]

Traducciones

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

Perform automatic translation [Administration, Manage languages]

Delete existing translation [Administration, Manage languages]

Add several languages for translation [Administration, Manage languages]

Cargas

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]

Sistema de control de versiones

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

Commit changes to the internal repository [Administration, Manage repository]

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

Reset changes in the internal repository [Administration, Manage repository]

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

Actualizar el repositorio interno [Administración, Gestionar repositorio]

Privilegios en todo el sitio

Utilizar interfaz de gestión

Añadir proyectos nuevos

Añadir definiciones de idioma

Gestionar definiciones de idioma

Gestionar grupos

Administrar usuarios

Gestionar roles

Gestionar anuncios

Gestionar memoria de traducción

Gestionar 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

The following groups 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.

Guests

Define los permisos que tendrán los usuarios no autenticados.

Este grupo contiene solo usuarios anónimos (vea ANONYMOUS_USER_NAME).

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

Default roles: Add suggestion, Access repository

Lectores

This role ensures visibility of public projects for all users. By default all users are members of this group.

By default Asignaciones de grupo automático makes all new accounts members of this group when they join.

Default roles: none

Users

Grupo predeterminado para todos los usuarios.

By default Asignaciones de grupo automático makes all new accounts members of this group when they join.

Default roles: Power user

Revisores

Group for reviewers (see Flujos de trabajo de traducción).

Default roles: Review strings

Supervisores

Grupo para administradores.

Default roles: Administration

Advertencia

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.