Implementación de Seguridad y Control de Acceso en Sistemas de Bases de Datos

Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 4,15 KB

Seguridad en Bases de Datos: Niveles de Protección Esenciales

La seguridad en la base de datos se refiere a la protección frente a accesos malintencionados.

Para proteger la base de datos, es crucial adoptar medidas de seguridad en varios niveles:

  • Nivel del Sistema de Base de Datos (SGBD)

    Algunos usuarios pueden estar autorizados solo para consultas, teniendo prohibida la modificación de los datos.

  • Nivel del Sistema Operativo (SO)

    La debilidad del SO puede servir como medio para el acceso no autorizado a la BD.

  • Nivel de Red

    La mayoría de las BD permiten el acceso remoto. La seguridad en este punto depende del software de la red.

  • Nivel Físico

    Los sitios de sistemas de información deben estar protegidos físicamente contra la entrada de intrusos.

  • Nivel Humano

    Los usuarios deben ser cuidadosamente autorizados para reducir la posibilidad de que concedan acceso a intrusos.

Tipos de Autorizaciones de Manipulación de Datos (DML)

Autorización de Lectura (SELECT)

Solo permite la lectura de datos, pero no su modificación.

Autorización de Inserción (INSERT)

Permite agregar nuevos datos, pero no la modificación de datos existentes.

Autorización de Actualización (UPDATE)

Permite la modificación de los datos, pero no su borrado.

Autorización de Borrado (DELETE)

Permite el borrado de tuplas o registros.

Autorizaciones para la Modificación del Esquema de Datos (DDL)

  • Autorización de Índices

    Permite la creación y el borrado de índices.

  • Autorización de Recursos

    Permite la creación de nuevas relaciones (tablas).

  • Autorización de Alteración (ALTER)

    Permite la adición o el borrado de atributos de las relaciones.

  • Autorización de Eliminación (DROP)

    Permite el borrado completo de relaciones.

Diferencia entre Borrado y Eliminación: La Autorización de Borrado (DELETE) solo permite el borrado de tuplas, mientras que la Autorización de Eliminación (DROP) elimina la relación completa, haciendo que deje de existir.

Conceptos Adicionales de Seguridad

Vistas (Views)

Ocultan los datos que un usuario no necesita ver. Sirven para simplificar el uso del sistema y para mejorar la seguridad.

Roles (Papeles)

Definen el uso que puede tener un usuario dentro de la BD. Las autorizaciones se conceden a los roles de igual modo que se conceden a los usuarios individuales.

Traza de Auditoría

Es un registro histórico de todos los cambios realizados en la base de datos, lo cual ayuda en la supervisión y el seguimiento.

Privilegios y Comandos SQL Estándar

La norma SQL define los siguientes privilegios básicos, que se corresponden con las autorizaciones de manipulación de datos:

  • SELECT (Corresponde al privilegio de lectura)
  • INSERT
  • UPDATE
  • DELETE

Privilegios Especiales y Comandos DCL

Privilegio REFERENCES

Permite al usuario o rol declarar claves externas (foreign keys) al crear relaciones. Este privilegio puede concederse sobre atributos concretos de manera similar a UPDATE.

Instrucción GRANT

Se utiliza para conferir autorizaciones y privilegios. Permite al usuario crear relaciones que hagan referencia a la clave.

Instrucción REVOKE

SQL también incluye órdenes para retirar privilegios.

Especificidad de Privilegios

  • La autorización UPDATE puede concederse sobre todos los atributos de la relación o solo sobre algunos.
  • En SQL, el privilegio INSERT también puede especificar una lista de atributos. Cualquier inserción debe especificar estos atributos, y el resto de los atributos tomarán un valor nulo.

El privilegio ALL PRIVILEGES es una forma abreviada de conceder todos los privilegios que se pueden conferir.

Entradas relacionadas: