В наиболее распространенном случае для
В основе регламентации доступа к данным в Oracle лежит парольная защита. В наиболее распространенном случае для работы с данными в своей схеме пользователь Oracle обязан указать пароль. Хотя Oracle и предоставляет возможность упрочнить парольную защиту специальными средствами («профиль»), пароль пользователя все равно остается лишь одним эшелоном защиты. Пароль иногда можно подсмотреть, или ненамеренно сообщить другому лицу. А можно ли ввести дополнительную защиту, затрудняющую несанкционированный доступ ?
В некоторых прикладных системах, например, используется практика «раздвоенного» пароля. Подключиться к системе могут лишь одновременно два физических лица: один знает одну часть пароля, а другой – другую. Хотя вероятность сговора двоих остается, риск несанкционированного доступа существенно снижается. Можно ли в Oracle организовать «раздвоение» пароля или что-то подобное ?
Оказывается, можно: посредством «роли». Роль известна специалистам по Oracle тем, что позволяет технологично организовать групповую передачу пользователям привилегий (полномочий) для работы с объектами в БД. Это удобно, а иногда практически безальтернативно, например если пользователей Oracle заведено много. Реже замечаются два других свойства роли:
(а) возможность «активизировать» и «отключать» роль, приписанную пользователю, во время работы сеанса связи с СУБД и
(б) возможность иметь собственный пароль.
Применение этих двух свойств в совокупности и позволяет организовать второй эшелон парольной защиты объектов, хранимых в базе. Для этого надо лишь выдать пользователю привилегии не напрямую, а через роль. Ниже рассматривается пример, поясняющий эту идею.
Содержание раздела