La seguridad de la información que debe haber en una base de datos
Enviado por poland6525 • 22 de Julio de 2018 • 1.780 Palabras (8 Páginas) • 451 Visitas
...
Existen distintos perfiles, cada uno con sus respectivos privilegios y es así como se asigna un perfil a cada usuario con todo lo que conlleva el mismo.
El mecanismo de control de acceso se encarga de verificar los privilegios con los que cuente el usuario, para otorgar las autorizaciones a las operaciones deseadas o bien denegar las mismas, cuando sea el caso.
Por ejemplo:
Si tenemos un usuario nuevo, se le puede asignar al perfil deobservador por lo que sólo tiene permiso para ver la información, pero no para agregar o modificar.
En otro caso se asigna un perfil con el privilegio de consulta, al entrar a la base de datos el mecanismo de control revisa sus privilegios, darle o denegarle la autorización de consulta, si éste desea modificar algún dato no podrá hacerlo ya que no tiene ese privilegio, no se le autoriza y finalmente no puede realizar la operación.
Existen diferentes modos de brindar las autorizaciones:
1) Autorización explícita: se utiliza en sistemas tradicionales y consiste en una matriz de control de accesos o un registro donde se almacenan los mismos, esto con la finalidad de que los usuarios puedan tener acceso, a diferentes objetos.
Ejemplo de matriz de control de acceso:
[pic 3]
Esto significa que cada permiso debe brindarse directamente.
Por ejemplo:
En este esquema, si un doctor tiene permiso de acceso, y capturar información de consulta de un paciente, se debe dar por separado la autorización de consulta y captura de datos personales del paciente.
2) Autorización implícita: se da cuando se otorga autorización sobre un objeto y que dicha autorización implica que se tiene autorización sobre otros objetos derivados o relacionados, es decir, una autorización puede deducirse a partir de otra.
Por ejemplo:
Siguiendo el mismo esquema, un doctor, que tiene la autorización de consulta de datos personales del paciente, también la tiene para capturar información. De ese modo al brindarle la autorización de la tabla de consultas, se da automáticamente la autorización a la tabla de pacientes, para capturar nuevos datos.
Los usuarios pueden tener varios tipos de autorización para diferentes partes de la base de datos, por ejemplo:
Lectura (select): permite la lectura de los datos, pero no su modificación. Es la autorización común para usuarios de sóloconsulta.
Inserción (insert): permite la inserción de datos nuevos, pero no la modificación de los existentes.
Actualización (update): permite la modificación de los datos, pero no su borrado.
Borrado (delete): permite el borrado de los datos.
Los usuarios pueden recibir todos los tipos de autorización o ninguno de ellos, o bien una combinación determinada de los mismos dependiendo de sus necesidades.
Además de estas formas de autorización para el acceso a los datos los usuarios pueden recibir permiso para modificar elesquema de la base de datos:
- Mediante la autorización de recursos es posible crear nuevas relaciones.
- Con la autorización de alteración se puede añadir o borrar atributos de las relaciones.
- La autorización de eliminación permite el borrado de relaciones.
La diferencia entre las autorizaciones de eliminación y de borrado consiste en que esta última sólo permite el borrado de tuplas.
Si se eliminan todas las tuplas de una relación, ésta se encontrará vacía, pero seguirá existiendo.
En cambio si se elimina la relación ésta deja de existir junto con sus tuplas.
La autorización de recursos regula la capacidad de crear nuevas relaciones. Si un usuario con autorización de recursos crea una relación nueva, él recibe automáticamente todos los privilegios sobre la misma.
La máxima autoridad pertenece al administrador de la base de datos. Es quien posee siempre la facultad de autorizar a nuevos usuarios, reestructurar la base de datos, etcétera.
El administrador de BD es a la base de datos, como el súper usuario o administrador del SO es al sistema operativo donde el primero tiene todos los permisos de la BD y puede crear, borrar y/o modificar objetos o datos con libertad total y el segundo puede instalar, desinstalar y/o configurar programas del sistema operativo (por ejemplo windows).
¿Y cómo se definen los privilegios?
En SQL se maneja una sintaxis definida para los privilegios:
[pic 4]
Los privilegios más comunes son:
- select: selección o consulta
- insert: inserción
- update: actualización, modificación
- delete: borrado
Ejemplo:
[pic 5]
La instrucción anterior concede a los usuarios sgarcia y aperez los privilegios de consulta (select) y actualización (update) sobre las tablas productos y clientes.
¿Y si se desea brindar un privilegio de actualización sobre algunos atributos de un objeto únicamente?
Digamos que el usuario jmendez debe de ser capaz de actualizar (modificar) los campos nombre_producto y precio de la tabla productos que cuente con otros campos además de esos dos.
En ese caso utilizaremos el comando:
[pic 6]
Además, tenemos un comando que concede todos los privilegios:
[pic 7]
De ese modo se concede control total de los objetos productos y clientes al usuario sgarcia.
[pic 8]
[pic 9]
Cuestionario
...