|
DDL: Операторы управления правами доступа
ADO в Delphi AJAX Android C++ CakePHP CMS COM CSS Delphi Flash Flex HTML Internet Java JavaScript MySQL PHP RIA SCORM Silverlight SQL UML XML Бази даних Веб-розробка Генетичні алгоритми ГІС Гітара Дизайн Економіка Інтелектуальні СДН Колір Масаж Математика Медицина Музика Нечітка логіка ООП Патерни Подання знань Розкрутка сайту, SEO САПР Сесії в PHP Системне програмування Системний аналіз Тестологія Тестування ПЗ Фреймворки Штучний інтелект
|
DDL: Операторы управления правами доступаКлючові поняття: Команды GRANT и REVOKE., Операция передачи прав на таблицу, Права CONNECT, Права RESOURCE, Права DBA, Отмена прав на базу данных, Права пользователя на уровне таблицы. По соображениям безопасности не каждому пользователю прикладной системы может быть разрешено получать информацию из какой-либо таблицы, а тем более изменять в ней данные. Для определения прав пользователей относительно объектов базы данных (таблицы, представления, индексы) в SQL определена пара команд GRANT и REVOKE.
GRANT <тип_права_на_таблицу>
ON <имя_таблицы> [<список_столбцов>]
TO <имя_пользователя>
Права пользователя на уровне таблицы определяются следующими ключевыми словами (как мы увидим чуть позже эти ключевые слова совпадают с командами выборки и изменения данных): SELECT - получение информации из таблицы UPDATE - изменение информации в таблице INSERT - добавление записей в таблицу DELETE - удаление записей из таблицы INDEX - индексирование таблицы ALTER - изменение схемы определения таблицы ALL - все права В поле <тип_права_на_таблицу> может быть указано либо ключевое слово ALL или любая комбинация других ключевых слов. Например, предоставим все права на таблицу publishers пользователю andy:
GRANT ALL ON publishers TO andy;Пользователю peter предоставим права на извлечение и дбавление записей на эту же таблицу: GRANT SELECT INSERT ON publishers TO peter; В том случае, когда одинаковые права надо предоставить сразу всем пользователям, вместо выполнения команды GRANT для каждого из них, можно вместо имени пользователя указать ключевое слово PUBLIC: GRANT SELECT ON publishers TO PUBLIC; Отмена прав осуществляется командой REVOKE:
REVOKE <тип_права_на_таблицу>
ON <имя_таблицы> [<список_столбцов>]
FROM <имя_пользователя>
Все ключевые слова данной команды эквивалентны оператору GRANT.
Большинство систем поддерживают также команду GRANT для назначения привилегий на базу данных в целом. В этом случае формат команды:
GRANT <тип_права_на_базу_данных>
ON <имя_базы данных>
TO <имя_пользователя>
К сожалению, способы задания прав на базу данных различны для разных СУБД, и точную их формулировку нужно уточнять в документации. В качестве примера приведем список прав на базу данных, поддерживаемых СУБД Informix: CONNECT - права на доступ к данным и их модификацию, если это разрешено на уровне таблицы;
RESOURCE - права на управление ресурсами. Все перечисленное выше плюс права на создание новых объектов (таблиц, индексов и т.д.) и удаление и изменение тех объектов, которыми данный пользователь владеет; Отмена прав на базу данных осуществляется командой: REVOKE <тип_права_на_базу_данных> FROM <имя_пользователя> Зверніть увагу на додаткові посиланняЯкщо вас цікавить...Головний розділзагрузка...
|
Сторінки, близькі за змістом ![]() SQL (англ. Structured Query Language — язык структурированных запросов) — универсальный компьютерный язык, применяемый для создания, модификации и управления данными в реляционных базах данных. Вопреки существующим заблуждениям, SQL является информационно-логическим языком, а не языком программирования. |
|
Copyright © 2008—2026 Портал Знань.
При використанні матеріалів посилання, для інтернет-ресурсів — гіперпосилання, на Znannya.org обов'язкове.
Зв'язок
|
НТУУ "КПІ" Інженерія програмного забезпечення КПІ Лабораторія СЕТ |
|