Разработка:storages/acl — различия между версиями

Материал из DOF
Перейти к: навигация, поиск
(Информация по рпботе с полномочиями перенесена на страницу "управление доступом")
м
Строка 14: Строка 14:
 
* objectid - id объекта к которому дается доступ (или 0 если доступ дается ко всем объектам)
 
* objectid - id объекта к которому дается доступ (или 0 если доступ дается ко всем объектам)
 
* aclwarrantid - id записи из таблица [[Разработка:storages/aclwarrants | aclwarrants ]]
 
* aclwarrantid - id записи из таблица [[Разработка:storages/aclwarrants | aclwarrants ]]
 +
 +
==== Стандартные полномочия для хранилищ и рабочих процессов ====
 +
В каждом плагине storage для определения уровня доступа к объекту следует использовать стандартные обозначения:
 +
 +
* view - право просматривать объект из таблицы
 +
* edit - право редактировать объект из таблицы
 +
* create - право создавать новый объект в таблице
 +
* delete - право удалять объект из таблицы
 +
* viewbase - право просматривать сокращенную информацию по объекту (например при просмотре списка записей)
 +
* viewextended - право просматривать расширенную информацию по объекту (все поля)
 +
* edit:имя_поля - право редактировать отдельное поле
 +
* view:имя_поля - право просматривать отдельное поле
 +
* changestatus:from:статус - изменять статус с указанного
 +
* changestatus:to:статус - изменять статус на указанный
 +
* changestatus:all - вообще изменять статус
 +
 +
Также при создании права можно указать отношение, которое указанный пользователь имеет к объекту, на который назначены права.
 +
Отношение указывается через прямой слеш "/".
 +
Примеры
 +
* 'edit/owner' - право редактировать объект для владельца.
 +
* 'changestatus:all/owner' - право на любое изменение статуса для владельца объекта
  
  

Версия 14:17, 15 апреля 2011

Плагин
Название acl
Тип storages


Таблица в базе данных

acl - справочник полномочий. Подробные правила работы с полномочиями описаны в разделе: Управление доступом.

Подробный формат полей в таблице:

  • id - номер записи
  • code - код полномочия (текстовое, необязательное, при указании кода проверяется уникальность)
  • plugintype - тип плагина (im, storage, workflow, sync, modlib)
  • plugincode - код плагина
  • objectid - id объекта к которому дается доступ (или 0 если доступ дается ко всем объектам)
  • aclwarrantid - id записи из таблица aclwarrants

Стандартные полномочия для хранилищ и рабочих процессов

В каждом плагине storage для определения уровня доступа к объекту следует использовать стандартные обозначения:

  • view - право просматривать объект из таблицы
  • edit - право редактировать объект из таблицы
  • create - право создавать новый объект в таблице
  • delete - право удалять объект из таблицы
  • viewbase - право просматривать сокращенную информацию по объекту (например при просмотре списка записей)
  • viewextended - право просматривать расширенную информацию по объекту (все поля)
  • edit:имя_поля - право редактировать отдельное поле
  • view:имя_поля - право просматривать отдельное поле
  • changestatus:from:статус - изменять статус с указанного
  • changestatus:to:статус - изменять статус на указанный
  • changestatus:all - вообще изменять статус

Также при создании права можно указать отношение, которое указанный пользователь имеет к объекту, на который назначены права. Отношение указывается через прямой слеш "/". Примеры

  • 'edit/owner' - право редактировать объект для владельца.
  • 'changestatus:all/owner' - право на любое изменение статуса для владельца объекта


Дополнительные методы: