Приложение. Синтаксис команд для работы с комплексом средств защиты данных
Уровень доступа
Создание:
CREATE LEVEL <имя уровня> = <номер уровня>;
Изменение имени уровня:
ALTER LEVEL <имя уровня> SET <новое имя уровня>;
Группы доступа
Создание:
CREATE GROUP <имя группы>[=<числовой идентификатор группы>];
Изменение имени группы:
ALTER GROUP <имя группы> SET <новое имя группы>;
Уровни доверия между группами:
GRANT ACCESS ON <группа-доверитель> TO {<группа-получатель> | ALL};
REVOKE ACCESS ON <группа-доверитель> FROM {<группа-получатель> | ALL};
Модификация пользователя
Создание пользователя с категорией CONNECT по умолчанию:
CREATE USER <имя пользователя> IDENTIFIED BY <пароль>;
Назначение пользователю категории доступа:
GRANT <категория> TO <имя пользователя> [IDENTIFIED BY <пароль>];
Удаление пользователя:
DROP USER <имя пользователя> [CASCADE];
Изменение категории пользователя:
GRANT <категория> TO <имя пользователя> [IDENTIFIED BY <пароль>];
Изменение пароля пользователя:
ALTER USER <имя пользователя> [IDENTIFIED BY <новый пароль>];
Назначение группы доступа пользователю:
CREATE USER <имя пользователя> IDENTIFIED BY <пароль> GROUP <имя группы>;
ALTER USER <имя пользователя> GROUP <имя группы>;
Назначение уровня доступа пользователю:
CREATE USER <имя пользователя> IDENTIFIED BY <пароль>
LEVEL(<RAL>,<WAL>);
ALTER USER <имя пользователя> LEVEL(<RAL>,<WAL>);
Назначение привилегий пользователю:
GRANT <привилегия> ON <имя объекта> TO <имя пользователя>;
REVOKE <привилегия> ON <имя объекта> FROM <имя пользователя>;
Роли
Создание:
CREATE ROLE <имя роли>;
Удаление:
DROP ROLE <имя роли>;
Назначение/отмена привилегии на объект:
GRANT <привилегия> ON <имя объекта> TO <имя роли>;
REVOKE <привилегия> ON <имя объекта> FROM <имя роли>;
Назначение/отмена роли пользователю:
GRANT ROLE <имя роли> TO <имя пользователя>;
REVOKE ROLE <имя роли> FROM <имя пользователя>;
Уровни доступа
Определение уровня доступа для таблиц:
CREATE TABLE [<имя схемы>.]<имя таблицы>
(<имя столбца> <тип столбца>, […]) LEVEL(<RAL>,<WAL>);
ALTER TABLE <имя таблицы> SET LEVEL(<RAL>,<WAL>);
Определение уровня доступа для столбца:
CREATE TABLE [<имя схемы>.] <имя таблицы>
(<имя столбца> <тип столбца> LEVEL(<RAL>,<WAL>) [,…]);
ALTER TABLE [<имя схемы>.] <имя таблицы>
SET COLUMN <имя столбца> LEVEL(<RAL>,<WAL>);
Использование групп и уровней в SQL-выражении:
INSERT INTO [<имя схемы>.] <имя таблицы>[AS <псевдоним>] [#[<группа>]#[<RAL>]#[<WAL>]]
(<имя столбца>[#[<группа>]#[<RAL>]#[<WAL>]]) VALUES (<значение>);
UPDATE [<имя схемы>.] <имя таблицы>[AS <псевдоним>] [#[<группа>]#[<RAL>]#[<WAL>]]
SET <имя столбца>[#[<группа>]#[<RAL>]#[<WAL>]]=<значение> [,…];
Чтение меток доступа:
SELECT SECURITY({*|<имя столбца>},{'R' |'W' |'G'})
FROM <имя таблицы>;
Сетевая станция
Создание:
CREATE STATION <имя станции>
PROTOCOL <сетевой протокол>
{ADDRESS <адрес станции>}
[LEVEL (<RAL>,<WAL>)]
[<рабочее время>];
<имя станции>::=<идентификатор>
<сетевой протокол>::=<символьный литерал>
<адрес станции>::=<символьный литерал>
<RAL>::=<идентификатор>
<WAL>::=<идентификатор>
<рабочее время> ::= {ENABLE |DISABLE} LOGIN
{ALWAYS |<график по времени>|<график по дням>}
<график по времени>::=
FROM <время начала работы>
TO <время окончания работы> [FOR <дни работы>]
<график по дням>::=
{SINCE <дата начала>}|{UNTIL <дата окончания>}
<время начала работы>::='HH:MM'
<время окончания работы>::='HH:MM'
<дни работы>::=<день недели> {[,<день недели>] …}
<день недели>::='MON'|'TUE'|'WED'|'THU'|'FRI'|'SAT'|'SUN'
<дата начала> ::='DD.MM.YYYY'
<дата окончания> ::='DD.MM.YYYY'
Изменение параметров:
ALTER STATION <имя станции>[SET <новое имя станции>]
[LEVEL(<RAL>,<WAL>)] [<рабочее время>];
Удаление:
DROP STATION <имя станции>;
Регулирование доступа:
GRANT ACCESS ON UNLISTED STATION TO {<имя группы> | ALL};
REVOKE ACCESS ON UNLISTED STATION FROM {<имя группы> | ALL};
GRANT ACCESS ON STATION <имя станции> TO {<имя группы>|ALL};
REVOKE ACCESS ON STATION <имя станции>
FROM {<имя группы>|ALL};
Устройства
Создание:
CREATE DEVICE <имя устройства> DIRECTORY <каталог>
[COMMENT <комментарий>]
[LEVEL (<RAL-устройства>,<WAL-устройства>)];
Изменение параметров:
ALTER DEVICE <имя устройства> [DIRECTORY <каталог>]
[LEVEL (<RAL-устройства>,<WAL-устройства>)];
Удаление:
DROP DEVICE <имя устройства>;
Регулирование доступа:
GRANT ACCESS ON UNLISTED DEVICE TO {<имя группы> | ALL};
REVOKE ACCESS ON UNLISTED DEVICE FROM {<имя группы> | ALL};
GRANT ACCESS ON DEVICE <имя устройства> TO {<имя группы> | ALL};
REVOKE ACCESS ON DEVICE <имя устройства>
FROM {<имя группы> | ALL};
Мониторинг КСЗ
Запуск протоколирования:
AUDIT START;
Останов протоколирования:
AUDIT STOP;
Управление протоколированием:
AUDIT {ENABLE|DISABLE|CLEAR} [<имя события> [ON <объект аудита>]]
[FOR <имя пользователя>] [BY {SESSION|STATEMENT|ACCESS}]
[WHEN [NOT] SUCCESS];
Параметры протоколирования:
AUDIT {SET |CANCEL} <параметры протоколирования>;
<параметры протоколирования>::= RECORDS LIMIT <количество записей> | DAYS LIMIT <срок хранения>;
Протоколирование пользовательского сообщения:
AUDIT MESSAGE <сообщение>;
Начать комментирование протоколируемых событий:
AUDIT SET MESSAGE <комментарий>;
Отменить комментирование протоколируемых событий:
AUDIT CANCEL MESSAGE;