logo
MyWebStudies - Página de inicio
INGRESAR

REGISTRARSE
Buscador

Consultando roles en Oracle DBA: métodos y procedimientos

Selecciona el idioma :

Este video solo está disponible para los alumnos que han adquirido el curso

Transcripción Consultando roles en Oracle DBA: métodos y procedimientos


En la gestión de bases de datos, es crucial poder consultar los roles que existen en el sistema, así como los privilegios asociados a cada uno de ellos.

Para lograrlo, es posible acceder a varias tablas que nos permiten obtener información sobre los roles. A continuación, revisaremos algunas de las principales tablas que pueden ser útiles para acceder a dicha información.

Tablas a nivel de sistema

DBA_ROLES

Una de las primeras tablas que revisaremos es la DBA_ROLES, en la cual podremos visualizar un listado con los roles existentes y los diferentes atributos asociados a cada uno de ellos.

Para consultar su contenido, utilizaremos la siguiente instrucción:

  • SELECT ROLE_ID, ROLE FROM DBA_ROLES

Con esta consulta, obtendremos un listado que muestra el ID y el nombre de cada uno de los roles presentes en el sistema. Otros atributos disponibles en esta tabla incluyen:

  • PASSWORD_REQUIRED, AUTHENTICATION_TYPE, ORACLE_MAINTAINED, INHERITED y otros, que pueden consultarse si se desea más información detallada.

Al ejecutar la consulta, podremos observar un resultado con 90 registros o filas, donde se incluyen tanto los roles del sistema como los creados por los usuarios.

Si creamos un nuevo rol, por ejemplo con el siguiente comando:

  • CREATE ROLE PRODUCCIÓN

Luego, si consultamos nuevamente la tabla DBA_ROLES, esta vez seleccionando los atributos ROLE y ORACLE_MAINTAINED, obtendremos el nombre del rol y si este es mantenido por Oracle.

Al revisar el resultado, observaremos el rol "PRODUCCIÓN" que hemos creado, y al comprobar, veremos que no está mantenido por Oracle.

Es importante recordar que los datos mantenidos por Oracle solo pueden ser modificados mediante scripts desarrollados por Oracle. En cambio, los roles creados por usuarios pueden ser modificados.

DBA_ROLES_PRIVS

Otra tabla relevante en cuanto a roles es la DBA_ROLES_PRIVS.

Podemos consultar los privilegios asociados a diferentes usuarios con la siguiente consulta:

  • SELECT GRANTEE, GRANTED_ROLE FROM DBA_ROLES_PRIVS

Si ejecutamos la consulta, podremos ver los privilegios asignados a los usuarios a nivel de rol. Como esta tabla contiene muchos registros, podemos filtrar la consulta para un usuario específico:

  • SELECT GRANTEE, GRANTED_ROLE FROM DBA_ROLES_PRIVS WHERE GRANTEE= "DESA1"

De esta forma, listaremos los roles asignados al usuario DESA1. Al ejecutar la consulta, observamos que este usuario tiene los roles CONNECT y DESARROLLO. También podemos invertir la búsqueda y listar los usuarios asociados a un rol específico.

Por ejemplo:

  • SELECT GRANTEE, GRANTED_ROLE FROM DBA_ROLES_PRIVS WHERE GRANTED_ROLE = "DESARROLLO"

Al realizar esta consulta, observamos que los usuarios SYS y DESA1 tienen el rol DESARROLLO asignado.

Tablas a nivel de usuario

Hasta ahora hemos explorado cómo consultar roles a nivel de sistema. Ahora veremos cómo hacerlo a nivel de usuario. Para ello, cerraremos la sesión actual e iniciaremos sesión con el usuario DESA1.

SESSION_ROLES

Una vez dentro de la sesión, podremos ver los roles con los que estamos trabajando. Para esto, utilizaremos la tabla SESSION_ROLES, que muestra los roles asociados al usuario de la sesión.

Para visualizar estos roles, ejecutaremos la siguiente consulta:

  • SELECT * FROM SESSION_ROLES

Esta consulta nos muestra de manera básica la información relacionada con los roles activos en la sesión.

USER_ROLE_PRIVS

Para obtener más información acerca de los roles asignados, podemos consultar la tabla USER_ROLE_PRIVS, donde se


consultando roles

¿Hay algún error o mejora?

¿Dónde está el error?

¿Cúal es el error?

Publicaciones Recientes de oracle dba

imagen del Post
Curso de Administración de Base de Datos Oracle
  • 198 Videos
  • 23 Hrs de video
  • 190 Test
  • 184 Hrs de estudio
  • 194288
  • 12 €
imagen del Post
Plan Master

Accede a todos los cursos de una misma temática por un único pago

18 €
Introducción a oracle sql y pl/sql
Introducción a oracle sql y pl/sql

Oracle SQL y PL/SQL son tecnologías clave para manejar y procesar grandes v...

Implementación de la seguridad en oracle database
Implementación de la seguridad en oracle database

La implementación de la seguridad en Oracle Database es fundamental para pr...

Optimización del rendimiento en oracle database
Optimización del rendimiento en oracle database

Una de las primeras y más importantes prácticas para optimizar el rendimien...

Uso de oracle enterprise manager para la gestión de bases de datos
Uso de oracle enterprise manager para la gestión de bases de datos

Oracle Enterprise Manager (OEM) es una herramienta integral que permite a l...

Imagen del Post
Explora Temas Interesantes

Desde guías prácticas hasta análisis profundos, nuestro blog está lleno de contenido que te inspirará