Администратор базы данных создает учетные записи пользователей, наделяет пользователей привилегиями, создает пользовательские профили и при необходимости удаляет учетные записи. Поскольку при большой активности пользователей такая работа может оказаться для одного человека непосильной, в некоторых компаниях имеется специальная служба безопасности, призванная помочь администратору базы данных в деле управления пользователями.
Служба безопасности или защиты данных (если она в компании предусмотрена) обычно занимается документированием заявок пользователей и передает соответствующую информацию администратору базы данных. В ее обязанности входит также своевременное информирование администратора базы данных о том, что какому-либо из пользователей доступ к базе данных уже не требуется.
Системный аналитик или системный администратор обычно отвечает за безопасность вычислительной системы в целом, для чего и создаются учетные записи пользователей и разрабатывается система привилегий доступа. Точно так же, как администратору базы данных, служба безопасности может помогать и системному аналитику.
Место пользователя в базе данных
Пользователю обычно отводится роль, соответствующая выполняемой им работе. Соответствующими оказываются и предоставленные пользователю привилегии. Ни один из пользователей не должен иметь привилегий доступа, выходящих за рамки необходимого. Главной и единственной причиной использования учетных записей пользователей и привилегий является необходимость защиты данных. Если не тот пользователь получит доступ не к тем данным, данные могут быть повреждены или уничтожены, пусть даже и непреднамеренно. После того, как доступ к данным пользователю уже не нужен, его учетную запись необходимо либо удалить из базы данных, либо сделать недействительной.
Каждый из пользователей занимает в базе данных свое место, и поэтому одни пользователи имеют больше привилегий, чем другие. Пользователей базы данных можно сравнить с органами человеческого тела - все части работают вместе в унисон (по крайней мере, это предполагается) с целью выполнения определенной задачи.
О пользователях и схемах
Объекты базы данных связываются с именами пользователей, и это называется схемой. Схема - это набор объектов базы данных, принадлежащих одному пользователю базы данных. Этот пользователь называется владельцем схемы. Разница между обычным пользователем базы данных и владельцем схемы состоит в том, что владелец схемы имеет свои объекты в базе данных, в то время как большинство пользователей никакими объектами в базе данных не владеют. Большинство пользователей получают доступ к базе данных для того, чтобы использовать данные, предоставляемые объектами имеющихся в ней схем.
Процесс управления
Без стабильной системы управления пользователями базы данных невозможно обеспечить надежное хранение данных. Система управления пользователями начинается с непосредственных руководителей пользователей, через которых подается запрос на доступ к данным, затем по цепочке разрешающих (или запрещающих) структур он попадает к администратору базы данных, который выполняет конкретные действия по созданию учетной записи пользователя в базе данных. Здесь должна быть продумана хорошая система извещения: руководитель пользователя и сам пользователь должны быть извещены о создании в базе данных учетной записи пользователя и получении доступа к данным. Пользовательский пароль должен быть предоставлен только самому пользователю, а последний при первом же входе в базу данных должен немедленно изменить этот пароль.
По поводу создания учетных записей пользователей обратитесь к документации используемой вами реализации языка. Очевидно также, что при создании учетных записей пользователей и управлении ими следует придерживаться правил, принятых в той компании, где вы работаете. В следующих разделах сравниваются процедуры создания учетной записи пользователя в Oracle, Sybase и Microsoft SQL Server.
Создание учетных записей пользователей
Создание учетных записей пользователей осуществляется с помощью определенных команд SQL в рамках базы данных. Стандартных команд для создания пользователей нет - каждая реализация языка предлагает свои методы. В некоторых реализациях SQL команды создания учетных записей пользователей похожи, в других - нет. Но независимо от реализации, базовый подход остается одним и тем же.
Читать дальше