Керування доступом¶
Weblate comes with a fine-grained privilege system to assign user permissions for the whole instance with predefined roles, or by assigning one or more groups of permissions to users for everything, or individual projects, components, glossaries, and so on.
Керування доступом на рівні проєкту¶
Примітка
Проєкти, які користуються тарифним планом gratis Libre на Hosted Weblate, завжди Відкриті. Ви можете перемкнутися на платний план, якщо хочете обмежити доступ до вашого проєкту.
Limit user access to individual projects by selecting a different Керування доступом setting. The available options are:
- Відкритий
Видно всім.
Будь-який авторизований користувач може брати участь.
Сховище VCS може бути відкритим для всіх.
Виберіть цей варіант для проєктів з відкритим кодом або якщо ваш екземпляр Weblate є приватним або таким, доступ до якого заблоковано.
- Захищений
Видно всім.
Тільки обрані користувачі можуть брати участь.
Лише вибрані користувачі можуть отримати доступ до сховища VCS.
Виберіть цей варіант, якщо вам потрібна більше доступність, але ви хочете зберігати контроль над тим, хто бере участь у перекладі.
- Приватний
Доступно лише вибраним користувачам.
Тільки обрані користувачі можуть брати участь.
Лише вибрані користувачі можуть отримати доступ до сховища VCS.
Виберіть цей варіант для проєктів, які мають бути повністю закритими.
- Нетиповий
Доступно лише вибраним користувачам.
Тільки обрані користувачі можуть брати участь.
Лише вибрані користувачі можуть отримати доступ до сховища VCS.
Недоступний на Hosted Weblate.
Вам доведеться налаштувати усі права доступу за допомогою варіанта Контроль доступу на всьому сайті.
Виберіть цей варіант на вашому власному екземплярі Weblate, якщо хочете визначити доступ у спеціалізований, точно запрограмований спосіб.
Керування доступом може бути змінено на вкладці Доступ налаштувань (Управління ↓ Налаштування) відповідного проєкту.
The default can also be changed by setting DEFAULT_ACCESS_CONTROL
.
Примітка
Even Private project statistics are counted into the site-wide statistics and language summary. This does not reveal project names or any other info.
Примітка
Instance administrators can modify the default permission sets available to users in Public, Protected, and Private projects by using custom settings.
Дивись також
Керування правами доступу на рівні проєкту¶
Для проєктів Public, Protected і Private:
Granting users Manage project access (see Список прав доступу) allows them to assign other users in Public, Protected and Private (but not Custom) projects via adding them to teams.
These are the default teams provided with Weblate; teams can be added or modified by users with sufficient privileges:
- Адміністрування
All available permissions for the project.
- Перевірка
Approve translations in a review.
Available only if review workflow is on.
Лише для проєктів Protected і Private:
- Переклад
Translate the project and upload translations made offline.
- Джерела
Edit source strings (if allowed in the project settings) and source-string info.
- Мови
Manage translated languages (add or remove translations).
- Глосарій
Manage glossary (add, remove, and upload entries).
- Пам’ять
Manage translation memory.
- Знімки екрана
Manage screenshots (add, remove, and associate them to source strings).
- Автоматичний переклад
Може використовувати автоматичний переклад.
- VCS
Manage VCS and access the exported repository.
- Оплата
Access billing info and settings (see Оплата).
These features are available on the Access control page in the project’s menu Manage ↓ Users.
Підказка
You can limit teams to languages or components, and assign them designated access roles (see Список прав доступу).
Адміністратори команд¶
Added in version 4.15.
У кожної команди може бути адміністратор, який додає і вилучає користувачів у команді. Це корисно, якщо ви хочете побудувати самоврядні команди.
Запрошення нових користувачів¶
У відповідь на додавання наявних користувачів їм буде надіслано запрошення для підтвердження. За допомогою REGISTRATION_OPEN
адміністратор також може запросити нових користувачів електронною поштою. Запрошені користувачі мають завершити процес реєстрації для отримання доступу до проєкту.
Для надсилання запрошення не потрібні права доступу на рівні сайту, достатньо буде прав доступу до керування доступом на рівні проєкту (наприклад, членства у команді Administration).
Підказка
Якщо запрошений користувач пропустить строк чинності запрошення, доведеться створювати нове запрошення.
Подібний тип запрошень доступний і на рівні сайта з інтерфейсу керування на вкладці Користувачі.
Змінено в версії 5.0: Нові версії Weblate не створюватимуть облікові записи і не додаватимуть записи користувачів до команд автоматично. Ці дії буде виконано лише після підтвердження з боку користувача.
Блокування користувачів¶
Added in version 4.7.
If users misbehave in your project, you can block them from contributing. With the relevant permissions blocked, users can still see the project, but won’t be able to contribute.
Керування правами доступу на рівні проєктів¶
You can set your projects to Protected or Private (see Керування доступом на рівні проєкту), and manage users access per-project.
Типово, це запобігає наданню доступу типовим командам Users and Viewers через власні налаштування цих команд. Це не заборонить вам надавати права доступу до цих проєктів на рівня сайта шляхом зміни параметрів типових групи, створення нової команди або створення додаткових нетипових параметрів для окремого складника, як це описано у розділі Контроль доступу на всьому сайті.
Однією з головних переваг керування правами доступу з інтерфейсу користувача Weblate є те, що ви можете делегувати його іншим користувачам без надання їм прав доступу надкористувача. Для цього додайте користувачів до команди Administration проєкту.
Контроль доступу на всьому сайті¶
Примітка
Ця можливість є недоступною на Hosted Weblate.
The permission system is based on roles defining a set of permissions, and teams linking roles to users and translations, read Користувачі, ролі, команди і права доступу for more details.
Найпотужніші можливості поточної версії системи керування доступом Weblate можна налаштувати за допомогою адміністративного інтерфейсу Django. Цей інтерфейс надає змогу керувати правами доступу до будь-якого проєкту. Щоб скористатися ним, не обов’язково перемикатися на керування доступом Custom. Втім, що скористатися цим вам знадобляться права доступу надкористувача.
Якщо вам не цікаві подробиці реалізації і ви просто хочете створити достатньо прості налаштування на основі типових або не маєте доступу на рівні сайта до усього встановленого екземпляра Weblate (зокрема на Hosted Weblate), будь ласка, зверніться до розділу Керування правами доступу на рівні проєкту.
Керування правами доступу на рівні сайта¶
Для керування правами доступами для усього екземпляра одразу додайте користувачів до відповідних типових команд:
Users (це виконується типово автоматичною прив’язкою до команд).
Reviewers (якщо ви використовуєте процес із рецензуванням із спеціалізованими рецензентами).
Managers (якщо ви хочете делегувати більшість дій з керування комусь іншому).
Вам слід зберігати налаштовування усіх проєктів як Public (див. Керування доступом на рівні проєкту). Якщо цього не зробити, загальносайтові права доступу, які надаються членством у командах Users і Reviewers, ні на що не вплинуть.
Крім того, ви можете надати бажані додаткові права доступу типовим командам. Наприклад, ви можете надати права доступу для керування знімками вікон усім учасникам групи Users.
Ви також маєте визначити деякі нові нетипові команди. Якщо ви хочете зберегти керування вашими загальносайтовими правами доступу для цих команд, виберіть відповідне значення для параметра Вибір проєкту (наприклад, Усі проєкти або Усі публічні проєкти).
Нетипові права доступу до мов, складників або проєктів¶
Ви можете створити ваші власні спеціалізовані команди для керування правами доступу для певних об’єктів, зокрема мов, складників та проєктів. Хоча ці команди можуть додавати лише додаткові права доступу — ви не можете відкликати будь-які права доступу за загальносайтовими командами або командами проєкту додаванням ще однієї нетипової команди.
Приклад:
Restricting translation to Czech to a selected set of translators, (while keeping translations to other languages public):
Remove the permission to translate Czech from all users. In the default configuration this can be done by altering the Users default team.
¶ Вибір мови
As defined
Мови
Усі, окрім Czech
Додати спеціалізовану команду для перекладачів Czech.
¶ Ролі
Power users
Вибір проєкту
All public projects
Вибір мови
As defined
Мови
Czech
Додати користувачів, яким ви хочете надати права доступу, до цієї команди.
Management permissions this way is powerful, but can be quite a tedious job. You can only delegate it to other users by granting them Superuser status.
Користувачі, ролі, команди і права доступу¶
Моделі розпізнавання складаються з декількох об’єктів:
- Права доступу
Individual permission defined by Weblate. Permissions cannot be assigned to users, only through assignment of roles.
- Роль
A role defines a set of permissions (and can be reused in several places).
- Користувач
A user can belong to several teams.
- Група
Groups connect roles and users with authentication objects (projects, languages, components, and component lists).
Примітка
Із командою може бути не пов’язано жодних ролей. У цьому випадку програма припускатиме доступ до навігації проєктом для будь-кого (див. нижче).
Project-browsing access¶
Користувач має бути учасником команди, пов’язаної із проєктом або будь-яким складником у проєкті. Участі достатньо — для навігації проєктом не потрібні якісь особливі права доступу (це використано у типовій команді Переглядачі, див. Список команд).
Component-browsing access¶
Granting browsing access to a user in one project gives it access to any component with derived browsing permissions. With Обмежений доступ on, access to components (or component lists) are granted explicitly.
Область команд¶
Область дії прав доступу, які призначаються ролями у командах, застосовуються такими правилами:
Якщо група визначає якийсь Список складників, усі права доступу, надані учасникам цієї групи, надаються для всіх складників у списках складників, пов’язаних із командою, і доступ без додаткових прав доступу надається для всіх проєктів, частиною яких є ці складники. Складники і Проєкти буде проігноровано.
Використання величезних списків складників може погано позначитися на швидкодії. Будь ласка, спробуйте надавати замість цього доступ на рівні проєктів.
Якщо команда визначає якийсь Складник, усі права доступу, надані учасникам цієї команди, надаються для всіх складників, пов’язаних із командою, і доступ без додаткових прав доступу надається для всіх проєктів, частиною яких є ці складники. Проєкти буде проігноровано.
Інакше, якщо команда визначає якісь Проєкти, або безпосереднім визначенням їхнього списку, або встановленням для параметра Вибір проєктів значення, подібного до Усі публічні проєкти, усі ці права доступу застосовуються до усіх проєктів, які насправді надають ті самі права доступу для доступу до усіх складників без обмежень проєкту.
Обмеження, які накладаються параметром Мови команди, застосовуються окремо, після перевірки, чи має користувач доступ до певних дій. А саме, вони застосовуються лише до дій безпосередньо пов’язаних із самим процесом перекладу, зокрема рецензуванням, збереженням перекладів, додаванням пропозицій тощо.
Підказка
Для автоматизації включення всіх мов або проєктів ви можете скористатися пунктами Вибір мови та Вибір проєкту.
Приклад:
A project
foo
with the components:foo/bar
andfoo/baz
, with reviewing and management rights, in the following team:
¶ Ролі
Рецензування рядків, Управління сховищем
Складники
щось/десь
Мови
Spanish
Members of that team will have these permissions (assuming the default role settings):
Загальний доступ (до навігації) до усього проєкту
щось
, включно із обома складниками у ньому:щось/десь
іщось/там
.Рецензування рядків у іспанському перекладі
щось/десь
(і тільки у ньому).Управління системою керування версіями для усього сховища
щось/десь
, наприклад внесення зміни з черги, які є результатами роботи перекладачів, для всіх мов.
Автоматичні призначення команд¶
При редагуванні Команди ви можете вказати Автоматичні призначення, тобто список формальних виразів, які використовуватимуться для автоматичного пов’язування створених записів користувачів до команди на основі адреси електронної пошти. Ця прив’язка виконуватиметься лише під час створення облікового запису.
Найпоширенішим випадком використання для цієї можливості є призначення усіх нових користувачів до певної типової команди. Це використовується для типових команд Користувачі і Гість (див. Список команд). Скористайтеся формальним виразом ^.*$
для встановлення відповідності усім користувачам.
Ще одним випадком використання цього параметра може бути типове надання певних додаткових прав доступу працівникам вашої компанії. Припускаючи, що всі вони користуються корпоративними адресами електронної пошти на вашому домені, досягти цього можна виразом, подібним до ^.*@mycompany.com
.
Примітка
Автоматична прив’язка до команд для команд Users і Viewers виконуватиметься завжди при оновленні версії Weblate. Якщо ви хочете вимкнути її, встановіть для формального виразу прив’язки значення ^$
, якому не відповідає жоден рядок.
Примітка
У поточній версії немає способу пакетного додавання наявних користувачів до певної команди за допомогою інтерфейсу користувача. Для цього ви можете вдатися до використання програмного інтерфейсу REST.
Типові команди і ролі¶
Після встановлення буде створено типовий набір команд (див. Список команд).
Ці ролі та команди створюються під час встановлення. Актуальність вбудованих ролей завжди підтримується перенесенням бази даних під час оновлення. Ви не зможете внести зміни. Якщо ви хочете визначити власний набір прав доступу, визначте для нього нову роль.
Список прав доступу¶
Область |
Дозвіл |
Вбудовані ролі |
---|---|---|
Фінансові рахунки (див. Оплата) |
Переглянути відомості про оплату |
Administration, Billing |
Зміни |
Завантажити зміни |
Administration |
Коментарі |
Опублікувати коментар |
Administration, Edit source, Power user, Review strings, Translate |
Вилучити коментар |
Administration |
|
Вирішити коментар |
Administration, Review strings |
|
Складник |
Змінити налаштування складників |
Administration |
Блокувати складник, запобігаючи перекладу |
Administration, Manage repository |
|
Глосарій |
Додати запис до глосарія |
Administration, Manage glossary, Power user |
Add glossary terminology |
Administration, Manage glossary, Power user |
|
Змінити словникове гніздо |
Administration, Manage glossary, Power user |
|
Видалити словникове гніздо |
Administration, Manage glossary, Power user |
|
Вивантажити словникове гніздо |
Administration, Manage glossary, Power user |
|
Автоматичні пропозиції |
Використовувати автоматичні пропозиції |
Administration, Edit source, Power user, Review strings, Translate |
Памʼять перекладів |
Змінити памʼять перекладів |
Administration, Manage translation memory |
Вилучити памʼять перекладів |
Administration, Manage translation memory |
|
Проєкти |
Змінити параметри проєкту |
Administration |
Керувати доступом до проєкту |
Administration |
|
Звіти |
Завантажити звіти |
Administration |
Знімки екрана |
Додати знімок |
Administration, Manage screenshots |
Змінити знімок |
Administration, Manage screenshots |
|
Видалити знімок |
Administration, Manage screenshots |
|
Джерельні рядки |
Редагувати додаткові відомості про рядок |
Administration, Edit source |
Рядки |
Додати новий рядок |
Administration |
Вилучити рядок |
Administration |
|
Відхилити невдалу перевірку |
Administration, Edit source, Power user, Review strings, Translate |
|
Змінити рядки |
Administration, Edit source, Power user, Review strings, Translate |
|
Перерити рядки |
Administration, Review strings |
|
Змінювати рядок з примусовими пропозиціями |
Administration, Review strings |
|
Змінити джерельні рядки |
Administration, Edit source, Power user |
|
Пропозиції |
Прийняти пропозицію |
Administration, Edit source, Power user, Review strings, Translate |
Додати пропозицію |
Administration, Edit source, Add suggestion, Power user, Review strings, Translate |
|
Вилучити пропозицію |
Administration, Power user |
|
Проголосувати за пропозицію |
Administration, Edit source, Power user, Review strings, Translate |
|
Переклади |
Додати мову перекладу |
Administration, Power user, Manage languages |
Виконати автоматичний переклад |
Administration, Automatic translation |
|
Видалити наявний переклад |
Administration, Manage languages |
|
Завантажити файл перекладу |
Administration, Edit source, Access repository, Power user, Review strings, Translate, Manage languages |
|
Додати кілька мов для перекладу |
Administration, Manage languages |
|
Вивантаження |
Задати творця завантаженого перекладу |
Administration |
Переписати наявні переклади завантаженням |
Administration, Edit source, Power user, Review strings, Translate |
|
Вивантажити переклади |
Administration, Edit source, Power user, Review strings, Translate |
|
VCS |
Доступ до внутрішнього сховища |
Administration, Access repository, Power user, Manage repository |
Внести зміни у внутрішнє сховище |
Administration, Manage repository |
|
Записати зміни з внутрішнього сховища |
Administration, Manage repository |
|
Скинути усі зміни у внутрішньому сховищі |
Administration, Manage repository |
|
Переглянути розташування основного сховища |
Administration, Access repository, Power user, Manage repository |
|
Оновити внутрішнє сховище |
Administration, Manage repository |
|
Привілеї на рівні сайта |
Використовувати інтерфейс керування |
|
Додавати нові проєкти |
Додати нові проєкти |
|
Додати визначення мов |
||
Керувати визначеннями мов |
||
Керування командами |
||
Управління користувачами |
||
Керувати ролями |
||
Керувати оголошеннями |
||
Керувати памʼяттю перекладів |
||
Керування автоматизацією |
||
Керувати списками складників |
||
Керування рахунками |
||
Керування додатками для усього сайта |
Примітка
Site-wide privileges are not granted to any default role. These are powerful and quite close to the Superuser status. Most of them affect all projects in your Weblate installation.
Список вбудованих ролей¶
- Administration
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, Add glossary terminology, 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
- Змінити джерельний рядок
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 glossary entry, Delete glossary entry, Edit glossary entry, Add glossary terminology, 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
- Рецензування рядків
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
- Переклад
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
- Управління мовами
Add language for translation, Add several languages for translation, Delete existing translation, Download translation file
- Автоматичний переклад
Виконати автоматичний переклад
- Керувати памʼяттю перекладів
Delete translation memory, Edit translation memory
- Керування знімками екрана
Додати знімок, Вилучити знімок, Редагувати знімок
- Керування репозиторієм
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
- Оплата
Переглянути відомості про оплату
- Додати нові проєкти
Додати нові проєкти
Список команд¶
Під час встановлення (або після виконання setupgroups
) буде створено вказані нижче команди. Ви можете внести зміни до цих груп. Втім, під час перенесення даних типові групи, якщо ви вилучите або перейменуєте їх, буде створено повторно.
- Guests
Визначає права доступу для користувачів, які не пройшли розпізнавання.
У цій команді містяться записи лише анонімних користувачів (див.
ANONYMOUS_USER_NAME
).Remove roles from this team to limit permissions for non-authenticated users.
Типові ролі: Add suggestion, Access repository
- Переглядачі
This role ensures the visibility of public projects to all users. By default, all users are members of this team.
Типово, автоматична прив’язка команд створює усі нові облікові записи учасників цієї команди, коли вони долучаються.
Типові ролі: немає
- Users
Типова команда для всіх користувачів.
Типово, автоматична прив’язка команд створює усі нові облікові записи учасників цієї команди, коли вони долучаються.
Типові ролі: Power user
- Рецензенти
Група для рецензентів (див. Процеси перекладу).
Типові ролі: Review strings
- Керівники
Група для адміністраторів.
Типові ролі: Administration
- Творці проєкту
Added in version 5.1.
Користувачі, які можуть створювати нові проєкти.
Типові ролі: Додавати нові проєкти
Попередження
Never remove the predefined Weblate teams and users, as that can lead to unexpected problems! If you have no use for them, simply remove all their privileges instead.
Додаткові обмеження доступу¶
Якщо ви хочете скористатися встановленим вами Weblate у менш відкритий спосіб, тобто дозволити нових користувачів лише на основі запрошень, зробити це можна налаштовуванням Weblate так, що до нього матимуть доступ лише відомі користувачі. Для цього ви можете встановити для параметра REGISTRATION_OPEN
значення False
для запобігання реєстрації будь-яких нових користувачів і встановити для REQUIRE_LOGIN
значення /.*
, щоб вимагати входу до системи для доступу до усіх сторінок сайта. Це, на базовому рівні, є способом блокування встановленого вами Weblate.
Підказка
Ви можете скористатися вбудованими запрошеннями для додавання нових користувачів.