Перейти к содержимому

Права доступа

Эта инструкция объясняет, кто что может делать в Portal: открывать разделы, добавлять записи, править и удалять.

Читайте сверху вниз. Права выдаются пользователю или группе доступа на конкретный ресурс (узел, страницу, список, файл и т.д.).

RBAC (разграничение по ролям) в Portal — это как раз такие назначения на ресурсы. Словарь: glossary.md.


  1. Поймёте четыре уровня прав и что входит в каждый.
  2. Сможете открыть панель прав и добавить группу или пользователя.
  3. Будете знать, где наследование работает, а где его можно отключить.

Четыре уровня — каждый следующий включает предыдущие:

В интерфейсеВ APIЧто можно делать
ПросмотрviewОткрывать ресурс, читать содержимое
ДобавлениеaddПросмотр + создавать новое (записи, файлы, страницы — зависит от ресурса)
РедактированиеeditПросмотр + добавление + изменять объекты и настройки
Полный доступdeleteВсё выше + удаление. Максимальный уровень

Пример: «Редактирование» позволяет править, но не удалять. «Полный доступ» включает удаление.

В форме назначения рядом с уровнем есть иконка ? — краткая справка (в API верхний уровень по-прежнему называется delete).


Права наследуются сверху вниз:

узел → страница
узел → список → элемент списка
узел → библиотека → папка → файл
узел → опрос

При проверке Portal смотрит всю цепочку (от объекта до корня) и берёт максимальный уровень среди назначений.

Явные права на дочернем объекте дополняют унаследованные.
Исключение: у элемента списка, файла или папки можно отключить наследование — тогда объект становится границей, и права списка / библиотеки / узла выше не применяются.


РесурсЧто этоТипичный случай
УзелРаздел порталаДоступ ко всему подразделу
СтраницаHTML-страница узлаОтдельная новость или регламент
СписокТаблица данныхЗаявки, реестры
Элемент спискаОдна строкаКонфиденциальная заявка
БиблиотекаХранилище файловДокументы отдела
ФайлДокумент в библиотекеДоговор с узким доступом
ОпросАнкета узлаОпрос отдела; по умолчанию права узла
ВложениеФайл у элемента спискаСкан к заявке

РесурсКуда нажатьКто может назначать
УзелНастройки сайта → вкладка Права доступаПраво «Редактирование» на узел
СтраницаКнопка Права (щит) в шапкеПраво «Редактирование» на страницу
СписокНастройки списка → вкладка ПраваТолько администратор портала
БиблиотекаНастройки библиотеки → вкладка ПраваТолько администратор портала
ОпросКонструктор опроса → блок Права доступаТолько администратор портала
Файл / папкаПрава (щит) в строке библиотекиТолько администратор портала
Элемент спискаПрава в меню , на карточке или в формеТолько администратор портала

  1. Откройте панель прав для нужного ресурса (таблица выше).
  2. В форме Добавить права найдите и выберите одну или несколько групп и/или пользователей (можно смешивать).
  3. Выберите уровень: Просмотр / Добавление / Редактирование / Полный доступ (при необходимости откройте ? рядом с селектом).
  4. Нажмите Добавить права — выбранным участникам будет назначен один и тот же уровень.
  5. В таблице назначений появится новая строка.

Чтобы снять права: нажмите Удалить права в строке таблицы.


Пользователь с флагом администратор портала (is_portal_admin) имеет эффективный Полный доступ на все ресурсы и может:

  • назначать права на списки, библиотеки, опросы и элементы;
  • управлять группами доступа;
  • устанавливать пакеты WebPart в админке.
  1. Откройте Админка → Пользователи.
  2. Откройте карточку учётки.
  3. Отметьте флаг Администратор.
  4. Фильтр Админы показывает только таких пользователей.

Нельзя снять роль с последнего администратора и с системной учётки (SEED_ADMIN_LOGIN, по умолчанию admin).

Обычные владельцы контента работают с правами на узлы и страницы в пределах своих полномочий.


  1. Откройте узел → Настройки сайтаПрава доступа.
  2. Добавьте группы или пользователей с нужным уровнем (см. §5).

Так сотрудники видят узел в навигации и открывают его страницы, списки и библиотеки (согласно уровню). Дочерние объекты наследуют права, если на них нет отдельных назначений.

Рекомендация: сначала права на узел для групп, затем точечные исключения на страницах или элементах.


Страница наследует права узла. Отдельные назначения полезны, когда:

  • одну страницу нужно открыть более узкому кругу;
  • черновик ещё не должны видеть все сотрудники узла.

Кнопка Права в шапке видна при праве «Редактирование» на эту страницу.


УровеньСмысл
ПросмотрВидеть список и элементы
ДобавлениеСоздавать элементы
РедактированиеМенять поля, вложения, представления (в рамках настроек)
Полный доступУдалять элементы и сам список (в корзину узла)

Настраивает администратор портала: Настройки списка → Права.

По умолчанию элемент наследует права списка (и узла).

  1. Откройте список.
  2. В строке выберите ⋮ → Права (или щит на карточке / в форме).
  3. В модальном окне:
    • чекбокс Наследовать права от списка;
    • таблица назначений.
  4. Можно дополнить унаследованные права явными назначениями.
  5. Можно отключить наследование — копируются текущие эффективные права списка, дальше правятся только на элементе. При повторном включении наследования уникальные назначения удаляются.

Типичный случай: скрыть конфиденциальную заявку от части сотрудников, у которых есть доступ к списку в целом.


Библиотека наследует права узла. Файлы и папки по умолчанию наследуют права родителя (папки или библиотеки в корне).

РежимПоведение
Наследование вкл (по умолчанию)Права суммируются по цепочке папка → библиотека → узел; доп. назначения на файле дополняют
Наследование выклКопируются права родителя, дальше правятся независимо. Дочерние объекты наследуют эту папку. Права библиотеки и узла не применяются внутри границы

Управление: библиотека → Права (щит) в строке файла или папки.

Типичные уровни для документов:

  • Просмотр — скачивание и просмотр в браузере / Portal Office;
  • Добавление — загрузка новых файлов;
  • Редактирование — метаданные, совместное редактирование;
  • Полный доступ — удаление файлов и библиотеки (с учётом корзины узла).

Права назначают на:

  • группу доступа — удобно для отделов и ролей (Группы доступа);
  • конкретного пользователя — точечные исключения.
Тип группыОписание
portalСоздаётся вручную; состав правит администратор
domain_linkedИмпорт из AD службой ad-sync; состав обновляется автоматически

Группы Active Directory импортируются как domain_linked; на них так же назначают права. В портальную группу (portal) вручную добавляют пользователей (в том числе из AD), но не вложенные AD-группы.

Подробнее для администратора: Группы доступа.


Для интеграций, скриптов, WebPart и серверных расширений — REST API или сервисы PermissionService / PermissionAdminService на бэкенде.

Проверка (текущий пользователь, с учётом наследования):

GET /api/v1/permissions/check?resourceType=list&resourceId={uuid}
GET /api/v1/permissions/check?resourceType=list_item&resourceId=12&listId={uuid}
GET /api/v1/permissions/check?resourceType=file&resourceId=5&libraryId={uuid}

Назначение (нужно право edit на ресурс; списки и библиотеки — только admin):

POST /api/v1/permissions
{
"resourceType": "node",
"resourceId": "uuid",
"principalType": "group",
"principalId": "uuid",
"permissionLevel": "edit"
}

В JavaScript на странице портала:

const res = await PortalApi.get(
`/permissions/check?resourceType=list_item&resourceId=12&listId=${listId}`
);
if (res.data?.canEdit) { /* ... */ }

В C# внутри Portal.Application:

await permissionService.AssertPermissionAsync(user, "file", fileId, PermissionLevel.View, ct);
await permissionAdmin.UpsertAsync(user, new UpsertPermissionRequest { /* ... */ }, ct);

Полный справочник с примерами для всех типов ресурсов: API: права доступа.


  1. Уточните у коллег, открывается ли у них тот же раздел.
  2. Обратитесь к владельцу контента (автор страницы или ответственный за узел).
  3. Запросите доступ у администратора портала — он добавит вас в группу или назначит права напрямую.