Базы данных. Вводный курс

На http://dial-master.ru пластиковые окна в королеве от производителя. | прогноз погоды украина архив. | Бесплатные знакомства в харькове на новом. | перевод с казахского переводы на казахский бюро переводов. |

Поддержка авторизации доступа к данным в языке SQL


В общем случае база данных является слишком дорогостоящим предметом, чтобы можно было использовать ее в автономном режиме. Обычно с достаточно большой базой данных (параллельно или последовательно) работает много приложений и пользователей, и не для всех них было бы разумно обеспечивать равноправный доступ к хранящимся данным.

В языке SQL (SQL:1999) предусмотрены возможности контроля доступа к разным объектам базы данных, в том числе к следующим объектам:

  • таблицам;
  • столбцам таблиц;
  • представлениям;
  • доменам;
  • наборам символов;
  • порядкам сортировки символов (collation);
  • преобразованиям (translation);
  • триггерам;
  • подпрограммам, вызываемым из SQL;
  • определенным пользователями типам.

В совокупности в SQL:1999 может поддерживаться девять видов защиты разных объектов в соответствии со следующими возможными действиями (см. ).

При разработке средств контроля доступа к объектам баз данных создатели SQL придерживались принципа сокрытия информации об объектах, содержащихся в схеме базы данных, от пользователей, которые лишены доступа к этим объектам. Другими словами, если некоторый пользователь не обладает, например, привилегией на просмотр таблицы PRO, то при выполнении операции SELECT * FROM PRO он получит такое же диагностическое сообщение, как если бы таблица PRO не существовала. Если бы в случае отсутствия этой таблицы и в случае отсутствия привилегии доступа выдавались разные диагностические сообщения, то непривилегированный пользователь получил бы данные о том, что интересующая его таблица существует, но он лишен доступа к ней.

Таблица 22.1. Вид защиты и соответствующее действиеНазвание привилегииПрименимо к следующим объектам
ПросмотрSELECTТаблицы, столбцы, подпрограммы, вызываемые из SQL
ВставкаINSERTТаблицы, столбцы
МодификацияUPDATEТаблицы, столбцы
УдалениеDELETEТаблицы
СсылкаREFERENCESТаблицы, столбцы
ИспользованиеUSAGEДомены, определенные пользователями типы, наборы символов, порядки сортировки символов, преобразования
ИнициированиеTRIGGERТаблицы
ВыполнениеEXECUTEПодпрограммы, вызываемые из SQL
ПодтипизацияUNDERСтруктурные типы




Начало  Назад  Вперед