Sei sulla pagina 1di 11

UNIVERSIDAD TECNOLÓGICA DE PANAMÁ

CENTRO REGIONAL DE COLÓN

Ingeniería En Sistemas Computacionales

Licenciatura en Desarrollo de Software

Tópicos Especiales

Resumen Capítulo 2:

Seguridad en la base de datos

Profesor

Abdy Martínez

Integrantes Cédulas
AURELIANO MEZA 3-736-2179
JONATHAN CORREA 3-736-1941
MANUEL GONDOLA 3-727-1017

1 de Febrero de 2020

1. Base de datos
Es un conjunto de información perteneciente a un mismo contexto, ordenada de
modo sistemático para su posterior recuperación, análisis y/o transmisión.
Las bases de datos son el producto de la necesidad humana de almacenar la
información, es decir, de preservarla contra el tiempo y el deterioro, para poder
acudir a ella posteriormente, para almacenar enormes cantidades de datos en
espacios físicos limitados, gracias a su conversión en señales eléctricas o
magnéticas.

2. Características de una base de datos


Entre las principales características de la base de datos podemos mencionar:
 Integridad: La integridad de la base de datos se refiere a la validez y la
consistencia de los datos almacenados; normalmente, la integridad se
expresa mediante restricciones o reglas que no se pueden violar.
 Seguridad: La seguridad de la base de datos es la protección de la base
de datos frente a usuarios no autorizados. Sin unas buenas medidas de
seguridad, la integración de datos en los sistemas de bases de datos hace
que éstos sean más vulnerables que en los sistemas de ficheros.
 Concurrencia: En algunos sistemas de ficheros, si hay varios usuarios que
pueden acceder simultáneamente a un mismo fichero, es posible que el
acceso interfiera entre ellos de modo que se pierda información o se pierda
la integridad.
 Recuperación: Muchos sistemas de ficheros dejan que sea el usuario
quien proporcione las medidas necesarias para proteger los datos ante
fallos en el sistema o en las aplicaciones. Los usuarios tienen que hacer
copias de seguridad cada día, y si se produce algún fallo, utilizar estas
copias para restaurarlos.

3. Importancia de una base de datos


Las bases de datos facilitan no solo el registro de gran cantidad de datos son
también el acceso de los mismos, lo cual permite ahorrar espacio físico como
tiempo al consultar información de ellas en el mundo actual la importancia del
almacenamiento de una Base de Datos y no solo en ella, es obtener más rápido
información de forma más rápida y exacta.

4. Tipos de datos
4.1 Datos sensibles
Son datos que afectan la esfera más íntima del ser humano, y su divulgación
indebida puede ocasionar daño al honor y la intimidad de las personas. Estos
datos requieren mayor protección y la Ley establece un tratamiento especial.

Los datos sensibles son datos personales que revelan origen racial y étnico,
opiniones políticas, convicciones religiosas, filosóficas o morales, afiliación sindical
e información referente a la salud o a la vida sexual.

2
5. Tipos de bases de datos
5.1 Según su vulnerabilidad
Podemos mencionar:

 Bases de datos estáticas: Típicas de la inteligencia empresarial y otras


áreas de análisis histórico, son bases de datos de sólo lectura, de las
cuales se puede extraer información, pero no modificar la ya existente.
 Bases de datos dinámicas: Aparte de las operaciones básicas de
consulta, estas bases de datos manejan procesos de actualización,
reorganización, añadidura y borrado de información.

5.2 Según su contenido


Pueden ser:
 Bibliográficas: Contienen diverso material de lectura (libros, revistas, etc.)
ordenado a partir de información clave como son los datos del autor, del
editor, del año de aparición, del área temática o del título del libro, entre
otras muchas posibilidades.
 De texto completo: Se manejan con textos históricos o documentales,
cuya preservación debe ser a todo nivel y se consideran fuentes primarias.
 Directorios: Listados enormes de datos personalizados o de direcciones
de correo electrónico, números telefónicos, etc. Las empresas de servicios
manejan enormes directorios clientelares, por ejemplo.
 Especializadas: Bases de datos de información híper especializada o
técnica, pensadas a partir de las necesidades puntuales de un público
determinado que consume dicha información.

6. Ejemplos de bases datos


Algunos ejemplos posibles de bases de datos:
 Guías telefónicas: Aunque en desuso, estos voluminosos libros solían
contener miles de números telefónicos asignados a hogares, empresas y
particulares, para permitir al usuario dar con el que necesitaba.
 Archivos personales: El conjunto de los escritos de vida de un autor,
investigador o intelectual a menudo son preservados en un archivo, que se
organiza en base a la preservación y reproducción de los originales,
permitiendo su consulta sin poner en riesgo el documento original.
 Bibliotecas públicas: El perfecto ejemplo de bases de datos, pues
contienen miles o cientos de miles de registros pertenecientes a cada título
de libro disponible para su préstamo, ya sea en sala o circulante, y del que
puede haber más de un mismo ejemplar en el depósito.

3
 Registros de transacciones: Las operaciones realizadas con una tarjeta
de crédito, así como las llamadas realizadas con un celular, u otro tipo de
transacciones comerciales cotidianas, generan todo un conjunto de
registros que van a dar a una base de datos de la empresa.
 Historial médico: Cada vez que acudimos al doctor o a un hospital, se
actualiza la información respecto a nuestra salud, al tratamiento recibido y
demás detalles médicos en un archivo que lleva registro de nuestra historia
médica, en caso de que a futuro se requiera conocer datos específicos,
como operaciones o tratamientos recibidos.

7. Seguridad en la base de datos


Cuando se habla de seguridad en la Base de Datos, es protegerlo de operaciones
que pongan en peligro la definición, existencia, la consistencia e integridad, esto,
sin importar quien sea la persona que acceda a ella.

7.1 Características Principales


La seguridad en la Base de datos cuenta con tres características
fundamentales:
a. Mantener la integridad, confiabilidad y la disponibilidad de la
información.
 La integridad es mantener los datos de manera correcta y
completa en la base de datos, esto se debe a que cuando
se realicen algún tipo de sentencias, la integridad de los
datos puede perderse o corromperse haciendo que la base
de datos arroje información errónea.
 La confiabilidad es cuando el usuario pueda seguir
realizando procesos de solicitud incluso si el software que
lo utilice este fallando.
 Disponibilidad de los datos, que los usuarios puedan
consultar a la base de datos que por lo general está en un
servidor.
b. Los datos pueden ser individuales o de una organización:
 Los datos individuales se refieren a los datos las personas
que se encuentran almacenados en la base de datos,
como por ejemplos: nombre, apellido, puesto, salario,
correo, direcciones; cualquier información que pueda
comprometer a un usuario.
 Los datos de la organización se refieren a todos los datos
que maneje la organización, como, por ejemplo: proyectos,
departamentos, puesto, usuarios, contraseñas, horario de
trabajo.

7.2 Medición de la Seguridad


Una seguridad en la base de datos se mide por:
4
 Protección a ataques externos
 Protección frente a caídas de software o equipos
 Protección frente a manipulación por parte del administrador.

7.3 Requisitos
 Debe ser protegida ante cualquier accidente físico, como fuego,
agua, golpes, etc.
 Debe ser reconstruirles si ocurre un accidente y se pierde el
servidor.
 Debe poder realizar procesos de auditoria. Ya que se podría
cometer delitos con algunas informaciones.
 Debe diseñarse a prueba de intromisiones. Sin importar quien
sea, no debería pasar sobre la seguridad.

8. Tipos de seguridad
La seguridad de las bases de datos es un área amplia que abarca varios
temas, entre ellos se encuentran los siguientes:
 Cuestiones éticas y legales relativas al derecho de tener acceso a cierta
información
 Cuestiones de política a nivel gubernamental, institucional o corporativo,
relacionadas con el tipo de información que no debe estar disponible para el
publico
 Cuestiones relacionadas con el sistema, como los niveles del sistema en
que deben manejarse diversas funciones de seguridad
 Las necesidades en las organizaciones de identificar múltiples niveles de
seguridad y clasificar los datos y los usuarios según estos niveles
Se acostumbra a hablar de dos tipos de mecanismos de seguridad en las
bases de datos:

8.1 Discrecionales
Se usa para otorgar y revocar privilegios a los usuarios a nivel de archivos,
registros o campos en un modo determinado (consulta o modificación).

8.2 Obligatorios
Sirven para imponer seguridad de varios niveles tanto para los usuarios como para
los datos. El problema de la seguridad consiste en lograr que los recursos de un
sistema sean, bajo toda circunstancia, utilizados para los fines previstos. Para eso
se utilizan mecanismos de protección.

9. Medidas de seguridad
9.1 Físicas
Controlar el acceso al equipo. Tarjetas de acceso, etc

5
9.2 Personal
Acceso sólo del personal autorizado. Evitar sobornos, etc.

9.3 Sistema Operativo


Seguridad a nivel de SO

9.4 Administrador de base de datos


Garantiza y optimiza la seguridad, integridad y estabilidad de las bases de datos,
que administran la información de las operaciones del negocio, para que siempre
estén disponibles, según las necesidades de las diferentes áreas de la compañía.

9.5 Sistema de Gestor de Base de Datos


Un SMBD cuenta con un subsistema de seguridad y autorización que se encarga
de garantizar la seguridad de porciones del BD contra el acceso no autorizado.
 Identificar y autorizar a los usuarios: uso de códigos de acceso y palabras
claves, exámenes, impresiones digitales, reconocimiento de voz, barrido de
la retina, etc.
 Autorización: usar derechos de acceso dados por el terminal, por la
operación que puede realizar o por la hora del día.
 Uso de técnicas de cifrado: para proteger datos en Base de Datos
distribuidas o con acceso por red o internet.
 Diferentes tipos de cuentas: en especial del ABD con permisos para:
creación de cuentas, concesión y revocación de privilegios y asignación de
los niveles de seguridad.
 Manejo de la tabla de usuarios con código y contraseña, control de las
operaciones efectuadas en cada sesión de trabajo por cada usuario y
anotadas en la bitácora, lo cual facilita la auditoría de la Base de Datos.

9.5.1 SQL

SQL Server Express es una edición gratuita y muy capaz de SQL Server con la
que podemos desarrollar todo tipo de aplicaciones (de escritorio o web) con las
únicas limitaciones del tamaño de la base de datos y la escalabilidad. Puedes
crear tantas bases de datos como necesites y también crear varias instancias.

9.5.2 MYSQL
Es el sistema gestor de bases de datos relacional por excelencia. Es un
SGBD multihilo y multiusuario utilizado en la gran parte de las páginas web
actuales. Además, es el más usado en aplicaciones creadas como software libre.

Las principales ventajas de este Sistema Gestor de Bases de datos son:


 Facilidad de uso y gran rendimiento
 Facilidad para instalar y configurar
 Soporte multiplataforma

6
 Soporte SSL
La principal desventaja es la escalabilidad, es decir, no trabaja de manera eficiente
con bases de datos muy grandes que superan un determinado tamaño.

9.5.3 ORACLE
Oracle ha sido el SGBD por excelencia para el mundo empresarial, considerado
siempre como el más completo y robusto, destacando por:
 Soporte de transacciones.
 Estabilidad.
 Escalabilidad.
 Multiplataforma.
La principal desventaja, al igual que SQL Server, es el coste del software ya que,
aunque cuenta con una versión gratuita (Express Edition o XE), sus principales
opciones son de pago.

9.6 Control de acceso


Una Base de Datos para una empresa contiene grandes cantidades de
información y usualmente tiene varios grupos de usuarios, la mayoría de estos
usuarios necesitan acceder sólo a una pequeña parte de los datos. Por ello, un
DBMS tiene dos enfoques principales para esto:
a. Control de acceso discrecional: Previene de accesos no autorizados
a la base de datos y está basado en los derechos de acceso o
privilegios y mecanismos para darle al usuario tales privilegios.
Acceso discrecional es un modo de restringir el acceso a la información basado en
privilegios. Dos niveles de asignación de privilegios:
 Nivel de cuenta: En este nivel el administrador especifica los
privilegios particulares que tiene cada usuario, independiente de las
tablas del BD (CREATE TABLE, CREATE VIEW, ALTER, MODIFY,
SELECT).
 Nivel de relación: En este nivel se controlan los privilegios para tener
acceso cada relación o vista individual. Cada tabla de BD tiene
asignada una cuenta propietaria, que tiene todos los privilegios sobre
esa tabla y se encarga de otorgarlos al resto de cuentas.
Sujetos de autorización
 USUARIOS
 GRUPOS DE USUARIOS
 ROLES
 PROCESOS
Privilegios de autorización
 LEER, ESCRIBIR, EJECUTAR

7
 SELECCIONAR, INSERTAR, ACTUALIZAR, REFERENCIAR, INDEXAR
Las políticas de control de acceso se pueden clasificar en dos grupos:
 Cerradas: Solamente los accesos autorizados explícitamente son
permitidos
 Abiertas: Los accesos que no son explícitamente prohibidos son permitidos.

9.7 Cifrado de datos


El cifrado de datos que sirve para proteger datos confidenciales que se transmiten
por satélite o algún tipo de red de comunicaciones. Asimismo, 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. Un usuario no
autorizado tendrá problemas para descifrar los datos codificados, pero un usuario
autorizado contará con algoritmos para descifrarlos.

9.8 Autorización
Para facilitar la administración los SGBD suele incorporar el concepto de perfil, rol
o grupo de usuarios que agrupa a una serie de privilegios por lo que el usuario que
se asigna a un grupo hereda todos los privilegios del grupo. En un SGBD puede
existir diferentes tipos de autorización:
Puede hacerse entre:
 Autorización explícita. Normalmente usada en los sistemas
tradicionales. Consiste en almacenar que sujetos pueden tener
acceso a ciertos objetos con determinados privilegios para lo que
suele utilizarse una matriz de control de accesos.
 Autorización implícita. Consiste en que una autorización definida
sobre un objeto puede deducirse a partir de otras (por ejemplo, si se
puede acceder a una clase en un SGBD se puede también acceder a
todas las instancias de esa clase).
9.8.1 Lectura
La autorización de lectura permite la lectura de los datos, pero no su modificación.

9.8.2 Inserción
La autorización de inserción permite la inserción de datos nuevos, pero no la
modificación de los existentes.

9.8.3 Actualización
La autorización de actualización permite la modificación de los datos, pero no su
borrado.

9.8.4 Borrar
La autorización de borrado permite el borrado de los datos.

8
9.9 Back UPS
Se refiere a la copia de archivos físicos o bases de datos a un sitio secundario
para su preservación en caso de falla del equipo u otra catástrofe. Las copias de
seguridad son la única forma de proteger los datos. Con las copias de seguridad
válidas de una base de datos puede recuperar los datos en caso de que se
produzcan errores, por ejemplo:
 Errores de medios.
 Errores de usuario, por ejemplo, quitar una tabla por error.
 Errores de hardware, por ejemplo, una unidad de disco dañada o la
pérdida permanente de un servidor.
 Desastres naturales. El uso de la copia de seguridad permite crear
una copia de seguridad externa en una región diferente de la
ubicación local, con lo que podrá utilizarla en caso de que un
desastre natural afecte a su ubicación.

10. Violaciones a la base de datos


Entre las formas de acceso malintencionado se encuentran:
 La lectura no autorizada de los datos (robo de información)
 La modificación no autorizada de los datos
 La destrucción no autorizada de los datos

11. Vistas
Una vista de base de datos es un subconjunto de una base de datos y se basa en
una consulta que se ejecuta en una o más tablas de base de datos. Las vistas de
base de datos se guardan en la base de datos como consultas con nombre y se
pueden utilizar para guardar consultas completas que se utilizan con frecuencia.
Hay dos tipos de vistas de base de datos: vistas dinámicas y vistas estáticas. Las
vistas dinámicas pueden contener datos de una o dos tablas e incluir
automáticamente todas las columnas de la tabla o tablas especificadas. Las vistas
dinámicas se pueden actualizar dinámicamente cuando se crean o modifican
objetos relacionados u objetos ampliados. Las vistas estáticas pueden contener
datos de varias tablas y las columnas necesarias de estas tablas se deben
especificar en las cláusulas SELECT y WHERE de la vista estática. Las vistas
dinámicas se pueden actualizar manualmente cuando se crean o modifican
objetos relacionados u objetos ampliados.
Cuando se crea una vista dinámica con datos de dos tablas, debe asegurarse de
que ambas tablas tengan las mismas columnas PRIMARYKEYCOLSEQ o que
contengan índices exclusivos con el mismo nombre de columna en el mismo
orden.
En un entorno multitenencia, el administrador global crea vistas de base de datos
iniciales, que forman parte de los datos predeterminados que se proporciona a los

9
inquilinos. El ID de inquilino debe añadirse a las cláusulas SELECT y WHERE de
vistas estáticas para garantizar que se crean las vistas específicas de inquilino.

12. Procedimientos almacenados


 Son conjunto de comandos que pueden ser ejecutados directamente en
el servidor, es decir, será ejecutado por el servidor de Base de Datos y no por el
programa cliente que lo accede, permitiendo la ejecución de una acción o conjunto
de acciones especificas. Los procedimientos se asemejan a las construcciones de
otros lenguajes de programación, porque pueden:
 Aceptar parámetros de entrada y devolver varios valores en forma de
parámetros de salida al programa que realiza la llamada.
 Contener instrucciones de programación que realicen operaciones en la
base de datos.
 Devolver un valor de estado a un programa que realiza una llamada para
indicar si la operación se ha realizado correctamente o se han producido
errores, y el motivo de estos.
Ventajas de usar procedimientos almacenados
En la siguiente lista se describen algunas de las ventajas que brinda el uso de
procedimientos.
 Tráfico de red reducido entre el cliente y el servidor: Los comandos de
un procedimiento se ejecutan en un único lote de código. Esto puede
reducir significativamente el tráfico de red entre el servidor y el cliente
porque únicamente se envía a través de la red la llamada que va a ejecutar
el procedimiento.
 Mayor seguridad: Varios usuarios y programas cliente pueden realizar
operaciones en los objetos de base de datos subyacentes a través de un
procedimiento, aunque los usuarios y los programas no tengan permisos
directos sobre esos objetos subyacentes.
 Reutilización del código: El código de cualquier operación de base de
datos redundante resulta un candidato perfecto para la encapsulación de
procedimientos
 Mantenimiento más sencillo: Cuando las aplicaciones cliente llaman a
procedimientos y mantienen las operaciones de base de datos en la capa
de datos, solo deben actualizarse los cambios de los procesos en la base
de datos subyacente.
 Rendimiento mejorado: De forma predeterminada, un procedimiento se
compila la primera vez que se ejecuta y crea un plan de ejecución que
vuelve a usarse en posteriores ejecuciones.

10
13. Enmascaramiento de datos
El enmascaramiento de datos es un método con el que podemos crear una
versión que tiene una estructura similar a la de los datos originales pero que no es
auténtica y que puede utilizarse para fines tales como pruebas de software y
formación de usuarios. El propósito de esto es proteger los datos reales a la vez
que se dispone de un sustituto funcional para ocasiones en las que los datos
reales no son necesarios.
Los siguientes son algunas de las cosas que deberías tener en cuenta cuando
diseñas o eliges una solución de enmascaramiento de datos sensibles:
 No reversible. No debería ser posible recuperar los datos sensibles
originales una vez se ha producido el proceso de enmascaramiento de
datos. Si es posible invertir el proceso para recuperar los datos sensibles de
nuevo, esto no cumple el propósito por el que se realiza en el
enmascaramiento de datos.
 Los datos enmascarados deberían parecerse a los datos de
producción. Esto es uno de los puntos claves que necesitan ser
considerados. Los datos deberían parecerse a los datos en vivo porque de
otra forma las pruebas podrían no ser válidas. Por lo tanto, cuando una
solución se diseña o se compra para enmascaramiento de datos sensibles,
este punto es uno de los primeros que debes tener en cuenta.
 Mantenimiento de la integridad referencial. Si el campo de datos que
está siendo manipulado es una clave primaria, cualquier clave ajena que
haga referencia a esta clave primaria también debe hacerlo con el dato
enmascarado, de lo contrario la integridad referencial no se mantiene y
habrá una clave ajena en alguna tabla que no se corresponde con ninguna
clave primaria.
 Repetible. El enmascaramiento de datos debe de ser un proceso repetible.
Los datos de producción cambian frecuentemente, a veces en pocas horas.
Si la solución de enmascaramiento de datos da soporte al
enmascaramiento una sola vez, puede causar un problema, porque los
nuevos registros añadidos pueden no ser enmascarados
 Integridad de la base de datos. Debería ser capaz de descubrir las
relaciones entre los diferentes objetos de la base de datos de forma
automática y debería ser capaz de mantener su estado en consecuencia.
 Enmascaramiento de datos pre-empaquetados. Si estás comprando una
solución de enmascaramiento de datos, entonces deberías también buscar
que exista la ayuda de tener datos enmascarados pre-empaquetados para
requisitos generales, como números de tarjetas de crédito, números de
seguridad social, etc.

11

Potrebbero piacerti anche