Los Sistemas de Gestión de Bases de Datos proveen mecanismos que garantizan la seguridad, consistencia y reglas de integridad. Es de gran importancia par el auditor de sistemas, conocerlos y apoyarse en ellos para verificar el ambiente de control establecido en la instalación.
Características que apoyan la seguridad en los Sistemas de Bases de Datos
Los tópicos que se incluyen tienen que ver con la exactitud, consistencia y confiabilidad de la información y con la privacidad y confidencialidad de los datos. Las Bases de Datos tienen dentro de sus características elementos que pueden ser utilizados para garantizar la calidad de la información almacenada y procesada.
Claves Primarias
Esta definición determina que para un valor llave primaria solo existirá una tupla o registro en la tabla. Esta situación garantiza que no se tendrá información repetida o discordante para un valor de clave y puede ser usada como control, para evitar la inclusión de información inconsistente o repetida en las tablas.
Dominio de los atributos
El dominio de un atributo define los valores posibles que puede tomar este atributo. Además de los dominios "naturales", usados como tipos de datos, el administrador del sistema puede generar sus propios dominios definiendo el conjunto de valores permitidos. Esta característica, usada en forma correcta, se convierte en mecanismo de control, restricción y validación de los datos a ingresar . Hay que resaltar que estas restricciones siempre serán evaluadas en forma automática por el DBMS.
Reglas de Integridad
Son restricciones que definen los estados de consistencia de la
Base de Datos. Se debe implementar en especial para verificaciones
en cada actualización, para evitar que se caiga en estados
de inconsistencia. En particular se debe verificar que se implementen
correctamente la regla de la Entidad.(un atributo primo no puede
ser nulo) y reglas de Integridad Referencial, esta ultima garantiza
que solo se puedan incluir registros para valores previamente ingresados
en otras tablas.
Algunos ejemplos de su uso pueden ser:
- Impedir incluir novedades de nomina a una persona que no exista
como trabajador en el archivo maestro
de empleados.
- Impedir facturar a un cliente que no esté previamente creado
en el archivo de clientes.
- Impedir borrar de la lista de clientes un registro cuyo código
esté incluido en la relación de cuentas por cobrar.
Reglas de integridad del negocio
Cada negocio funciona en forma diferente y tiene reglas asociadas a su actividad que pueden ser definidas como restricciones en la Base de Datos. Esto implicaría que cualquier operación que se realice debe respetar estas limitantes. Por decir algo, condicionar que solo se otorgan descuentos en ventas superiores a $400.000. Estas son condiciones que la administración coloca a la operación y como principio en el desarrollo de una aplicación, deben ser respetadas por esta.
Vistas
Sirve como mecanismo de compartimentación de la información almacenada, permitiendo presentar a diferentes usuarios parte del universo, según se considere necesario. Según las políticas de seguridad, es usual que gran parte de los usuarios nunca tengan acceso directamente a las tablas completas, sino que lo hagan a través de las vistas, las cuales, por ser un objeto, son sujetas de otras medidas de seguridad.
Perfiles de usuario y Acceso a objetos de la Base de Datos
Asignación de nombres de usuarios, con su respectiva clave de acceso (password) y perfiles asociados. Pueden también ser creados roles que serán concedidos a los usuarios según sus funciones.
Auditoría
En situaciones en que los datos sean críticos, se debe contar con el riesgo de violación de la seguridad por una persona no autorizada, además de errores involuntarios que igual pueden causar inconsistencias o falta de veracidad de la información. Para estos casos es interesante mantener un archivo de auditoría (logs), donde son registradas todas las operaciones realizadas por los usuarios de las bases de datos. En caso de sospecha de falla en la seguridad, este archivo puede ser consultado para conocer los daños causados y/o identificar a los responsables de las operaciones irregulares.
Criptografía de Datos
Como recurso de seguridad, se puede mezclar o codificar los datos de modo que, al momento de ser almacenados en disco duro o trasmitidos por alguna línea de comunicación, no sean más que bits ininteligibles para aquellos que los accedan por un medio no oficial. La criptografía es de gran importancia en las bases de datos pues la información esta almacenada por largos periodos de tiempo en medios de fácil acceso, como discos duros.
Disparadores o Triggers
Siendo un Triggers o disparador una rutina asociada con una tabla o vista que automáticamente realiza una acción cuando una fila en la tabla o la vista se inserta (INSERT), se actualiza (UPDATE), o borra (DELETE), permiten vigilar y registrar acciones especificas según las condiciones propias del negocio; permitiendo crear logs de auditoria a la medida.
Como se puede apreciar los Sistemas de Bases de Datos ofrecen a desarrolladores, administradores y usuarios una gama muy completa de herramientas que permiten garantizar la integridad, consistencia, confidencialidad y en general seguridad de la información almacenada y con un elemento muy importante a favor: Las líneas de código que se requieren por parte del implementador son muy pocas, en ocasiones solo basta con una sencilla sentencia para obligar al DBMS a controlar y mantener las restricciones necesarias.