El comando SQL Revoke, cambia los permisos de un usuario, revocando el acceso a uno o más recursos.
La instrucción SQL REVOKE se usa para revocar o retirar permisos que se otorgaron previamente a una cuenta en un objeto de base de datos. Por lo tanto, podemos pensar en REVOKE como una herramienta para limitar la capacidad de un rol o usuario para realizar declaraciones SELECT, INSERT, DELETE, UPDATE y CREATE en objetos de base de datos, así como para establecer restricciones como claves externas y actualizar registros de datos, entre otros. operaciones.
Sintaxis del comando SQL Revoke
REVOKE privilege_name ONobject_name FROM {user_name | role_name | PUBLIC};
Donde:
- privilege_name: El nombre del privilegio a revocar, como SELECT, INSERT, UPDATE, DELETE, EXECUTE, etc.
- object_name: el nombre del objeto sobre el que se concedió el privilegio, como: tabla, vista, procedimiento almacenado, etc.
- user_name: el nombre del usuario al que se debe revocar el privilegio.
- role_name: el nombre del rol desde el que se debe revocar el privilegio.
- PUBLIC: hace referencia a todos los usuarios a los que se ha concedido el privilegio.
Ejemplos del comando SQL Revoke en SQL
Ejemplo-1: REVOCAR Privilegio ACTUALIZAR
Supongamos que desea revocar un privilegio actualizado otorgado a un usuario ROLE_A sobre el objeto de datos VENTAS.
REVOKE UPDATE ON VENTAS FROM ROLE_A;
El código anterior se usa para eliminar todos los privilegios de ACTUALIZACIÓN otorgados a la tabla VENTAS.
Ejemplo-2: Privilegio SQL REVOKE SELECT
REVOKE SELECT ON VENTAS FROM ROLE_A;
El código anterior se usa para revocar el privilegio SELECT de un usuario ROLE_A.
Ejemplo-3: Privilegio REVOKE INSERT
REVOKE INSERT ON EMPLEADO FROM ROLE_A;
El código anterior se usa para revocar el privilegio INSERTAR de un usuario ROLE_A en el objeto de datos EMPLEADO .
Ejemplo-4: Privilegio REVOKE DELETE
REVOKE DELETE ON EMPLEADO FROM USER_A;
El código anterior se usa para revocar el privilegio de ELIMINAR de un usuario USER_A en el objeto de datos EMPLEADO.
Ejemplo-5: Privilegio REVOKE TRUNCATE
REVOKE TRUNCATE ON EMPLEADO FROM USER_A;
El código anterior se usa para revocar el privilegio TRUNCATE de un usuario USER_A en el objeto de datos EMPLEADO.
Privilegios admitidos
Con este comando, puede revocar los siguientes permisos a un rol.
Privilegio | Descripción |
---|---|
NONE | No revoca ningún permiso en el recurso. |
CREATE | Revoca los permisos de creación en el recurso, como los comandos CREATE CLASS o CREATE CLUSTER |
READ | Revoca los permisos de lectura en el recurso, como la SELECT consulta. |
SELECT | Capacidad para realizar sentencias SELECT en la tabla. |
INSERT | Capacidad para realizar declaraciones INSERT en la tabla. |
UPDATE | Revoca los permisos de actualización en el recurso, como los comandos UPDATE o UPDATE EDGE |
DELETE | Revoca los permisos de eliminación en el recurso, como los comandos DROP INDEX o DROP SEQUENCE |
ALTER | Capacidad para realizar instrucciones ALTER TABLE para cambiar la definición de la tabla. |
ALL | Revoca todos los permisos en el recurso. |
Conclusión
- El comando SQL REVOKE se usa para revocar o retirar permisos que se otorgaron previamente a una cuenta.
- En SQL REVOKE se puede utilizar para actualizar, seleccionar, insertar, eliminar y truncar privilegios.
- El comando REVOKE es lo opuesto al comando GRANT
- En Objeto y privilegio: debe especificar el nombre del objeto y el privilegio que desea revocar. Asegúrese de que está revocando el privilegio correcto del objeto correcto.
- Usuario o rol: debe especificar el usuario o rol al que se debe revocar el privilegio. Si especifica un rol, los privilegios se revocarán para todos los usuarios que sean miembros de ese rol.
- Dependencia: Debe tener en cuenta las dependencias entre objetos y privilegios. Si revoca un privilegio requerido por otro objeto, es posible que ese objeto ya no funcione correctamente.
- Impacto: debe tener en cuenta el impacto de revocar un privilegio en los usuarios o aplicaciones que dependen de ese privilegio. Asegúrese de comunicar cualquier cambio a las partes afectadas y pruebe los cambios antes de realizarlos en un entorno de producción.
- Permiso: Debe tener el permiso necesario para revocar el privilegio. Asegúrese de tener el nivel adecuado de acceso y autorización antes de intentar revocar un privilegio.