ORACLE SQL - DCL.

1 ORACLE SQL - DCL ...
Author: Claudia Álvarez Roldán
0 downloads 3 Views

1 ORACLE SQL - DCL

2 Oracle SQL - DCL ¿Qué es DCL? Sus comandos GRANT REVOKE

3 Oracle SQL – ¿Qué es DCL? DDL – Data Control LanguageEn español significa Lenguaje de Control de Datos y es un lenguaje proporcionado por el  SGBD (Sistema de Gestión de Base de Datos) que incluye una serie de comandos SQL que permiten al administrador controlar el acceso a los datos contenidos en la Base de Datos. Los privilegios podrían ser consultar (SELECT), eliminar (DELETE), actualizar (UPDATE) e insertar (INSERT) en las tablas y vistas. En los procedimientos, funciones y paquetes le da privilegios para seleccionar (SELECT) y ejecutar (EXECUTE). Podemos dar todos los privilegios o cualquier uno o más privilegios a los objetos.

4 Oracle SQL – Comandos DCLGRANT Comando para dar permisos a uno o varios usuarios para realizar determinadas tareas. GRANT NombreDelPrivilegio ON NombreDelObjecto TO {NombreDelUsuario | PUBLIC} [WITH GRANT OPTION]; OBS: Necesitan siempre que se haga un COMMIT al final.

5 Oracle SQL – Comandos DCLGRANT NombreDelPrivilegio – Que previlegios se da a un usuario. Los previlegios son: ALL: permiso para ejecutar todos los comandos seguientes; SELECT: permiso para consultar una tabla/vista; UPDATE: permiso para actualizar tabla. ¡NO PARA VISTAS! DELETE: permiso para eliminar datos de tabla. ¡NO PARA VISTAS! INSERT: permiso para insertar en tablas. ¡NO PARA VISTAS! EXECUTE: permiso para ejecutar un objeto (PROCEDUTE, FUNCTION, PACKAGE) NombreDelObjecto – El objeto de nuestra BD como: TABLE - tablas VIEW - vistas PROCEDURE - procedimientos FUNCTION - funciones SEQUENCE - secuencia

6 Oracle SQL – Comandos DCLGRANT NombreDelUsuario – El usuario a que se da los previlegios. Pueden ser dos tipos Un usuario especifico; PUBLIC: todos los demás usuarios en la base de datos. WITH GRANT OPTION – Si se quiere que el usuario a quién se dio previlegio pueda también le dar permiso a un otro usuario de la base. OBS: WITH GRANT OPTION es la parte opcional del comando GRANT.

7 Oracle SQL – Comandos DCLGRANT Por ejemplo: Dar permiso total al usuario ZEGUI a una tabla: GRANT ALL ON GE_ALUMNOS TO ZEGUI; Dar permiso parcial al usuario ZEGUI a una tabla: GRANT SELECT, INSERT ON GE_UNIDADES TO ZEGUI; Dar permiso a todos los usuarios a una funcion: GRANT EXECUTE ON NombreDeUnaFuncion TO PUBLIC;

8 Oracle SQL – Comandos DCLREVOKE Comando para sacar permisos de uno o varios usuarios para realizar determinadas tareas. REVOKE NombreDelPrivilegio ON NombreDelObjecto FROM {NombreDelUsuario | PUBLIC} Ejemplo: REVOKE SELECT, INSERT ON GE_UNIDADES FROM ZEGUI; REVOKE ALL ON GE_ALUMNOS FROM ZEGUI; REVOKE EXECUTE ON NombreDeUnaFuncion FROM PUBLIC;