P. 1
Oracle Admin is Trac Ion de Base de Datos

Oracle Admin is Trac Ion de Base de Datos

|Views: 4,737|Likes:
Published by Aguedo Huamani

More info:

Published by: Aguedo Huamani on Sep 30, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

05/14/2013

pdf

text

original

Habilitar e inhabilitar roles para activar o desactivar temporalmente los privilegios asociados con los roles. Para habilitar un rol, primero
tiene que estar concedido para el usuario.
Cuando un rol está habilitado, el usuario puede utilizar los privilegios concedidos para este rol. Si un rol está inhabilitado, el usuario no
puede utilizar los privilegios asociados con este rol, a menos que este privilegio esté concedido directamente para el usuario o para otro
rol habilitado para este usuario. Los roles se habilitan para una sesión. En la siguiente, los role activos del usuario revertirán en los roles
por defecto.

Especificación de Roles que van a ser Habilitados

El comando SET ROLE y el procedimiento DBMS_SESSION.SET_ROLE habilitan todos los roles incluidos en el comando e inhabilita
todos los demás roles. Pueden ser habilitados desde cualquier herramienta del programa que permita comandos SQL, no obstante un
rol no puede ser habilitado en un procedimiento almacenado.
Ud. puede utilizar el comando ALTER USER...DEFAULT ROLE para indicar que roles serán habilitados para un usuario en el momento
de su anotación. Todos los demás roles son inhabilitados.
Puede ser requerida un clave para habilitar un rol. La clave tiene que estar incluida en el comando SET ROLE para habilitar el rol. Los
roles por defecto son asignados a un usuario no necesitan clave, son habilitados en el momento de la conexión, igual que un rol sin una
clave.

• Inhabilita un rol para quitar temporalmente este a un usuario.

• Habilita un rol para concederlo temporalmente.

• El comando SET ROLE habilita e inhabilita roles.

• Los roles por defecto son habilitados para un usuario al
conectarse.

• Puede ser necesaria una clave para la habilitación de un rol.

Administración de Bases de Datos

103

Restricciones

Un rol no puede ser habilitado desde un procedimiento almacenado, dado que esta acción puede cambiar en entorno de seguridad
(grupo de privilegios) que permiten que el procedimiento sea llamado e primer lugar.
Así, en PL/SQL, los roles pueden ser habilitados e inhabilitados en bloques anónimos y procedimientos de aplicación ( por ejemplo,
procedimientos Formas Oracle), pero no en los almacenados.
Si un procedimiento almacenado contiene el comando SET ROLE se generará un erros.

EJEMPLOS: Habilitación e inhabilitación de roles

SET ROLE sales_clerk IDENTIFIED BY commission;

SET ROLE hr_clerk

SET ROLE ALL EXCEPT sales_clerk;

SET ROLE NONE;

Sintaxis:

SET ROLE { role [ IDENTIFIED BY PASSWORD ]
[, role [ IDENTIFIED BY PASSWORD ] ]…
| ALL [ EXCEPT role [, role ]… ]
| NONE

El comando SET ROLE desconecta cualquier otro rol garantizado al usuario.

Donde:

role

es el nombre del rol

IDENTIFIED

BY password proporciona la clave necesaria para habilitar el rol.
ALL

habilita todos los roles garantizados para el usuario actual, excepto los listados en la cláusula EXCEPT (no se puede
utilizar esta opción para habilitar roles con claves).

EXCEPT role
NONE

no habilita estos roles, inhabilita todos los roles de la sesión actual (solo están activos los privilegios garantizados
directamente al usuario).

La opción ALL sin la cláusula EXCEPT funciona solo cuando todos los roles habilitados no tiene una clave.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->