Новые книги

Данная работа адресована прежде всего практикующим специалистам, и мы сознательно избегали сложных теоретических выкладок и ссылок на научную литературу. Любознательные найдут библиографию в конце книги, а регулярно обновляемую информацию об исследованиях и дополнительное программное обеспечение — на нашем веб-сайте по адресу http://www.bmi-lab.ch/.

Описанные нами методы работают удивительно хорошо и пользуются огромной популярностью во многих компаниях и организациях. Практики полюбили Навигатор, как и мы! Надеемся, что наши старания хоть в какой-то степени помогут вам в разработке будущих инновационных бизнес-моделей. Наш метод не гарантирует успеха, но определенно повысит ваши шансы. И помните: не рискуя, вы не достигните цели!
Эта книга про то, как создать успешный канал на Youtube. Зачем? Например, чтобы зарабатывать деньги разными способами. Кроме того, с помощью канала на Youtube можно делиться идеями, учить людей, рекламировать продукцию и осуществлять пропаганду — в общем, влиять на умы и сердца людей в корыстных и бескорыстных целях.

О других предложениях и конструкциях SQL

Глава 6. О других предложениях и конструкциях SQL
6.1. Безопасность и санкционирование доступа

В контексте баз данных термин безопасность означает защиту данных от несанкционированного раскрытия, изменения или уничтожения. SQL позволяет индивидуально защищать как целые таблицы, так и отдельные их поля. Для этого имеются две более или менее независимые возможности:

механизм представлений, рассмотреный в предыдущей главе и используемый для скрытия засекреченных данных от пользователей, не обладающих правом доступа;

подсистема санкционирования доступа, позволяющая предоставить указанным пользователям определенные привилегии на доступ к данным и дать им возможность избирательно и динамически передавать часть выделенных привилегий другим пользователям, отменяя впоследствии эти привилегии, если потребуется.

Обычно при установке СУБД в нее вводится какой-то идентификатор, который должен далее рассматриваться как идентификатор наиболее привилегированного пользователя - системного администратора. Каждый, кто может войти в систему с этим идентификатором (и может выдержать тесты на достоверность), будет считаться системным администратором до выхода из системы. Системный администратор может создавать базы данных и имеет все привилегии на их использование. Эти привилегии или их часть могут предоставляться другим пользователям (пользователям с другими идентификаторами). В свою очередь, пользователи, получившие привилегии от системного администратора, могут передать их (или их часть) другим пользователям, которые могут их передать следующим и т.д.

Привилегии предоставляются с помощью предложения GRANT (предоставить), общий формат которого имеет вид

GRANT привилегии ON объект TO пользователи;

В нем "привилегии" - список, состоящий из одной или нескольких привилегий, разделенных запятыми, либо фраза ALL PRIVILEGES (все привилегии); "объект" - имя и, если надо, тип объекта (база данных, таблица, представление, индекс и т.п.); "пользователи" - список, включающий один или более идентификаторов санкционирования, разделенных запятыми, либо специальное ключевое слово PUBLIC (общедоступный).

К таблицам (представлениям) относятся привилегии SELECT, DELETE, INSERT и UPDATE [(столбцы)], позволяющие соответственно считывать (выполнять любые операции, в которых используется SELECT), удалять, добавлять или изменять строки указанной таблицы (изменение можно ограничить конкретными столбцами). Например, предложение

GRANT SELECT, UPDATE (Труд) ON Блюда TO cook;

позволяет пользователю, который представился системе идентификатором cook, использовать информацию из таблицы Блюда, но изменять в ней он может только значения столбца Труд.

Если пользователь USER_1 предоставил какие-либо привилегии другому пользователю USER_2, то он может впоследствии отменить все или некоторые из этих привилегий. Отмена осуществляется с помощью предложения REVOKE (отменить), общий формат которого очень похож на формат предложения GRANT:

REVOKE привилегии ON объект FROM пользователи;

Например, можно отобрать у пользователя cook право изменения значений столбца Труд:

REVOKE UPDATE (Труд) ON Блюда FROM cook;

5.4.4 | Содержание | 6.2