Вполне возможно, что для использования обычного приложения баз данных придется назначать множество системных привилегий. Когда с приложением работает множество пользователей, управление привилегиями может быстро превратиться в достаточно трудную задачу, так как нужно будет предоставлять привилегии каждому пользователю. Чтобы упростить процесс обеспечения безопасности системы некоторые СУБД в частности ORACLE позволяют воспользоваться ролями. Роль – это совокупность системных привилегий, предоставляемых пользователям и другим ролям. Надо отметить, что СУБД может предоставлять пользователям некоторое количество предварительно установленных ролей.
CONNECT – основная роль пользователей, которая позволяет соединяться с базой данных, а затем создавать таблицы, представления, синонимы и последовательности в соответствующей схеме.
RESOURCE – роль, предназначенная для разработчиков приложений; помимо таблиц, представлений и т. д. позволяет создавать процедуры, функции, триггеры и объектные типы в соответствующей схеме.
DBA – роль, предназначенная для администраторов; позволяет выполнять любые операции с базой данных, так как включает все системные привилегии. Кроме того, пользователь, которому предоставлена роль DBA, может предоставлять любые системные привилегии любому другому пользователю базы данных и любой роли.
SELECT_CATALOG_ROLE – роль, позволяющая обращаться с запросами к представлениям словаря данных, созданным администратором.
DELETE_CATALOG_ROLE – роль, позволяющая удалять записи из журнала аудита базы данных.