Основные категории пользователей

 

Пользователей СУБД можно разбить на три кате­гории:

Администратор сервера баз данных. Он ведает уста­новкой, конфигурированием сервера, регистрацией пользователей, групп, ролей и т.п. Администратор сер­вера имеет имя ingres. Прямо или косвенно он облада­ет всеми привилегиями, которые имеют или могут иметь другие пользователи.

Администраторы базы данных. К этой категории относится любой пользователь, создавший базу данных и, следовательно, являющийся ее владельцем. Он мо­жет предоставлять другим пользователям доступ к базе и к содержащимся в ней объектам. Администратор базы отвечает за ее сохранение и восстановление. В прин­ципе в организации может быть много администрато­ров баз данных. Чтобы пользователь мог создать базу и стать ее администратором, он должен получить (от администратора сервера) привилегию creatdb.

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

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

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

 

Виды привилегий

 

Привилегии в СУБД можно подразделить на две кате­гории: привилегии безопасности и привилегии досту­па. Привилегии безопасности позволяют выполнять ад­министративные действия. Привилегии доступа, в соответствии с названием, определяют права доступа субъектов к определенным объектам.

Привилегии безопасности всегда выделяются конкрет­ному пользователю. Таких привилегий пять:

1) security — право управлять безопасностью СУБД и отслеживать действия пользователей. Пользователь с этой привилегией может подключаться к любой базе данных, создавать, удалять и изменять характеристики пользователей, групп и ролей, передавать права на доступ к базам данным другим пользователям, управ­лять записью регистрационной информации, отслежи­вать запросы других пользова-телей и, наконец, запус­кать lNGRES-команды от имени других пользователей. Привилегия security необходима администратору сер­вера баз данных, а также лицу, персонально отвечающему за информационную безопасность. Передача этой привилегии другим пользователям (например, админи­страторам баз данных) увеличивает число потенциаль­но слабых мест в защите сервера баз данных;

2) createdb — право на создание и удаление баз дан­ных. Этой привилегией, помимо администратора сер­вера, должны обладать пользователи, которым отводит­ся роль администраторов отдельных баз данных;

3) operator — право на выполнение действий, которые традиционно относят к компетенции оператора. Име­ются в виду запуск и остановка сервера, сохранение и восстановление информации. Помимо администрато­ров сервера и баз данных этой привилегией целесооб­разно наделить также администратора операционной системы;

4) maintain locations — право на управление располо­жением сервера баз данных и опе­рационной системы;

5) trace — право на изменение состояния флагов отла­дочной трассировки. Данная привилегия полезна администратору сервера баз данных и другим знающим пользователям при анализе сложных, непонятных си­туаций.

Привилегии доступа выделяются отдельным пользователям, группам, ролям или всем пользователям. Эти привилегии, как правило, присваивает владелец соот­ветствующих объектов (он же — администратор базы данных) или обладатель привилегии security (обычно администратор сервера баз данных). При совершении подобных действий необходимо иметь подключение к базе данных, в которой хранятся сведения о субъектах и их привилегиях.

Привилегии доступа можно подразделить в соот­ветствии с видами объектов, к которым они относятся:

 таблицы и представления;

 процедуры;

 базы данных;

 сервер баз данных;

 события.

По умолчанию пользователь не имеет никаких прав доступа к таблицам и представлениям.

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

При создании базы данных указывается ее статус – общая или личная. Это влияет на подразумеваемые права доступа к базе. По умолчанию право на подклю­чение к общей базе предоставляется всем. Право на подключение к личной базе нужно передавать явным образом. Право на подключение необходимо для вы­полнения всех прочих операций с базой и содержащи­мися в ней объектами.