Universidad Yacambú Vicerrectorado de Estudios Virtuales Especialización en Gerencia, Mención Sistemas de Información |
Administración de Bases de Datos
Tabla de contenidos
|
Introducción
La información
es uno de los activos más importantes de las entidades, y en especial, de
algunos sectores de la actividad económica.
Es indudable que cada día las entidades dependen de mayor medida de la
información y de la tecnología, y que los sistemas de información están más
soportadas por la tecnología, frente a la realidad de hace pocas décadas.
En cualquier caso hay tres aspectos principales, como distintas vertientes de la
seguridad.
La confidencialidad: se cumple cuando solo las personas autorizadas (en su sentido amplio podríamos referirnos también a sistemas) pueden conocer los datos o la información correspondiente.
La integridad: consiste en que sólo las personas autorizadas puedan variar (modificar o borrar) los datos. Además deben quedar pistas para control posterior y para auditoria.
La disponibilidad: se cumple si las personas autorizadas pueden acceder a tiempo a la información.
Los datos contenidos en una Base de Datos pueden ser individuales o de una Organización. Sean de un tipo o de otro, a no ser que su propietario lo autorice, no deben ser desvelados. Si esta revelación es autorizada por dicho propietario la confidencialidad se mantiene. Es decir, asegurar la confidencialidad significa prevenir/ detectar/ impedir la revelación impropia de la información.
La seguridad de las Bases de Datos se concreta mediante mecanismos, tanto "hardware" como "software". Así estos mecanismos son:
El primero se denomina identificación, que procede a identificar a los sujetos (procesos, normalmente transacciones que actúan en su nombre o usuarios) que pretenden acceder a la base de datos.
El siguiente mecanismo que actúa es el de autenticación. El proceso usual es mediante contraseñas, constituidas por un conjunto de caracteres alfanuméricos y especiales que sólo el sujeto conoce. También se puede realizar mediante algún dispositivo en poder del mismo o alguna de sus características bioantropométricas.
En caso de que el sujeto sea positivamente identificado y autenticado, se debe controlar el acceso que pretende a los objetos (datos y recursos accedidos por los sujetos. Por ejemplo, si se considera un SGBD relacional los recursos que deben protegerse son las relaciones, vistas y atributos). El mecanismo involucrado se denomina de control de accesos y se encarga de denegar o conceder dichos accesos en base a unas reglas, que establecen en qué condiciones el sujeto puede acceder y realizar ciertas operaciones sobre el objeto especificado. Estas reglas son dictadas por una persona con autoridad suficiente, que normalmente es el propietario de los datos o, en el caso de una organización, el administrados de la base de datos, de acuerdo con unas políticas de seguridad. Una regla de autorización se suele representar mediante una tripleta (s,o,p), que especifica que el sujeto esta autorizado para ejercer un privilegio sobre un objeto. Los sujetos de autorización son las entidades del sistema a las que se les asignan las autorizaciones sobre los objetos.
Los sujetos se pueden clasificar en las siguientes categorías:
Usuarios, es decir, individuos simples conectados al sistema. A veces seria más útil especificar los criterios de acceso basándose en sus calificaciones y características, más que en la identidad del usuario.
Grupos, es decir, conjuntos de usuarios.
Roles, o lo que es igual, conjuntos de privilegios necesarios para realizar actividades especificas dentro del sistema.
Procesos, que ejecutan programas en nombre de los usuarios. Necesitan recursos del sistema para llevar a cabo sus actividades, y normalmente tienen acceso sólo a los recursos necesarios para que se puedan realizar las tareas del proceso. Esto limita el posible daño derivado de fallos del mecanismo de protección. Los privilegios de autorización establecen los tipos de operaciones que un sujeto puede ejercer sobre los objetos del sistema.
El conjunto de privilegios depende de los
recursos a proteger. Por ejemplo, los privilegios típicos de un SGBD
relacional son seleccionar, insertar, actualizar y eliminar. Normalmente, los
privilegios están organizados jerárquicamente y la jerarquķa representa una
relación de asunción entre privilegios. Si la transacción invocada trata de
modificar el contenido de la base de datos, los cambios propuestos son
chequeados por el sistema de gestión de la misma, para garantizar su
integridad semántica o elemental.
Así mismo, el sistema de gestión se responsabiliza de evitar accesos
concurrentes a dicha base. Finaliza la transacción, con éxito o no, el citado
sistema de gestión graba en un registro de auditoria todas las características
de aquella. Este registro también contiene la información pertinente para la
recuperación de la base de datos, caso de un fallo de ésta o una caída del
sistema. Aunque este mecanismo no impide los accesos no autorizados, tiene
efectos disuasorios sobre potenciales atacantes, permitiendo además encontrar
puntos débiles en los mecanismos de seguridad. Adicionalmente a todos estos
mecanismos, el medio físico sobre el que se almacena la base de datos puede
estar protegido criptográficamente. Igualmente las copias de seguridad pueden
estas así defendidas frente a ataques.
Ahora bien
¿cómo se las arregla el sistema para llevar la cuenta de quien puede acceder que
objetos y con que operaciones? Conceptualmente al menos, podemos ver este modelo
de protección como una gran matriz de acceso.
Los cambios de dominio que un proceso puede hacer también podemos integrarlos a
la matriz, tratando a los dominios como otros objetos, con una operación:
entrar.
Una política de protección involucra decidir como se va a llenar esta matriz.
Normalmente el usuario que crea un objeto es quien decide como se va a llenar la
columna de la matriz correspondiente a ese objeto. La matriz de acceso es
suficientemente general como para apoyar diversas políticas. Por ejemplo:
La capacidad para copiar o transferir un derecho de un objeto a otro dominio.
Capacidad de un dominio para modificar los derechos en otros dominios (todos, o
para un recurso especifico).
El problema es como almacenar esta matriz. Como es una matriz poco densa (muchos
de los elementos son vacíos), no resulta practico representarla como una matriz
propiamente. Podríamos usar una tabla con triples (dominio, objeto, derechos).
Si un proceso dentro de un dominio D intenta efectuar una operación M sobre un
objeto O, se busca (D,O,C), y se verifica si por ejemplo, leído por todo el
mundo, debe tener entradas para cada dominio.
Definición de un Esquema de Seguridad
El esquema
de la base de datos, si existe, es otro objeto que debe someterse a protección.
En este caso, hay que preocuparse acerca de la asignación adecuada de objeto en
un medio de base de datos de esquema, cuando la protección se proporcione a
través del esquema mismo. Algunos sistemas pueden preservar el esquema en un
archivo controlado por esquema y aplicar protección a través de esta recurrencia
ascendente. Será necesario proporcionar una conclusión adecuada a este nido de
esquemas. Si el esquema es relativamente estático, es posible incluir el archivo
de esquema en una sola descripción de esquema. La asignación de privilegios de
acceso al esquema es sumamente importante. Muchos accesores tendrán privilegios
de lectura a los descriptores, pero muy pocos tendrán privilegios de
modificación o escritura. Un error al modificar un esquema puede hacer que toda
la base de datos quede inaccesible. Si el archivo mismo de esquema esta
controlado por el mismo esquema, resulta complicado comprobar el uso de estos
privilegios de modificación.
Una protección mas fuerte del acceso al esquema podría incluir el requerimiento
de que más de un accesor asigne un privilegio de acceso de modificación a un
proceso que cambie la tarea del esquema. Ambos recibirán informes de todas las
actividades. Esta autorización conjunta es equivalente a la condición de doble
firma que existe en muchas compañías cuando se emiten cheques que amparen
cantidades muy grandes. Un método alterno de control consiste en mantener dos
esquemas que se regulen recíprocamente y a los que se les asignen distintos
accesores en el nivel superior, de manera que de nuevo exista control conjunto.
Mecanismos de Vistas para Implantación de Seguridad
Para proteger la BD es preciso proteger los recursos, concretamente los datos almacenados, de lecturas y / o actualizaciones accidentales o malintencionadas. Concretamente, los requisitos de protección que pueden establecerse son:
Protección de accesos indebidos.
Protección de inferencias.
Integridad de la BD.
Integridad operacional de los datos.
Integridad semántica de los datos.
Contabilidad y auditoria.
Autenticación del usuario.
Gestión y protección de datos sensibles.
Protección multinivel.
Para cumplir con ellos, es preciso que en cada organización que contenga una base de datos se establezca lo que se denomina políticas, modelos y mecanismos de protección:
Las políticas son las directrices generales que definen las líneas que deben guiar la seguridad de la información. Estas políticas son marcadas, unas veces, por los niveles de mayor responsabilidad de la empresa dependiendo del tipo de actividad de la misma. Otras veces, vienen impuestas por obligaciones legales.
Los modelos son formulaciones matemáticas abstractas de las políticas de seguridad.
Los mecanismos son conjuntos de funciones que implantan los modelos de seguridad previamente definidos.
En algunos
casos estos mecanismos se materializan en hardware o en software, y otras veces
en procedimientos administrativos. Las políticas, modelos y mecanismos están
encaminadas a determinar la forma de restringir el acceso de los usuarios a los
recursos del sistema dependiendo de la protección que se necesite suministrar.
Es una forma lógica de ver los datos físicos ubicados en tablas. Cuando creamos
una vista, seleccionamos un formato que incluye datos que pueden ser tomados de
una o más tablas. La vista queda almacenada en forma permanente, si bien los
datos grabados permanecen inalterados en las tablas correspondientes. Una vista
sólo es una ventana a los datos almacenados.
Utilizadas como mecanismo de seguridad, las vistas restringen el acceso de un
usuario a determinadas columnas de la tabla. Si la columna excluida es la clave
de la fila, también se está impidiendo que el usuario pueda relacionar dos
tablas.
La vista deberá ser propiedad del mismo usuario que posea objetos subyacentes
En la arquitectura de tres niveles estudiada se describe una vista externa como
la estructura de la base de datos tal y como la ve un usuario en particular. En
el modelo relacional, el término `vista' tiene un significado un tanto
diferente. En lugar de ser todo el esquema externo de un usuario, una vista es
una relación virtual, una relación que en realidad no existe como tal. Una vista
se puede construir realizando operaciones como las del álgebra relacional:
restricciones, proyecciones, concatenaciones, etc.
Una vista es el resultado dinámico de una o varias operaciones relacionales
realizadas sobre las relaciones base. Una vista es una relación virtual que se
produce cuando un usuario la consulta. Al usuario le parece que la vista es una
relación que existe y la puede manipular como si se tratara de una relación
base, pero la vista no está almacenada físicamente. El contenido de una vista
está definido como una consulta sobre una o varias relaciones base. Cualquier
operación que se realice sobre la vista se traduce automáticamente a operaciones
sobre las relaciones de las que se deriva. Las vistas son dinámicas porque los
cambios que se realizan sobre las tablas base que afectan a una vista se
reflejan inmediatamente sobre ella. Cuando un usuario realiza un cambio sobre la
vista (no todo tipo de cambios están permitidos), este cambio se realiza sobre
las relaciones de las que se deriva.
Las vistas son útiles por varias razones:
Proporcionan un poderoso mecanismo de seguridad, ocultando partes de la base de datos a ciertos usuarios. El usuario no sabrá que existen aquellos atributos que se han omitido al definir una vista.
Permiten que los usuarios accedan a los datos en el formato que ellos desean o necesitan, de modo que los mismos datos pueden ser vistos con formatos distintos por distintos usuarios.
Se puede simplificar operaciones sobre las relaciones base que son complejas. Por ejemplo, se puede definir una vista como la concatenación de dos relaciones. El usuario puede hacer restricciones y proyecciones sobre la vista, que el SGBD traducirá en las operaciones equivalentes sobre la concatenación.
Las vistas proporcionan independencia de datos a nivel lógico, que también se da cuando se reorganiza el nivel conceptual. Si se añade un atributo a una relación, los usuarios no se percatan de su existencia si sus vistas no lo incluyen. Si una relación existente se reorganiza o se divide en varias relaciones, se pueden crear vistas para que los usuarios la sigan viendo como al principio.
Cuando se actualiza una relación base, el cambio se refleja automáticamente en todas las vistas que la referencian. Del mismo modo, si se actualiza una vista, las relaciones base de las que se deriva deberían reflejar el cambio. Sin embargo, hay algunas restricciones respecto a los tipos de modificaciones que se pueden realizar sobre las vistas. A continuación, se resumen las condiciones bajo las cuales la mayoría de los sistemas determinan si se permite realizar una actualización:
Se permiten las actualizaciones de vistas que se definen mediante una consulta simple sobre una sola relación base y que contienen la clave primaria de la relación base.
No se permiten las actualizaciones de vistas que se definen sobre varias relaciones base.
No se permiten las actualizaciones de vistas definidas con operaciones de agrupamiento (GROUPBY)
Las vistas es una forma de proporcionar al usuario un modelo “personalizado“ de la base de datos. Una vista puede ocultar datos que el usuario no tiene necesidad de ver. El uso del sistema es más sencillo porque el usuario puede restringir su atención a los datos que le interesan. La seguridad se logra si se cuenta con un mecanismo que limite a los usuarios a su vista o vistas personales. Lo normal es que las bases de datos relacionales cuenten con los dos niveles de seguridad:
Relación: Puede permitirse o impedirse que el usuario tenga acceso directo a una relación.
Vista: Puede permitirse o impedirse que el usuario tenga acceso a ala información que aparece en una vista.
Aunque es posible impedir que un usuario tanga acceso directo a una relación, puede permitirse acceso a una parte de esa relación por medio de una vista. De tal manera, es posible utilizar una combinación de seguridad al nivel relacional y al nivel de vistas para limitar el acceso del usuario exclusivamente a los datos que necesita.
Las Técnicas de Protección de Bases de Datos se pueden clasificar en:
Conceptuales: proporcionan una representación conceptual de los requisitos de la base de datos.
Basados en restricciones: restringen las consultas estadísticas que podrían revelar al usuario información confidencial.
Basadas en perturbaciones: introducen algunos tipos de modificaciones durante el procesamiento de la consulta.
Otro enfoque de la seguridad es la contaminación de los datos, o la falsificación aleatoria de los datos facilitados como respuesta a una consulta. Esta falsificación debe realizarse de manera que la significación estadística de la respuesta no se destruya. Una técnica parecida implica la modificación aleatoria de la propia consulta para estas dos técnicas los objetivos implican un compromiso entre exactitud y seguridad.
Es posible
que todas las precauciones que tome la base de datos para evitar el acceso sin
autorización no sea suficiente para proteger los datos muy importantes. En estos
casos, la información se puede encriptar. No es posible leer datos encriptados a
menos que el lector sepa como desencriptar la información.
Existe un gran numero de técnicas para encriptar la información. Es probable que
las técnicas mas sencillas no protejan de manera adecuada los datos, ya que
puede ser fácil para un usuario no autorizado romper el código.
Las técnicas de encripción tiene las siguientes propiedades:
Para los usuarios autorizados es relativamente sencillo encriptar y desencriptar datos.
El esquema de encriptación no depende de mantener en secreto el algoritmo, sino de un parámetro del algoritmo llamado "clave de encriptación".
Para un intruso es muy difícil de determinar cual es la clave de encriptación.
El estándar
de encriptación de datos se basa tanto en la sustitución de caracteres como en
la alteración de su orden de acuerdo con una clave de encriptación. para que este
sistema funcione, es necesario proporcionar las claves de encriptación a los
usuarios autorizados a través de un mecanismo seguro.
Este es un punto débilmente importante ya que la seguridad del sistema será
equivalente a la seguridad del mecanismo de transmisión de la clave de
encriptación.
Existe otra técnica que elimina los problemas del estándar de encriptación de
datos. Este esquema llamado "encriptación de clave pública", se basa en dos
claves: una publica y una privada cada uno de los usuarios U! Tiene sus propias
claves, la publica E! Y las privadas D!. Todas las claves publicas se publican,
pero la privada la conoce solo el usuario al que pertenece.
Si el usuario U! Desea almacenar datos encriptados, los encriptará empleando su
clave publica E!, para desencriptar es necesario contar con la clave primaria
D!. Dado que la clave de encriptación de cada usuario es publica, es posible
intercambiar información de forma segura utilizando esta técnica.
Para que funcione el encriptado de clave publica debe existir un esquema de
encriptación que pueda hacerse publica sin que se facilite la deducción de
esquemas de desencriptado, dicho esquema se basa en lo siguiente:
Existe un algoritmo eficaz para determinar si un numero es primo.
No se conoce un algoritmo eficaz para encontrar los factores primos de un numero.
Cuando se utiliza este esquema, los datos se manejan como un conjunto de números enteros.
Los métodos de encripción de llave privada son conocidos también como de cierre simétrico y los de llave publica como de cierre asimétrico.
En un esquema de llave privada, la información se encripta con una llave que tanto el emisor como el receptor recibieron con privacidad.
En el esquema de llave publica todos los usuarios tienen una llave publica y una privada. Si alguien quiere enviar un mensaje, obtiene una copia de la llave publica con la cual se encripta el mensaje que solo podrá leer.
Si se entiende
por base de datos como un conjunto de datos integrados, adecuado a varios
usuarios y a diferentes usos, es el propio uso concurrente de los datos el que
plantea problemas de seguridad que el administrador de la base de datos debe
paliar en la medida de los posible, con las facilidades que le proporciona el
Sistema de Gestión de su Base de Datos.
La protección de los datos deberá llevarse a cabo contra fallos físicos, fallos
lógicos y fallos humanos (intencionados o no). Estos fallos alteran
indebidamente los datos, los corrompen con lo que la base de datos ya no puede
servir a los fines para los que fue creada.
El sistema de gestión de la base de datos normalmente facilita mecanismos para
prevenir los fallos (subsistema de control), para detectarlos una vez que se han
producido (subsistema de detección) y para corregirlos después de haber sido
detectados (subsistema de recuperación), sin embargo, y aunque éste también
cuenta con un subsistema de seguridad de autorización que se encarga de
garantizar el resguardo de porciones de la base de datos contra el acceso no
autorizado, es necesario además determinar niveles de protección cada vez mas
grandes ante las amenazas de hackers, los cuales son usuarios muy
avanzados que por su elevado nivel de conocimientos técnicos son capaces de
superar determinadas medidas de protección y así llegar a impactar en los datos,
en las personas, en los programas, en los equipos o en la red empresarial.
¿Cuáles son las 3 principales características que se deben mantener en una base de datos ?
Nombre las 3 principales técnicas de protección de datos
¿De qué forma se pueden clasificar los sujetos de autorización?
Defina con sus propias palabras el concepto de encriptación de datos
¿Por qué son útiles las vistas?
¿Cuáles son los requisitos de protección que pueden establecerse ?
http://www.monografias.com/trabajos26/seguridad-base-datos/seguridad-base-datos2.shtml
http://www.monografias.com/trabajos24/bases-de-datos/bases-de-datos.shtml#seguridad
http://www.oocities.org/itcm13/paginita/menus.htm
http://www.monografias.com/trabajos19/administracion-base-datos/administracion-base-datos.shtml
http://www.monografias.com/trabajos34/base-de-datos/base-de-datos.shtml