Zugriffssteuerung

Weblate verfügt über ein sehr präzises Berechtigungssystem, um Benutzerrechte für die ganze Instanz oder nur in begrenztem Umfang zuzuweisen.

Geändert in Version 3.0: Vor Weblate 3.0 beruhte die Berechtigungsstruktur auf Django, ist nun aber eine speziell für Weblate erstellte. Sollten Sie eine ältere Version verwenden, konsultieren Sie bitte die Dokumentation zu jener Version, die Informationen hier gelten für sie nicht.

Einfache Zugriffssteuerung

Wenn Sie nicht die gesamte Weblate-Installation administrieren und nur Zugriff auf die Verwaltung bestimmter Projekte haben (wie bei Hosted Weblate), beschränken sich Ihre Möglichkeiten zur Verwaltung der Zugriffskontrolle auf folgende Einstellungen. Wenn Sie keine komplexe Einrichtung benötigen, sind diese für Sie ausreichend.

Projekt-Zugriffssteuerung

Bemerkung

Diese Funktion ist für Projekte im Freien Hosting-Angebot auf Hosted Weblate nicht verfügbar.

Sie können den Zugriff des Benutzers auf einzelne Projekte einschränken, indem Sie eine andere Zugriffskontrolle-Einstellung wählen. Verfügbare Optionen sind:

Öffentlich

Öffentlich sichtbar, übersetzbar für alle angemeldeten Benutzer.

Geschützt

Öffentlich sichtbar, aber nur ausgewählte Benutzer können übersetzen.

Privat

Nur ausgewählte Benutzer können es sehen und übersetzen.

Benutzerdefiniert

Die Funktionen von Benutzerverwaltung werden deaktiviert; standardmäßig ist es allen Benutzern untersagt, irgendwelche Aktionen am Projekt durchzuführen. Sie müssen alle Berechtigungen mit Benutzerdefinierte Zugriffssteuerung einrichten.

Die Zugriffssteuerung kann im Reiter Zugriff der Konfiguration (VerwaltungEinstellungen) des jeweiligen Projekts geändert werden.

../_images/project-access.png

Der Standardwert kann durch DEFAULT_ACCESS_CONTROL geändert werden.

Bemerkung

Auch bei Privat-Projekten werden einige Informationen über Ihr Projekt offengelegt: Statistik und Sprachzusammenfassung für die gesamte Instanz enthalten trotz der Einstellung der Zugriffskontrolle Zählungen für alle Projekte. Ihr Projektname und andere Informationen können dadurch nicht offengelegt werden.

Bemerkung

Der tatsächliche Satz an Berechtigungen, der standardmäßig für Benutzer in den Projekten Public, Protected und Private verfügbar ist, kann vom Administrator der Weblate-Instanz mit custom settings neu definiert werden.

Siehe auch

Zugriffssteuerung

Verwaltung der Zugriffssteuerung nach Projekt

Benutzer mit der Berechtigung Projektzugriff verwalten (siehe Privilegien) können Benutzer in Projekten verwalten, indem sie die Benutzer zu Teams hinzufügen. Sie können Benutzer einer der folgenden Gruppen zuordnen.

Folgende Teams werden für jedes Projekt automatisch gebildet:

Für Public, Protected und Private Projekte:

Verwaltung

Enthält alle für das Projekt verfügbaren Berechtigungen.

Überprüfung (nur wenn Review Workflow eingeschaltet ist)

Darf Übersetzungen bei der Überprüfung freigeben.

Nur für geschütze und private Projekte:

Übersetzen

Darf das Projekt übersetzen und offline erstellte Übersetzungen hochladen.

Quellcode

Kann Ausgangszeichenketten (wenn in den project settings erlaubt) und Infos zu Ausgangszeichenketten bearbeiten.

Sprachen

Darf übersetzte Sprachen verwalten (Übersetzungen hinzufügen oder entfernen).

Glossar

Darf das Glossar verwalten (Einträge ergänzen oder entfernen oder hochladen).

Speicher

Darf den Übersetzungsspeicher verwalten.

Bildschirmfotos

Darf Bildschirmfotos verwalten (sie hinzufügen, entfernen und mit Ausgangszeichenketten verbinden).

Automatische Übersetzung

Darf automatische Übersetzungen verwenden.

VCS

Darf das VCS verwalten und auf das exportierte Repository zugreifen.

Abrechnung

Darf auf Abrechnungsdaten und -einstellungen zugreifen (siehe Abrechnung).

../_images/manage-users.png

Diese Funktionen sind auf der Seite Zugriffssteuerung verfügbar, die über das Projektmenü VerwaltungBenutzer aufgerufen werden kann.

Teamadministratoren

Neu in Version 4.15.

Each team can have team administrator, who can add and remove users within the team. This is useful in case you want to build self-governed teams.

Neue Benutzereinladung

Neben dem Hinzufügen eines bestehenden Benutzers zum Projekt ist es auch möglich, neue einzuladen. Jeder neue Benutzer wird sofort erstellt, aber das Konto bleibt bis zur Anmeldung mit einem Link in der Einladung, die per E-Mail gesendet wird, inaktiv. Dazu sind keine standortweiten Berechtigungen erforderlich, eine Zugriffsverwaltungsberechtigung für den Umfang des Projekts (z. B. eine Mitgliedschaft im Team Administration) wäre ausreichend.

Hinweis

Wenn der eingeladene Benutzer die Gültigkeit der Einladung versäumt hat, kann er sein Passwort mit der eingeladenen E-Mail-Adresse im Formular zum Zurücksetzen des Passworts festlegen, da das Konto bereits erstellt wurde.

Neu in Version 3.11: Es ist möglich, die E-Mail für Benutzereinladungen erneut zu senden (wodurch zuvor gesendete Einladungen ungültig werden).

Die gleiche Art von Einladungen sind Plattformweit über die management interface auf der Registerkarte Users verfügbar.

Benutzer sperren

Neu in Version 4.7.

Für den Fall, dass sich einige Benutzer in Ihrem Projekt schlecht benehmen, haben Sie die Möglichkeit, sie für Beiträge zu sperren. Der gesperrte Benutzer kann das Projekt immer noch sehen, wenn er die entsprechenden Berechtigungen hat, aber er kann nichts dazu beitragen.

Berechtigungsverwaltung pro Projekt

Sie können Ihre Projekte auf Protected oder Private einstellen und manage users pro Projekt in der Weblate-Benutzeroberfläche.

By default this prevents Weblate from granting access provided by Users and Viewers default teams due to these teams’ own configuration. This doesn’t prevent you from granting permissions to those projects site-wide by altering default teams, creating a new one, or creating additional custom settings for individual component as described in Benutzerdefinierte Zugriffssteuerung below.

Einer der Hauptvorteile der Verwaltung von Berechtigungen über die Weblate-Benutzeroberfläche ist, dass Sie sie an andere Benutzer delegieren können, ohne ihnen das Superuser-Recht zu geben. Dazu, fügen Sie sie zum Administration Team des Projektes hinzu.

Benutzerdefinierte Zugriffssteuerung

Bemerkung

Diese Funktion ist für Projekte im Freien Hosting-Angebot auf Hosted Weblate nicht verfügbar.

The permission system is based on teams and roles, where roles define a set of permissions, and teams link them to users and translations, see Users, roles, teams, and permissions for more details.

Die leistungsstärksten Funktionen der Zugriffssteuerung von Weblate sind bis jetzt nur über das Django admin interface erreichbar. Sie können es zur Verwaltung der Berechtigungen jedes Projekts benutzen. Sie müssen es nicht zwingend auf Custom access control umstellen, um es zu verwenden. Sie müssen allerdings Superuser-Rechte besitzen, um es zu nutzen.

Wenn Sie nicht an den Details der Implementierung interessiert sind und nur eine einfache Konfiguration auf der Grundlage der Standardeinstellungen erstellen möchten oder keinen plattformweiten Zugriff auf die gesamte Weblate-Installation haben (wie bei Hosted Weblate), lesen Sie bitte den Abschnitt Einfache Zugriffssteuerung.

Allgemeine Einstellungen

Dieser Abschnitt enthält einen Überblick über einige gängige Konfigurationen, die Sie interessieren könnten.

Plattformweite Rechteverwaltung

To manage permissions for a whole instance at once, add users to appropriate default teams:

  • Users (this is done by default by the automatic team assignment).

  • Prüfer (wenn Sie review workflow mit eigenen Prüfern verwenden).

  • Manager (wenn Sie die meisten Verwaltungsaufgaben an jemand anderen delegieren wollen).

You should keep all projects configured as Public (see Projekt-Zugriffssteuerung), otherwise the site-wide permissions provided by membership in the Users and Reviewers teams won’t have any effect.

You may also grant some additional permissions of your choice to the default teams. For example, you may want to give a permission to manage screenshots to all the Users.

You can define some new custom teams as well. If you want to keep managing your permissions site-wide for these teams, choose an appropriate value for the Project selection (e.g. All projects or All public projects).

Eigene Berechtigungen für Sprachen, Komponenten oder Projekte

You can create your own dedicated teams to manage permissions for distinct objects such as languages, components, and projects. Although these teams can only grant additional privileges, you can’t revoke any permission granted by site-wide or per-project teams by adding another custom team.

Beispiel:

Wenn Sie (aus welchen Gründen auch immer) die Übersetzung in eine bestimmte Sprache (sagen wir mal Tschechisch) nur einer geschlossenen Gruppe von zuverlässigen Übersetzern erlauben wollen, während die Übersetzungen in andere Sprachen öffentlich bleiben, müssen Sie das tun:

  1. Remove the permission to translate Czech from all the users. In the default configuration this can be done by altering the Users default team.

    Gruppe Benutzer

    Sprachauswahl

    Wie vorgegeben

    Sprachen

    Alle außer Tschechisch

  1. Add a dedicated team for Czech translators.

    Gruppe Tschechische Übersetzer

    Rollen

    Hauptbenutzer

    Projektauswahl

    Alle öffentlichen Projekte

    Sprachauswahl

    Wie vorgegeben

    Sprachen

    Tschechisch

  1. Add users you wish to give the permissions to into this team.

Wie Sie sehen, ist die Verwaltung von Berechtigungen auf diese Weise zwar sehr leistungsfähig, kann aber auch ziemlich mühsam sein. Sie können sie nicht an einen anderen Benutzer delegieren, es sei denn, Sie erteilen Superuser-Berechtigungen.

Users, roles, teams, and permissions

Die Legitimierungsmodelle bestehen aus verschiedenen Objekten:

Berechtigung

Durch Weblate bestimmte individuelle Berechtigung. Sie können keine individuellen Berechtigungen zuteilen, dies kann nur durch Rollenzuordnungen geschehen.

Rolle

Eine Rolle bestimmt eine Zusammenstellung von Genehmigungen. Dies ermöglicht die Wiederverwendung dieser Zusammenstellungen an verschiedenen Orten, zur Vereinfachung der Verwaltung.

Benutzer

User can belong to several teams.

Gruppe

Die Gruppe verbindet Rollen, Benutzer und Legitimierungsobjekte (Projekte, Sprachen, und Komponentenlisten).

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

Bemerkung

A team can have no roles assigned to it, in that case access to browse the project by anyone is assumed (see below).

Kontrolle des Zugriffs auf ein Projekt

A user has to be a member of a team linked to the project, or any component inside that project. Having membership is enough, no specific permissions are needed to browse the project (this is used in the default Viewers team, see List of teams).

Kontrolle des Zugriffs auf eine Komponente

Ein Benutzer kann auf nicht eingeschränkte Komponenten zugreifen, sobald er auf das Projekt der Komponente zugreifen kann (und über alle Rechte verfügt, die dem Benutzer für das Projekt gewährt wurden). Wenn Restricted access eingeschaltet ist, erfordert der Zugriff auf die Komponente explizite Berechtigungen für die Komponente (oder eine Komponentenliste, in der die Komponente enthalten ist).

Scope of teams

The scope of the permission assigned by the roles in the teams are applied by the following rules:

  • If the team specifies any Component list, all the permissions given to members of that team are granted for all the components in the component lists attached to the team, and an access with no additional permissions is granted for all the projects these components are in. Components and Projects are ignored.

  • If the team specifies any Components, all the permissions given to the members of that team are granted for all the components attached to the team, and an access with no additional permissions is granted for all the projects these components are in. Projects are ignored.

  • 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 an 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.

Hinweis

Verwenden Sie Sprachauswahl oder Projektauswahl um automatisch alle Sprachen oder Projekte einzuschließen.

Beispiel:

Let’s say there is a project foo with the components: foo/bar and foo/baz and the following team:

Gruppe ` Administrator-Prüfer Spanisch`

Rollen

Review Strings, Repository verwalten

Komponenten

foo/bar

Sprachen

Spanisch

Members of that team will have following permissions (assuming the default role settings):

  • Allgemeiner Zugriff (zur Durchsicht) auf das gesamte Projekt foo einschließlich der beiden Komponenten darin: foo/bar und foo/baz.

  • Zeichenketten in der spanischen Übersetzung von foo/bar überprüfen (nirgendwo sonst).

  • VCS für das gesamte foo/bar-Repository verwalten, z. B. ausstehende Änderungen von Übersetzern für alle Sprachen übertragen.

Automatic team assignments

On the bottom of the Group editing page in the Django admin interface, you can specify Automatic team 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. In order to do so, you will probably want to keep the default value (^.*$) in the regular expression field. 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.

Bemerkung

Automatic team assignment to Users and Viewers is always recreated when upgrading from one Weblate version to another. If you want to turn it off, set the regular expression to ^$ (which won’t match anything).

Bemerkung

As for now, there is no way to bulk-add already existing users to some team via the user interface. For that, you may resort to using the REST API.

Default teams and roles

After installation, a default set of teams is created (see List of teams).

These roles and teams are created upon installation. The built-in roles are always kept up to date by the database migration when upgrading. You can’t actually change them, please define a new role if you want to define your own set of permissions.

Liste der Berechtigungen und integrierten Rollen

Zielgruppe

Berechtigung

Rollen

Abrechnung (siehe Abrechnung)

Abrechnungsinformationen anzeigen

Verwaltung, Abrechnung

Änderungen

Änderungen herunterladen

Verwaltung

Kommentare

Kommentar erstellen

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

Kommentar löschen

Verwaltung

Kommentar lösen

Verwaltung, Zeichenketten überprüfen

Komponente

Komponenteneinstellungen bearbeiten

Verwaltung

Komponente sperren, um Übersetzungen zu verhindern

Verwaltung

Glossar

Glossareintrag hinzufügen

Verwaltung, Glossar verwalten, Hauptbenutzer

Glossareintrag bearbeiten

Verwaltung, Glossar verwalten, Hauptbenutzer

Glossareintrag löschen

Verwaltung, Glossar verwalten, Hauptbenutzer

Glossareinträge hochladen

Verwaltung, Glossar verwalten, Hauptbenutzer

Automatische Vorschläge

Automatische Vorschläge verwenden

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

Übersetzungsspeicher

Übersetzungsspeicher bearbeiten

Verwaltung, Übersetzungsspeicher verwalten

Übersetzungsspeicher löschen

Verwaltung, Übersetzungsspeicher verwalten

Projekte

Projekteinstellungen bearbeiten

Verwaltung

Projektzugang verwalten

Verwaltung

Auswertungen

Berichte herunterladen

Verwaltung

Bildschirmfotos

Bildschirmfoto hinzufügen

Verwaltung, Bildschirmfotos verwalten

Bildschirmfoto bearbeiten

Verwaltung, Bildschirmfotos verwalten

Bildschirmfoto löschen

Verwaltung, Bildschirmfotos verwalten

Ausgangszeichenketten

Zusätzliche Zeichenketteninformationen bearbeiten

Verwaltung, Quelle bearbeiten

Zeichenketten

Neue Zeichenkette hinzufügen

Verwaltung

Entfernen einer Zeichenkette

Verwaltung

Fehlerhafte Prüfung ablehnen

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

Zeichenkette bearbeiten

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

Zeichenketten überprüfen

Verwaltung, Zeichenketten überprüfen

Zeichenkette bearbeiten, wenn Vorschläge erzwungen werden

Verwaltung, Zeichenketten überprüfen

Ausgangszeichenketten bearbeiten

Verwaltung, Quelle bearbeiten, Hauptbenutzer

Vorschläge

Vorschlag annehmen

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

Vorschlag hinzufügen

Verwaltung, Quelle bearbeiten, Übersetzungsvorschlag hinzufügen, Power User, Strings überprüfen, Übersetzen

Vorschlag löschen

Verwaltung, Hauptbenutzer

Abstimmung über Vorschlag

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

Übersetzungen

Sprache zur Übersetzung hinzufügen

Verwaltung, Hauptbenutzer, Sprachen verwalten

Automatische Übersetzung durchführen

Verwaltung, Automatische Vorschläge

Vorhandene Übersetzung löschen

Verwaltung, Sprachen verwalten

Übersetzungsdatei herunterladen

Verwaltung, Quelle bearbeiten, Auf das Repository zugreifen, Hauptbenutzer, Strings überprüfen, Übersetzen, Sprachen verwalten

Mehrere Sprachen zur Übersetzung hinzufügen

Verwaltung, Sprachen verwalten

Uploads

Autor der hochgeladenen Übersetzung definieren

Verwaltung

Vorhandene Zeichenketten mit Hochladung überschreiben

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

Übersetzungen hochladen

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

VCS

Zugriff auf das interne Repository

Administration, Access repository, Power user, Manage repository

Commit für Änderungen am internen Repository durchführen

Verwaltung, Repository verwalten

Änderung aus dem internen Repository pushen

Verwaltung, Repository verwalten

Änderungen im internen Repository zurücksetzen

Verwaltung, Repository verwalten

Speicherort des Upstream-Repositorys anzeigen

Administration, Access repository, Power user, Manage repository

Aktualisierung des internen Repositorys

Verwaltung, Repository verwalten

Plattformweite Berechtigungen

Managementoberfläche nutzen

Neue Projekte hinzufügen

Sprachdefinitionen hinzufügen

Sprachdefinitionen verwalten

Teams verwalten

Benutzer verwalten

Rollen verwalten

Mitteilungen verwalten

Übersetzungsspeicher verwalten

Übersetzungsmaschinen verwalten

Komponentenlisten verwalten

Bemerkung

Plattformweite Berechtigungen werden keiner Standardrolle gewährt. Diese sind sehr mächtig und kommen dem Superuser-Status recht nahe. Die meisten von ihnen betreffen alle Projekte in Ihrer Weblate-Installation.

List of teams

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.

Gäste

Legt die Berechtigungen für nicht authentifizierte Benutzer fest.

This team only contains anonymous users (see ANONYMOUS_USER_NAME).

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

Standard-Rollen: Vorschlag hinzufügen, Auf Repository zugreifen

Betrachter

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

By default, automatic team assignment makes all new accounts members of this team when they join.

Standard-Rollen: keine

Benutzer

Default team for all users.

By default, automatic team assignment makes all new accounts members of this team when they join.

Standard-Rollen: Hauptbenutzer

Prüfer

Gruppe für Prüfer (siehe Übersetzungsabläufe).

Standard-Rollen: Zeichenketten überprüfen

Manager

Gruppe für Administratoren.

Standard-Rollen: Verwaltung

Warnung

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

Zusätzliche Zugriffsbeschränkungen

Wenn Sie Ihre Weblate-Installation weniger öffentlich nutzen möchten, d.h. neue Benutzer nur auf Einladungsbasis zulassen möchten, können Sie Weblate so konfigurieren, dass nur bekannte Benutzer darauf zugreifen können. Um dies zu tun, müssen Sie REGISTRATION_OPEN auf False setzen, um das registrieren neuer Nutzer zu verhindern, und REQUIRE_LOGIN auf /.* damit Sie sich anmelden müssen, um auf alle Seiten der Website zugreifen zu können.

Hinweis

Sie können integrierte :Neue Benutzereinladung verwenden, um neue Benutzer hinzuzufügen.