Sei sulla pagina 1di 7

Seguridad de bases de datos

Concepto de seguridad

La información almacenada en la base de datos debe estar protegida contra accesos no autorizados, destrucción o alteración con fines indebidos y la introducción accidental de inconsistencia.

La técnica empleada apara proteger la base de datos contra personas que no estén autorizadas para tener acceso a una parte de la base de datos o a toda. Es la protección contra el acceso mal intencionado.

Resumen

La técnica empleada apara proteger la base de datos contra personas que no estén autorizadas para tener acceso a una parte de la base de datos o a toda. La información almacenada en la base de datos debe estar protegida contra accesos no autorizados, destrucción o alteración con fines indebidos y la introducción accidental de inconsistencia

Autentificación y autorización

Un usuario puede tener varias formas de autorización sobre partes de la base de datos. Entre ellas se encuentran las siguientes:

Autorización de lectura , que permite leer, pero no modificar, la base de datos.

Autorización de inserción , que permite insertar datos nuevos, pero no modificar los ya existentes.

Autorización de actualización , que permite modificar la información, pero no permite la eliminación de datos.

Autorización de borrado , que permite la eliminación de datos. Un usuario puede tener asignados todos, ninguno o una combinación de los tipos de autorización anteriores. Además de las formas de autorización de acceso de datos antes mencionadas, es posible autorizar al usuario para que modifique es esquema de la base de datos.

Autorización de índice , que permite la creación y eliminación de índices.

Autorización de recursos , que permite la creación de relaciones nuevas.

Autorización de alteración , que permite agregar o eliminar atributos de una relación.

Autorización de eliminación , que permite eliminar relaciones. Las autorizaciones de eliminación y borrado difieren en cuanto a que la autorización de borrado sólo permite la eliminación de tuplas. Si un usuario elimina todas las tuplas de una relación, ésta quedará vacía, pero seguirá existiendo. Si se elimina la relación dejará de existir.

Por lo regular, un SGBD cuenta con un subsistema de seguridad y autorización de la base de datos que se encarga de garantizar la seguridad de porciones de la base de datos contra el acceso no autorizado.

Actualmente se acostumbra hablar de dos tipos de mecanismos de seguridad en las bases de datos:

Los mecanismos de seguridad discrecionales se usan para otorgar privilegios a los usuarios, incluida la capacidad de tener acceso a archivos, registros o campos de datos específicos en un determinado modo ( como modo de lectura, de escritura o de actualización) Los mecanismos de seguridad obligatorios sirven para imponer seguridad de múltiples niveles clasificando los datos y los usuarios en varias clases (o niveles) de seguridad e implementando después la política de seguridad apropiada de la organización. Por ejemplo, una política común consiste en permitir a los usuarios de un cierto nivel de clasificación ver sólo los elementos de información clasificados en el mismo nivel que el usuario (o en un nivel inferior).

Otro problema de seguridad común a todos los sistemas de computo es el de evitar que personas no autorizadas tengan acceso al sistema mismo, ya sea para obtener información o para efectuar cambios mal intencionados en una porción de la base de datos. El mecanismo de seguridad de un SGBD debe incluir formas de restringir el acceso al sistema como un todo. Esta función de denomina control de acceso y se pone en practica creando cuentas de usuarios y contraseñas para que el SGBD controle el proceso de entrada al sistema.

Otra técnica de seguridad es el cifrado de datos , que sirve para proteger datos confidenciales que se transmiten por satélite o por algún otro tipo de red de comunicaciones. Así mismo, el cifrado puede proveer protección adicional a secciones confidenciales de una base de datos. Los datos se codifican mediante algún algoritmo de codificación.

Resumen

Un usuario puede tener varias formas de autorización sobre partes de la base de datos. Entre ellas se encuentran las siguientes:

Autorización de lectura , que permite leer, pero no modificar, la base de datos.

Autorización de inserción , que permite insertar datos nuevos, pero no modificar los ya existentes.

Autorización de actualización , que permite modificar la información, pero no permite la eliminación de datos.

Autorización de borrado , que permite la eliminación de datos. Un usuario puede tener asignados todos, ninguno o una combinación de los tipos de autorización anteriores. Además de las formas de autorización de acceso de datos antes mencionadas, es posible autorizar al usuario para que modifique es esquema de la base de datos.

Autorización de índice , que permite la creación y eliminación de índices.

Autorización de recursos , que permite la creación de relaciones nuevas.

Autorización de alteración , que permite agregar o eliminar atributos de una relación.

Autorización de eliminación , que permite eliminar relaciones. Las autorizaciones de eliminación y borrado difieren en cuanto a que la autorización de borrado sólo permite la eliminación de tuplas. Si un usuario elimina todas las tuplas de una relación, ésta quedará vacía, pero seguirá existiendo. Si se elimina la relación dejará de existir.

Rol y privilegios de usuarios

Entre las obligaciones del DBA está otorgar privilegios a los usuarios que necesitan usar el sistema y clasificar los usuarios y los datos d acuerdo con la política de la organización. El DBA tiene una cuenta privilegiada en el SGBD, a veces denominada cuenta del sistema, que confiere capacidades extraordinarias no disponibles para las cuentas y usuarios ordinarios de la base de datos. Las órdenes privilegiadas del DBA incluyen órdenes para otorgar o revocar privilegios a cuentas individuales, usuarios o grupos de usuarios, y para efectuar los siguientes tipos de acciones:

1. Creación de cuentas : Esta acción crea una nueva cuenta y contraseña para un usuario o grupo e usuarios, a fin de que puedan tener acceso al SGBD.

2. Concesión de privilegios : Esta acción permite al DBA otorgar ciertos privilegios a ciertas cuentas.

3. Revocación de privilegios : Esta acción permite al DBA revocar (cancelar) ciertos privilegios que se habían concedido previamente a ciertas cuentas.

4. Asignación de niveles de seguridad : esta acción

consistente en asignar cuentas de usuario al nivel apropiado de clasificación de seguridad. El DBA es responsable de la seguridad global del sistema de base de datos. La acción 1 de la lista sirve para controlar el acceso el SGBD en general, en tanto que las acciones 2 y 3 se usan para controlar las autorizaciones discrecionales, y con la acción 4 se controla la autorización obligatoria.

Vistas y Seguridad

El concepto de 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. Esta posibilidad sirve tanto para simplificar la utilización del sistema como para fomentar la seguridad. 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 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 la información que aparece en una vista. Aunque es posible impedir que un usuario tenga acceso directo

a una relación, puede permitírsele 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.

Por si mismas, las vistas constituyen un importante mecanismo de autorización discrecional, Por ejemplo, si el propietario A de una relación R desea que otra cuenta B pueda leer únicamente ciertos campos de R, A puede crear una vista V de R que incluya sólo esos atributos, y después otorgar a B el privilegio SELECT para V. Lo mismo se aplica cuando se desea limitar a B a la lectura de sólo ciertas tuplas de R; se puede crear una vista V1 definiéndola por medio de una consulta que seleccione sólo las tuplas de R que A desea poner al alcance de B.

Resumen

Una vista puede ocultar datos que el usuario no tiene necesidad de ver. Esta posibilidad sirve tanto para simplificar la utilización del sistema como para fomentar la seguridad. 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 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 la información que aparece en una vista. Aunque es posible impedir que un usuario tenga acceso directo

a una relación, puede permitírsele 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.

!