Привилегии к объектам
Привилегии к объектам
Когда для триггера, хранимой процедуры или просмотра нужен доступ к таблице или просмотру, достаточно, чтобы владелец объекта, к которому требуется доступ, сам объект или пользователь, использующий триггер, процедуру или просмотр, имел необходимые полномочия.
С другой стороны, привилегии к таблице могут быть предоставлены процедуре, а не индивидуальным пользователям для повышения безопасности. Пользователю нужна только привилегия EXECUTE к процедуре, которая осуществляет доступ к таблице.
Хранимой процедуре, просмотру или триггеру иногда нужны привилегии для доступа к таблице или просмотру, которые имеют другого владельца. Для предоставления привилегий триггеру или хранимой процедуре включите соответствующее ключевое слово TRIGGER или PROCEDURE перед именем модуля.
В следующем примере процедуре COUNT_CHICKENS предоставляются полномочия INSERT к таблице PROJ_DEPT_BUDGET:
GRANTINSERTON PROJ_DEPT_BUDGETTO PROCEDURE COUNT_CHICKENS;
Предоставление привилегии EXECUTE
Для использования хранимой процедуры пользователям, триггерам или другим хранимым процедурам нужна к ней привилегия EXECUTE. ЕСЛИ просмотр выбирает выходные поля из хранимой процедуры выбора, просмотр должен иметь привилегию
EXECUTE, а не привилегию SELECT.
Упрощенный синтаксис выглядит следующим образом:
GRANT EXECUTE
ON PROCEDURE <имя-процедуры> TO <получатель>;
<получатель> = [ PROCEDURE <имя-процедуры> [, <имя-процедуры> [, ..]]] [ TRIGGER <имя-триггера> [, <имя-триггера> [, ...]]] [ VIEW <имя-просмотра> [, <имя-просмотра> [, ...]]] | <имя-роли> | <пользователь-или-список> | PUBLIC [WITH GRANT OPTION];
Хранимой процедуре или триггеру нужна привилегия EXECUTE К хранимой процедуре, если она имеет другого владельца. Помните, что владельцем триггера является пользователь, создавший таблицу.
Если ваш оператор GRANT EXECUTE предоставляет привилегии для PUBLIC, то никакие другие типы получателей привилегий не могут быть представлены в качестве аргументов то.
В следующем примере оператор GRANT EXECUTE предоставляет привилегию к процедуре CALCULATE_BEANS двум обычным пользователям FLAT FOOT и KILROY и Двум Хранимым процедурам, чьи владельцы не являются владельцами CALCULATE_BEANS:
GRANT EXECUTE ON PROCEDURE CALCULATE_BEANS
TO FLATFOOT,
KILROY,
PROCEDURE DO_STUFF, ABANDON_OLD ;
Привилегии к просмотрам
Привилегии к просмотрам являются довольно запутанными. Владелец просмотра должен предоставить пользователям привилегию SELECT, как это сделал бы владелец таблицы. Сложности начинаются, если просмотр является изменяемым - естественным образом или через триггеры просмотра- или если просмотр включает другие просмотры или хранимые процедуры выбора. Изменения данных изменяемого просмотра фактически выполняют изменения в базовых таблицах. Если владельцы базовых объектов еще не предоставили пользователю соответствующих прав (INSERT, UPDATE, DELETE, EXECUTE) к базовым таблицам и объектам, а также к хранимым процедурам выбора или к просмотрам, то пользователю нужно их получить от владельца просмотра.
Привилегии REFERENCES неприменимы к просмотрам за исключением одной (обычно опускаемой) ситуации. Если просмотр использует таблицу, которая имеет внешние ключи, ссылающиеся на другие таблицы, то просмотру нужны привилегии REFERENCES к этим другим таблицам, если эти таблицы сами не используются в данном просмотре.
Подробности см. в разд. "Привилегии" главы 24.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Права объектов и доступ к объектам
Права объектов и доступ к объектам Любой объект, например файл, получает свои права доступа при создании, однако впоследствии эти права могут быть изменены. Процессу требуется доступ к объекту, когда он запрашивает дескриптор, используя для этого, например, вызов функции
Доступ к объектам
Доступ к объектам Недостаточно просто найти объект. Чтобы получить к нему доступ или модифицировать объект, пользовательской или системной программе необходимы некоторые средства доступа. Для системных объектов эти средства находятся на уровне MI.OS/400 отвечает за
Права доступа к объектам
Права доступа к объектам К каждому объекту AS/400 может быть предоставлено восемь видов доступа, а именно:•право на оперирование объектом разрешает просматривать описание объекта и использовать объект соответственно имеющимся у пользователя правам[ 57 ];право на
Ограничение доступа к разделяемым объектам
Ограничение доступа к разделяемым объектам Samba использует различные средства контроля доступа к серверу. В качестве примера можно привести уже упоминавшиеся параметры hosts allow и hosts deny и, конечно же, модель аутентификации, согласно которой пользователь должен указывать
12.6. Обращение к объектам, отображенным в память
12.6. Обращение к объектам, отображенным в память Когда в память отображается обычный файл, размер полученной области (второй аргумент вызова mmap), как правило, совпадает с размером файла. Например, в листинге 12.3 размер файла устанавливается равным размеру структуры shared
Доступ к объектам с помощью Web-служб
Доступ к объектам с помощью Web-служб Итак, мы приступаем к работе на совершенно новом уровне, т.е. с использованием Web-служб. С самого начала Web-среда рассматривалась как способ передачи данных между двумя точками. Именно эта исходная концепция способствовала развитию и
Владение таблицами и привилегии
Владение таблицами и привилегии Когда создается таблица, Firebird автоматически применяет к ним безопасность схемы по умолчанию. Человеку, который создает таблицу (ее владелец), назначаются к ней все привилегии SQL, включая право передавать привилегии другим пользователям,
Привилегии на ссылки
Привилегии на ссылки Firebird поддерживает безопасность SQL для всех объектов в базе данных. Каждый пользователь, за исключением владельца базы данных, пользователя SYSDBA или с системными привилегиями root, должен получить (при использовании GRANT) необходимые привилегии доступа к
Привилегии
Привилегии Чтение из таблиц и запись в таблицы являются привилегиями базы данных, управляемыми объявлениями, выполненными с помощью операторов GRANT и REVOKE (см. главу
Привилегии
Привилегии Поскольку просмотр является объектом базы данных, он требует специальных привилегий для доступа к нему пользователя. Предоставляя привилегии к просмотру, можно дать пользователям очень детализированный доступ к отдельным столбцам и строкам таблиц, не давая
Привилегии
Привилегии Привилегия представляет разрешение выполнять операцию DML. В табл. 35.1 описываются привилегии SQL, которые могут быть предоставлены или удалены.Таблица 35.1. Привилегии SQL Привилегия Доступ SELECT Чтение данных INSERT Создание новых строк UPDATE Изменение существующих
Привилегии через роли
Привилегии через роли Процесс реализации ролей состоит из четырех шагов:1. Создание роли с использованием оператора CREATE ROLE.2. Назначение привилегий этой роли посредством GRANT привилегия то роль.3. Назначение роли пользователям посредством GRANT роль то пользователь.4. Задание
Отмена права предоставлять привилегии
Отмена права предоставлять привилегии Для отмены права у пользователя предоставлять конкретную привилегию, но сохранить у него эту привилегию, используйте REVOKE GRANT OPTION:REVOKE GRANT OPTIONFOR <привилегия> [, <привилегия> [,...]]ON <таблица> | <объект>FROM <пользователь>
6.5. Привилегии (права) пользователя
6.5. Привилегии (права) пользователя Теперь попробуем изменить привилегии (права) пользователя. Нажмите кнопку Change напротив поля Тип учетной записи (см. рис. 6.8). В открывшемся окне (рис. 6.9) вы можете выбрать тип учетной записи: Administrator (администратор) или Desktop user (обычный