Краткая запись управления доступом

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

Формат записи

Каждая запись начинается со знака + и состоит из 2 или 3 атрибутов, перечисленных через символ :.

Эти атрибуты:

Примеры

+R:subject:O
+W:subject
+(SR|UR):subject
+(SR|ConnDB):subject:OC+

Список разрешений

Для записи каждого разрешения используется короткое сокращение.

Группы разрешений

Группы разрешений — это объединения нескольких разрешений. По возможности в краткой записи будет указано одна из групп.
Например, +R:subject — разрешение на чтение.

Группа Описание
L (list) перечисление. Состоит из разрешений на чтение аттрибутов ACL и описание объектов.
R (read) чтение. Состоит из разрешений на чтение из таблиц, топиков и перечисления.
W (write) запись. Состоит из разрешений на обновление и удаление записей из таблиц, запись атрибутов ACL, создание подкаталогов, создание таблиц, очередей, изменение и удаление объектов, изменении пользовательских атрибутов
UL (use legacy) использование (устаревшее). Состоит из разрешений за чтение, запись и предоставления прав доступа
U (use) использование. Состоит из разрешений за чтение, запись, предоставления прав доступа и отправку запросов к БД
M (manage) управление. Состоит из разрешений на создание и удаление БД
FL (full legacy) все права (устаревшее). Состоит из разрешений на использование (устаревшее) и управление
F (full) все права. Состоит из разрешений на использование и управление

Простые разрешения

Если нет другой возможности, в сокращенной записи будет приведен список разрешений в круглых скобках через символ вертикальной черты |.
Например, +(SR|UR):subject — разрешение на чтение и обновление записей в таблицы.

Разрешение Описание
SR (select row) чтение из таблиц
UR (update row) обновление записей таблиц
ER (erase row) удаление записей из таблиц
RA (read attributes) чтение атрибутов ACL
WA (write attributes) запись атрибутов ACL
CD (create directory) создание подкаталога
CT (create table) создание таблиц
CQ (create queue) создание очередей
RS (remove schema) удаление объектов
DS (describe schema) описание объектов, содержимое каталогов
AS (alter schema) изменение объектов
CDB (create database) создание БД
DDB (drop database) удаление БД
GAR (grant access rights) предоставление прав доступа (только из списка собственных)
WUA (write user attributes) изменение пользовательских атрибутов
ConnDB (connect database) подключение и отправка запросов в БД

Типы наследования

Для описания передачи наследования дочерним объектам могут использоваться один или несколько флагов наследования.

Флаг Описание
- без наследования
O эта запись будут наследоваться дочерними объектами
C эта запись будет наследоваться дочерними контейнерами
+ эта запись будет использоваться только для наследования и не будут использоваться для проверки доступа