Базы данных Oracle - статьи

         

Динамика роли и другие полезные потребительские качества


Дополнительным доводом в пользу употребления роли (неважно, защищенной паролем, или нет) является возможность с ее помощью динамически менять объем полномочий пользователя в процессе его работы.  Простой пример доказывает это.  Продолжим работу под именем ADAM:

SQL> SELECT * FROM session_privs; PRIVILEGE ---------------------------------------- CREATE SESSION

SQL> HOST sqlplus / AS SYSDBA

....................................................... ....................................................... Connected to: Oracle Database 10g Enterprise Edition................ With the Partitioning, Oracle Label Security,.........

SQL> GRANT CREATE TABLE TO tablecreator;

Grant succeeded.

SQL> EXIT Disconnected from Oracle Database 10g................ With the Partitioning, Oracle Label Security,........

SQL> /

PRIVILEGE ---------------------------------------- CREATE SESSION CREATE TABLE

TABLE появилась в рамках прежнего, продолжающего свою работу, сеанса пользователя ADAM.

Еще одно свойство, повышающее потребительское качество роли, заключается в том, что Oracle позволяет ввести для ролей внешнее управление, когда включаться или выключаться они смогут операционной системой или службой имен.  Для этого роли должны создаваться с помощью соответственно двух специальных указаний:

  • CREATE ROLE имя_роли IDENTIFIED EXTERNALLY
  • CREATE ROLE имя_роли IDENTIFIED GLOBALLY AS

В первом случае парольная защита роли перекладывается на ОС, а во втором на службу имен. Наполнение же роли полномочиями (правами совершать действия в БД) в любом случае регулируется внутри БД.



Содержание раздела