Seguridad en bases de datos

19
Seguridad en Bases de Datos Gestión de Datos / FRT UTN Profesor: Raul Tejerizo 2013

description

Gestión de Datos FRT-UTN Tucumán - Argentina

Transcript of Seguridad en bases de datos

Page 1: Seguridad en bases de datos

Seguridad en Bases de Datos

Gestión de Datos / FRT UTNProfesor: Raul Tejerizo

2013

Page 2: Seguridad en bases de datos

Seguridad en Bases de Datos

• La Seguridad de la Base de Datos se refiere a los mecanismos que protegen a la base de datos de amenazas, intencionales o accidentales

Page 3: Seguridad en bases de datos

Seguridad de la Base d Datos

• No se refiere solamente a los datos almace-nados, sino también a otras situaciones que pueden afectar a los mismos:

Robo y Fraude Pérdida de Confidencialidad Pérdida de Privacidad Pérdida de Integridad Pérdida de Disponibilidad

Page 4: Seguridad en bases de datos

Amenazas

• Una Amenaza es cualquier situación o suceso, intencionado o accidental, que puede afectar adversamente a un sis-tema y, consecuentemente, a la organi-zación.

Page 5: Seguridad en bases de datos

Contramedidas

• Las contramedidas para enfrentar a las amenazas, son, entre otras, las siguientes:

• Autorización• Controles de Acceso• Vistas• Copias de Seguridad y Recuperación• Integridad• Cifrado

Page 6: Seguridad en bases de datos

Autorización

• La Autorización es la concesión de un derecho o privilegio que permite a una persona acceder legítimamente a un sistema o a un objeto del sistema

• El proceso de autorización implica la Autenticación de los usuarios que consiste en un mecanismo para determinar si un usuario es quien pretende ser.

Page 7: Seguridad en bases de datos

Controles de Acceso

• Los controles de acceso se basan en la concesión y revocación de privilegios.

• Un privilegio permite a un usuario crear o acceder a algún objeto de la base de datos

• Desde el punto de vista de la seguridad, sólo deben concederse privilegios a un usuario que realmente lo necesita.

Page 8: Seguridad en bases de datos

Controles de Acceso

• Control de Acceso Discrecional (DAC, Discretionary Access Control). Se basa en el otorgamiento discrecional de privilegios.

• Tiene algunas debilidades, en cuanto un usuario puede ser engañado para revelar datos confidenciales.

• SQL soporta este mecanismos mediante los comandos GRANT y REVOKE

Page 9: Seguridad en bases de datos

Controles de Acceso

• Control de Acceso Obligatorio (MAC, Mandatory Access Control). Se basa en políticas del sistema que no pueden ser modificadas por usuarios individuales.

• Cada objeto de la base de datos tiene una clase de seguridad, cada usuario un nivel de autorización para cada clase de seguridad y existen reglas de lectura y escritura de objetos por parte de los usuarios.

Page 10: Seguridad en bases de datos

Vistas

• Una vista es una relación virtual que no existe físicamente en la base de datos, sino que se genera en el momento de la solicitud de datos, como resultado de una o más operaciones relacionales que operan sobre las tablas físicas.

• En materia de seguridad, se pueden ocultar partes de la base de datos, sin que el usuario tenga conciencia de la existencia de otros atributos que no están presentes en la vista.

• En SQL se usa el comando CREATE VIEW

Page 11: Seguridad en bases de datos

Copias de Seguridad y Recuperación

• Copia de Seguridad: Proceso de realizar una copia de la base de datos, del archivo de registro, almacenando la copia en un medio de almacenamiento fuera de línea.

• Registro: Proceso de mantener y alma-cenar un registro de todos los cambios realizados en la base de datos, con la finalidad de poder efectuar una recupe-ración en caso de fallo.

Page 12: Seguridad en bases de datos

Integridad

• Restricciones de Integridad: contribuyen a la seguridad al impedir que los datos lleguen a ser inválidos y puedan conducir a resultados erróneos o susceptibles de ser mal interpretados.

Page 13: Seguridad en bases de datos

Cifrado

• El cifrado consiste en la codificación de los datos mediante un algoritmo especial que hace que éstos no sean legibles por quienes no dispongan la clave de des-cifrado.

• Es muy útil para proteger datos confiden-ciales o que sean transmitidos por canales inseguros (ej. Internet)

Page 14: Seguridad en bases de datos

Cifrado

• Un criptosistema comprende los siguientes elementos:

Texto en ClaroTexto en

Claro

Algoritmo de Cifrado

Texto Cifrado

Texto en Claro

Algoritmo de

Descifrado

Clave de Cifrado

Clave de Descifrado

Page 15: Seguridad en bases de datos

Cifrado

• Técnicas de Cifrado:- Cifrado Simétrico: utiliza la misma clave

para el cifrado como para el descifrado.- Cifrado Asimétrico: utiliza diferentes claves

para el cifrado y para el descifrado. Sistemas de clave pública y clave privada. Utilizados para firma digital.

Page 16: Seguridad en bases de datos

Privilegios en SQL

• Clausula GRANT (concede privilegios)

• GRANT Lista de Privilegios ON Nombre Objeto TO Lista Usuarios [WITH GRANT OPTION]

• Lista de Privilegios: SELECT, DELETE, INSERT, UPDATE, entre otros. ALL PRIVILEGES otorga todos los privilegios

Page 17: Seguridad en bases de datos

Privilegios en SQL

• Clausula GRANT (continuación)

• Nombre del Objeto: tabla, vista, dominio.

• Lista de Usuarios: se deben enumerar los usuarios autorizados. PUBLIC autoriza a todos los usuarios presente y futuros.

• WITH GRANT OPTION: permite al usuario transmitir a su vez a otros usuarios los privilegios concedidos.

Page 18: Seguridad en bases de datos

Privilegios en SQL

• Clausula REVOKE (revoca privilegios)• REVOKE [GRANT OPTION FOR] Lista de

Privilegios ON Nombre Objeto FROM Lista Usuarios [RESTRICT - CASCADE]

• Lista de Privilegios: SELECT, DELETE, INSERT, UPDATE, entre otros. ALL PRIVILEGES revoca todos los privilegios otorgados

• Nombre del Objeto: tabla, vista, dominio.

Page 19: Seguridad en bases de datos

Privilegios en SQL

• Clausula REVOKE (continuación)• Lista de Usuarios: se deben enumerar los

usuarios autorizados. PUBLIC revoca los privilegios a todos los usuarios.

• GRANT OPTION FOR: permite que los privilegios pasados sean revocados de manera separada.

• RESTRICT: no permite la revocación si se da el caso de un objeto abandado.

• CASCADE: se ejecuta un DROP para los objetos abandonados.