Базы данных. Концепция баз данных, реляционная модель данных, языки SQL и XML. Токмаков Г.П. - 115 стр.

UptoLike

Составители: 

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