La diferencia clave entre otorgar y revocar es que otorgar otorga un privilegio al usuario mientras que revocar recupera el privilegio otorgado al usuario.
SQL proporciona diferentes niveles de autorización para los usuarios. Otorgar y revocar son dos de esos comandos. El comando otorgar permite otorgar una autorización a un usuario, mientras que el comando revocar permite retirar el nivel de autorización del usuario.
¿Qué es la subvención?
DBMS es un software de sistema para crear y administrar bases de datos. Además, SQL o el lenguaje de consulta estructurado es el lenguaje para manejar bases de datos. Por lo tanto, permite insertar, modificar y recuperar datos en una base de datos. También hay varias categorías en SQL, como DDL, DML y DCL. El lenguaje de definición de datos (DDL) permite crear y reestructurar objetos de bases de datos. Los comandos create, alter, drop son algunos de DDL. El lenguaje de manipulación de datos (DML) permite operar datos en la base de datos. Seleccionar, insertar, actualizar y eliminar son algunos ejemplos de comandos DML. El lenguaje de control de datos (DCL) permite controlar el acceso a los datos dentro de la base de datos. Grant y Revoke son dos comandos DCL que brindan seguridad a la base de datos.
Figura 01: Base de datos SQL
El comando de concesión proporciona acceso o privilegios a los objetos de la base de datos para los usuarios. La sintaxis es la siguiente.
grantprivilege_name en object_name
a {nombre de usuario} [otorgar opción];
Según lo anterior, el nombre_privilegio es el derecho de acceso o privilegio otorgado al usuario. object_name es el nombre del objeto de la base de datos. Puede ser una tabla, una vista, etc. El nombre de usuario es el nombre del usuario que obtiene el derecho de acceso. La opción de concesión es opcional. Permite a los usuarios otorgar derechos de acceso a otros usuarios.
El comando para otorgar permiso para crear una tabla es el siguiente.
otorgar creación de tabla al nombre de usuario
El comando para conceder permiso para soltar la tabla es el siguiente.
otorgar tabla desplegable a nombre de usuario
Esas son algunas declaraciones SQL con el comando de concesión.
¿Qué es revocar?
El comando revocar quita los derechos o privilegios de acceso de los usuarios al objeto de la base de datos. La sintaxis es la siguiente.
revocar nombre_privilegio en nombre_objeto
del nombre de usuario
El siguiente es un ejemplo de recuperación del privilegio de crear tablas de un usuario específico.
revocar crear tabla del nombre de usuario
En resumen, las dos declaraciones dadas explican el uso de conceder y revocar. La siguiente declaración otorga un privilegio de selección en la tabla de estudiantes al usuario1.
otorgar selección de estudiante a usuario1
La siguiente declaración revoca el privilegio de selección en la tabla de estudiantes del usuario1.
revocar selección en estudiante del usuario1
¿Cuál es la diferencia entre conceder y revocar?
otorgar vs revocar |
|
grant es un comando DCL que permite otorgar privilegios a los usuarios sobre los objetos de la base de datos. | revoke es un comando DCL que permite recuperar el permiso asignado a un usuario. |
En control descentralizado | |
La subvención es más fácil. | La revocación es compleja. |
Uso | |
Permite asignar derechos de acceso a los usuarios. | Permite quitar los derechos de acceso a los usuarios. |
Resumen: concesión frente a revocación
grant y revoke son dos comandos esenciales de DCL. DCL es una subcategoría de SQL. La diferencia entre otorgar y revocar es que otorgar otorga un privilegio al usuario mientras que revocar recupera el privilegio otorgado por el usuario.