Control de permisos de acceso a su base de datos mediante DCL

Control de permisos de acceso a su base de datos mediante DCL

Control de permisos de acceso a su base de datos mediante DCL

VALORACIÓN DEL ARTÍCULO:
5/5


El lenguaje de control de datos (DCL) es un subconjunto del lenguaje de consulta estructurado (SQL) y permite a los administradores de bases de datos configurar el acceso de seguridad a bases de datos relacionales. Complementa el lenguaje de definición de datos (DDL), que se utiliza para añadir y eliminar objetos de la base de datos, y el lenguaje de manipulación de datos (DML), que se utiliza para recuperar, insertar y modificar el contenido de una base de datos.

DCL es el más simple de los subconjuntos SQL, ya que consta de sólo tres comandos: GRANT, REVOKE y DENY. Combinados, estos tres comandos proporcionan a los administradores la flexibilidad para establecer y eliminar los permisos de la base de datos de una manera extremadamente granular.

Adición de permisos con el comando GRANT

El comando GRANT es utilizado por los administradores para añadir nuevos permisos a un usuario de base de datos. Tiene una sintaxis muy simple, definida de la siguiente manera:

Subvención[privilegio]
.ON[objeto]
TO[user]
[CON OPCIÓN DE BECA]

Aquí está el resumen de cada uno de los parámetros que puede proporcionar con este comando:

  • Privilegio puede ser la palabra clave ALL (para conceder una amplia variedad de permisos) o un permiso de base de datos específico o un conjunto de permisos. Los ejemplos incluyen CREAR BASE DE DATOS, SELECCIONAR, INSERTAR, ACTUALIZAR, BORRAR, EJECUTAR y CREAR VISTA.
  • El objeto puede ser cualquier objeto de la base de datos. Las opciones de privilegios válidas varían en función del tipo de objeto de base de datos que incluya en esta cláusula. Normalmente, el objeto será una base de datos, una función, un procedimiento almacenado, una tabla o una vista.
  • El usuario puede ser cualquier usuario de la base de datos. También puede sustituir una función para el usuario en esta cláusula si desea hacer uso de la seguridad de la base de datos basada en funciones.
  • Si incluye la cláusula opcional WITH GRANT OPTION al final del comando GRANT, no sólo concede al usuario especificado los permisos definidos en la sentencia SQL, sino que también le da la posibilidad de conceder esos mismos permisos a otros usuarios de database. Por esta razón, utilice esta cláusula con cuidado.

Por ejemplo, suponga que desea conceder al usuario Joe la capacidad de recuperar información de la tabla de empleados en una base de datos llamada HR. Puede utilizar el siguiente comando SQL:

SELECCIÓN DE LA CONCESIÓN
>>SELECCIÓN DE LA CONCESIÓNON HR.employees
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>)A Joe

Joe tendrá ahora la capacidad de recuperar información de la tabla de empleados. Sin embargo, no podrá conceder a otros usuarios permiso para recuperar información de esa tabla porque usted no incluyó la cláusula de OPCIÓN CON BECA en la declaración de BECA.

Revocación del acceso a la base de datos

El comando REVOKE se utiliza para eliminar el acceso a la base de datos de un usuario al que se le haya concedido previamente dicho acceso. La sintaxis de este comando se define de la siguiente manera:

REVOKE[OPCIÓN DE SUBVENCIÓN PARA][permiso]
.ON[objeto]
FROM[usuario]
[CASCADE]

Aquí está el resumen de los parámetros para el comando REVOKE:

  • Permiso especifica los permisos de la base de datos que se deben eliminar del usuario identificado. El comando revoca tanto las afirmaciones de GRANT como las de DENY realizadas previamente para el permiso identificado.
  • El objeto puede ser cualquier objeto de la base de datos. Las opciones de privilegios válidas varían en función del tipo de objeto de base de datos que incluya en esta cláusula. Normalmente, el objeto será una base de datos, una función, un procedimiento almacenado, una tabla o una vista.
  • El usuario puede ser cualquier usuario de la base de datos. También puede sustituir una función para el usuario en esta cláusula si desea hacer uso de la seguridad de la base de datos basada en funciones.
  • La cláusula OPTION FOR elimina la capacidad del usuario especificado para conceder el permiso especificado a otros usuarios. Nota : Si incluye la cláusula OPTION FOR GRANT OPTION FOR en una instrucción REVOKE, el permiso principal es no revocado. Esta cláusula revoca sólo la capacidad de concesión.
  • La opción CASCADE también revoca el permiso especificado de cualquier usuario que haya concedido el permiso.

Por ejemplo, el siguiente comando revoca el permiso concedido a Joe en el ejemplo anterior:

REVOKE SELECT
>REMOCIÓNON HR.employees
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>)DE Joe

Negar explícitamente el acceso a la base de datos

El comando DENY se utiliza para impedir explícitamente que un usuario reciba un permiso determinado. Esto es útil cuando un usuario es miembro de un rol o grupo al que se le ha concedido un permiso y desea evitar que ese usuario individual herede el permiso creando una excepción. La sintaxis de este comando es la siguiente:

DENEGAR[permiso] 
ON[objeto]
A[usuario]

Los parámetros del comando DENY son idénticos a los utilizados para el comando GRANT. Por ejemplo, si desea asegurarse de que Matthew nunca reciba la posibilidad de eliminar información de la tabla de empleados, emita el siguiente comando:

BORRAR DENEGACIÓN 
ON HR.employees
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>)A Matthew

TAMBIÉN TE INTERESA

la estafa más habitual de España

Así es la estafa más habitual: WhatsApp, Telegram, oferta de empleo y un troyano…

Está arrasando. La estafa más habitual que circula por España lo tiene todo: ingeniería social, plataformas de mensajería, el señuelo del un empleo irreal y un troyano que tienes cuando ya has caído. Los expertos en ciberseguridad como Secure&IT se han hecho eco de multitud de robos de estas características. Describiendo la estafa más habitual

planificar un viaje con ChatGPT

Planificar un viaje con ChatGPT: todo lo que debes saber

Planificar un viaje con ChatGPT es una de las muchas cosas que se pueden hacer con esta popular herramienta. Destinos, restaurantes, precios, parkings donde dejar el coche, itinerarios… Se puede hacer de todo con la IA, pero hasta cierto punto. Y es que hay límites y riesgos que hay que tener en cuenta. Lo analizamos

nuevas funciones de Apple Intelligence

Traducción en Vivo y las nuevas funciones que llegan a Apple Intelligence

Apple ha anunciado nuevas funciones de Apple Intelligence que mejoran la experiencia del usuario en iPhone, iPad, Mac, Apple Watch y Apple Vision Pro. Es decir todo el ecosistema de Apple. Entre lo más destacado, llega Traducción en Vivo, si bien también hablaremos de otras mejoras en inteligencia visual o las novedades en Image Playground

webs con accesibilidad digital

Webs con accesibilidad: problema y asignatura pendiente en España

Aunque pueda parecer perfecta, Internet tiene carencias, especialmente para las personas con discapacidad. En lo que comprende a España, el país tiene una asignatura pendiente en la inclusión digital, puesto que las webs con accesibilidad digital son minoría. Este ha sido del tema de debate de la jornada “Accesibilidad Digital: Un futuro inclusivo”, organizada por