Разработка:storages/acl — различия между версиями
Ilya (обсуждение | вклад) (Информация по рпботе с полномочиями перенесена на страницу "управление доступом") |
Ilya (обсуждение | вклад) м |
||
| Строка 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' - право на любое изменение статуса для владельца объекта