|
Программирование >> Sql: полное руководство
Резюме Представления дают возможность переопределять структуру базы данных, позволяя каждому пользователю видеть свою собственную структуру и свою часть содержимого базы данных. Представление - это виртуальная таблица, созданная на основе запроса Представление, как и реальная таблица, содержит строки и столбцы данных, однако данные, видимые в представлении, на самом деле являются результатами запроса. Представление может бьггь простым подмножеством строк и столбцов одной таблицы, может суммировать содержимое таблигда (сгруппированное представление) или содержать данные из двух или более таблиц (объединенное представление). В инструкциях select, insert, delete И update на Представление можно ссылаться как на обычную таблицу. Однако более сложные представления обновлять нельзя, они доступны только для чтения. Представления обычно используются для того, чтобы уттростигь видимую структуру базы данных, упростить запросы и защитить некоторые строки и столбцы от несанкционированного доступа. SQL и безопасность баз данных При хранении данных в какой-либо СУБД одной из главных задач пользователя является обеспечение безопасности этих данных. Проблема безопасности особенно остро стоит в реляционных базах данных, поскольку интерактивный SQL позволяет легко получить к ним доступ. Требования, предъявляемые к системе безопасности в типичной реляционной базе данных, довольно разнообразны: ш доступ к данным отдельной таблицы должен быть разрешен одним пользователям и запрешен другим; одним пользователям должно быть позволено изменять данные в некоторой таблице, а другим - осушествлять только выборку данных из нее; к ряду таблиц доступ должен производиться по отдельным столбцам; определенным пользователям должно быть запрешено обрашение к некоторой таблице с помошью интерактивного SQL, но разрешено пользоваться прикладными профаммами, изменяюшими эту таблицу. В настояшей главе рассматривается схема обеспечения безопасности базы данных с использованием SQL, позволяюшая реализовать все упомянутые выше виды защиты данных в реляционной СУБД. Принципы защиты данных применяемые в SQL За реализацию системы безопасности отвечает СУБД. Язык SQL является фундаментом системы безопасности реляционной СУБД: требования, предъявляемые к системе защиты информации в базе данных, формулируются с помощью инструкций SQL. С защитой данных в SQL связаны фи основные концепции: Действующими лицами в базе данных являются пользователи. Каждый раз, когда СУБД извлекает, вставляет, удаляет или обновляет данные, она делает это от имени какого-то пользователя. СУБД выполнит фебуемое действие или откажется его выполнять в зависимости от того, какой пользователь запрашивает это действие. Объекты базы данных являются теми элементами, чья защита может осуществляться посредством SQL. Обычно обеспечивается защита таблиц и представлений, но и другие объекты, такие как формы, прикладные профаммы и целые базы данных, также могут быть защищены. Большинству пользователей разрешается использовать одни объекты базы данных и запрещается использовать другие. Привилегии - это права пользователя на проведение тех или иных действий над определенным объектом базы данных. Например, пользователю может быть разрешено извлекать сфоки из некоторой таблицы и добавлять их в нее, но запрещено удалять или обновлять строки этой таблицы. У другого пользователя может быть иной набор привилегий. На рис. 15.1 показано, как эти принцитш! можно применять в учебной базе данных Для введения элементов системы безопасности применяется инструкция GRANT, с помощью которой тем или иным пользователям предоставляются определенные привилегии на использование тех или иных объектов базы данных. Вот, например, инсфукция GRANT, позволяющая Сэму Кларку (Sam Clark) извлекать данные из таблицы OFFICES учебной базы данных и добавлять их в нее: Разрешить Сэму Кларку извлекать данные из таблицы offices и добавлять их в нее. GRANT SELECT, INSERT ON OFFICES TO SAM
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0.001
При копировании материалов приветствуются ссылки. |