Технология разработки редактора с возможностью задания пользователям прав доступа к подграфам инфоресурса

Дата последней модификации документа: 23 января 2023.

Содержание

  1. Общие сведения
  2. Правила назначения прав
  3. Шаги по созданию редактора

1. Общие сведения

Цель разработки описываемого специального редактора заключается в том, что при групповой разработке информационного ресурса у его владельца может возникнуть необходимость выдать в доступ этот ресурс различным пользователям, при этом указав специальные права их доступа к отдельным его уже существующим подграфам. Как следует из документации к платформе - общими средствами возможно лишь назначить режим доступа ко всему информационному ресрусу ("полный доступ" или "только чтение"). Описываемая технология заменяет эти функциональные возможности, позволяя владельцу вместо выдачи в доступ самого инфоресурса, создать и передать для использования специализированный (формируемый на основе платформенного редактора) редактор для этого инфоресурса (решатель и, возможно, основанный на нём сервис), причём такой в котором каждый подграф (фрагмент) инфоресурса для определённого пользователя может быть:

2. Правила назначения прав

При указании прав для подграфов (фрагментов инфоресурса) следует учитывать схему работы базового редактора: при работе с инфоресурсом отображение его вершин (и, таким образом, подграфов) и, соответственно, реализация/контроль доступа осуществляется сверху-вниз. То есть:
Пример.
Для инфоресурса вида:
R
→ N1
-→ N21
--→ N31
-→ N22
--→ N32
некоторому пользователю для корней подграфов, установлены следующие типы доступа: Тогда при открытии такого ресурса специально сформированным редактором этот пользователь будет иметь доступ: Ниже представлено схематичное изображение доступа пользователя к подграфам такого ресурса (тип доступа обозначается цветом: голубая рамка - только чтение, оранжевая - полный доступ, красная - доступ отсутствует; стрелка на рамке указывает направление распространения доступа; подчеркнуты вершины, являющиеся корнями подграфов, которым назначен доступ):
ex

3. Шаги по созданию редактора

  1. [выполняется владельцем] Из общего Фонда платформы необходимо получить в доступ (в Мой Фонд / Загрузки) 2 информационных ресурса (раздел "Платформа IACPaaS", папка "Редакторы и просмотрщики"):
  2. [выполняется владельцем] На основе первого инфоресурса (он имеет тип "метаинформация") необходимо в личном фонде создать целевой инфоресурс, в котором указать подграфы имеющегося инфоресурса (который будет наполняться) и права доступа к ним.
    При открытии такого инфоресурса запускается системный редактор "Редактор прав доступа к фрагментам инфоресурса", используя который необходимо:
  3. [выполняется владельцем] Полученную на шаге 1 копию решателя задач выдать в доступ на чтение всем пользователям, которые должны будут наполнять целевой инфоресурс содержимым, при этом предварительно наполнив этот решатель (с помощью системного сервиса Редактор решателей задач) следующим содержимыи:
  4. [выполняется владельцем или пользователем] Согласно базовой технологии разработки прямой запуск решателя невозможен и каждому пользователю необходимо иметь сервис для его запуска. В случае отсутствия навыков создания сервисов у конечных пользователей, такой сервис (инфоресурс) может быть создан и самим владельцем исходного инфоресурса (который будет заполняться), а затем выдан им (опять же в доступ на чтение) пользователям вместе с решателем. Создание инфоресурса типа "сервис" выполняется согласно базовой технологии, а его наполнение включает: