ВУЗ:
Составители:
Рубрика:
– 115 –
нистратор имеет полномочия назначать права. Если вы создаете таблицу или
хранимую процедуру, то имеете к ней права доступа наравне с администрато-
ром. Подробнее роли будут рассмотрены в разделе 5.3.
При назначении прав доступа на операцию можно уточнить, значения каких
столбцов может изменять пользователь. Допустим, что пользователь
Petrov имеет
право изменять цену на предоставление услуги. Предположим, что цена задается в
столбце
COST таблицы SERVICE. Тогда операция назначения прав пользователю Pe‐
trov выглядит следующим образом:
GRANTSELECT,UPDATE(COST)ONSERVICETOPetrov
5.1.2. КОМАНДА REVOKE
Ликвидация ранее выданных прав осуществляется командойREVOKE. Ее фор-
мат:
REVOKE<права>ON[TABLE]{имяТаблицы|имяПросмотра}
FROM{<объект>|<списокПользователей>}
Пример, лишить пользователя Petrov права вставки данных в таблицу Owner:
REVOKEINSERTONOwnerFROMPetrov
5.2. НАЗНАЧЕНИЕ ПРАВ ИСПОЛНЕНИЯ ХРАНИМЫХ ПРОЦЕДУР
Система безопасности
InterBase-сервера позволяет решать проблему раз-
решения манипуляции данными не только на уровне прав пользователей, но и
на уровне прав вызова хранимой процедуры. Другими словами, если пользова-
тель не имеет прав, например, на вставку данных в таблицу, то такая операция
все же будет произведена, если этим правом обладает исполняемая в данный
момент хранимая процедура.
Синтаксис команды предоставления прав на уровне хранимой процедуры:
GRANTEXECUTEONPROCRDUREИмяПроцедурыTO
{<объект>|<списокПользователей>}
Здесь под <объект>понимают:
PROCEDUREимяПроцедуры|
TRIGGERимяТриггера|
VIEWимяПросмотра|
PUBLIC
[,<объект>...]
а <списокПользователей>– это
{[USER]имяПользователя|имяРоли}
[,<списокПользователей>...][ихправа]
Например, следующая команда предоставляет право вызова процедуры
MAX_VALUE пользователю Petrov и процедуре CALC_BALANCE:
GRANTEXECUTEONPROCRDUREMAX_VALUETOPetrov,
PROCRDURECALC_BALANCE
Страницы
- « первая
- ‹ предыдущая
- …
- 113
- 114
- 115
- 116
- 117
- …
- следующая ›
- последняя »
