- •Введение в безопасность баз данных
- •Аутентификация пользователей в системе Oracle
- •Внешняя аутентификация пользователей
- •Аутентификация на основе инфраструктуры сертификатов
- •Методы дискреционного разграничения доступа
- •Предоставление системных привилегий
- •Методы дискреционного разграничения доступа
- •Предоставление системных привилегий
- •Предоставление привилегий на доступ к объекту
- •Отмена привилегий
- •Обеспечение разграничения доступа к данным с помощью представлений
- •Реализация контроля доступа с помощью хранимых процедур
- •Обеспечение защиты данных с помощью триггеров
- •Системные привилегии, определяющие права по работе с пользователями
- •Разграничение доступа на основе ролей
- •Управление допустимостью использования ролей
- •Реализация мандатной модели субд Oracle
Внешняя аутентификация пользователей
Предполагает использование средств ОС или сетевых средств аутентификации, тем самым контроль выносится за пределы средств управления паролями СУБД, хотя пользователь по-прежнему будет опознаваться СУБД. Пароль для такого типа регистрации не требуется. Чтобы использовать эту возможность необходимо в конфигурации базы данных (файл init.ora) указать параметр OS_AUTHENT_PREFIX. Это укажет СУБД, что пользователь, имя которого имеет тот же префикс, должен рассматриваться, как подлежащий внешней идентификации.
Данным параметром может быть установлен любой желаемый префикс, включая пустую строку. При этом необходимо так же установить параметр REMOTE_OS_AUTHENT значение истины (TRUE).
Аутентификация на основе инфраструктуры сертификатов
Для обеспечения более высокого уровня управления доступом в распределенной среде используется сервер безопасности Oracle. Это средство позволяет обеспечить единый механизм аутентификации и управления паролями. Основа механизма аутентификации составляют сертификаты стандарта X.509, которые поддерживаются на сервере, выполняющем функции сертификационного центра. Персональный сертификат пользователя в системе Oracle Security Server подобен сертификату, используемому для доступа к безопасным WEB-узлам. В сертификате обычно указывается имя пользователя и другая уникальная информация, согласно которой ее владелец может быть точно идентифицирован. Сертификат оформляется только 1 раз и вся содержащаяся в нем информация должна быть строго защищена. Для проверки правильности идентификации пользователя предусмотрена двухуровневая система безопасности. Администратор базы данных сначала создает для пользователя сертификат, а затем создает учетную запись глобального пользователя.
Radius
В настоящее время Oracle позволяет использовать способы аутентификации, основанные на протоколе Radius (Remote Authentication Dial-In User Service). Данный протокол является стандартным, поэтому Oracle работает с любыми Radius совместимыми серверами. Когда клиент выполняет предусмотренную процедуру регистрации на сервере базы данных, сервер Oracle обращается на сервер Radius для аутентификации этого запроса. Сервер Radius либо принимает, либо отклоняет данный запрос. Полученный ответ передается на сервер Oracle, который предпринимает соответствующие действия. Таким образом выполняется полностью прозрачная, защищенная процедура аутентификации. В качестве контролирующего сервера может применяться любой сервер, совместимый с Radius протоколом, например Active-Card, SecureID, Kerberos, Biometrics, etc.
Дополнительные функции по использованию протокола Radius включают применение схемы аутентификации и учета, наподобие пароль-отзыв, выполняемые как последовательность следующих действий:
Сервер Radius передает пароль серверу приложения
Сервер передает пароль машине клиента
Пароль выводится для конечного пользователя
Пользователь вводит отзыв на полученный пароль
Значение отзыва возвращается на сервер Radius
Сервер Radius контролирует полученное значение и передает на сервер приложения ответ, принять или отклонить запрос на соединение с данным пользователем.
