seguridad bd
TRANSCRIPT
SEGURIDAD SEGURIDAD
Introducción a la seguridad Métodos de seguridad◦ Control de acceso discrecional◦ Control de acceso obligatorio
Forzando multiniveles de seguridad Seguridad en bases de datos estadisticas Cifrado de datos
Tipos de seguridad◦ La seguridad en bases de datos se relaciona
principalmente con los derechos de acceso a la base de datos.◦ Involucra asuntos como la privacía, políticas
corporativas o gubernamentales y requerimientos confidenciales
Control de acceso◦ Previene de accesos no autorizados a la base de
datos
Mecanismos de seguridad discrecional◦ Usados para conceder privilegios a los usuarios,
incluyendo la capacidad de acceder datos específicos en un modo específico.◦ Usado en la mayoría de los SMBD comerciales
RelacionesVistasRegistrosColumnasOperaciones
Usuarios Cuentas ProgramasObjeto
Sujeto
Modelo de matriz de acceso (ejemplo)
Ejemplo: Usuarios A1, A2, A3grant CREATETAB to A1;
create schema EXAMPLE authorization A1;
create INSERT,DELETE on EMP,DEPT to A2;
grant SELECT on EMP, DEPT to A3with gran option;
revoke SELECT on EMP from A3;
Mecanismos de seguridad obligatorios◦ Usados para forzar la seguridad multinivel por la
clasificación de datos y usuarios dentro de varios niveles de seguridad.◦ La mayoría de los SMBD comerciales solamente
proporcionan politicas de seguridad discrecional.
Clases de seguridad típicas◦ Secreto máximo (TS), secreto (S), confidencial
(C), y no clasificado (U).◦ TS es la más alta y U es la más baja.◦ TS>S>C>U
Restricciones:◦ Ningún sujeto S puede leer un objeto O si la
clase de seguridad del objeto es mayor que la seguridad acreditada por el sujeto.
S solo puede leer O si la clase (S) ≥ clase(O)◦ Ningún sujeto puede escribir a un objeto que
tiene menor clase de seguridad que la seguridad acreditada del sujeto, esto previene el flujo de información de una clasificación más alta a una clasificación más baja.
S puede tener acceso de escritura a O solo si la clase(S) ≤ Clase (O)
Las bases estadísticas son usadas para producir estadísticas sobre varias poblaciones: Las características son:◦ La información individual es considerada confidencial◦ A los usuarios solo se les puede permitir el acceso a la
información estadística de la población, por ejemplo, aplicando funciones estadísticas a las tuplas de la población.
Técnicas para proteger la privacía de la información individual en bases de datos estadísticas están fuera del alcance de este curso.
Problemas y solucione son ilustradas por los siguientes ejemplos:
Person (name,rfc,address,city,state,zip,sex,last_degree)
Suponga que se permite la recuperación solamente de la información estadística sobre esta relación usando SUM,AVG,MIN,MAX,COUNT,etc
Las siguientes dos consultas son válidas:Q1: Encontrar el número total de mujeres que tienen ph.D. y viven en
calgary, Alberta select COUNT(*) from Person where last_degree=“ph.D” and sex=“F” and city=“Calgary” and state=“Alberta”;Q2: Encontrar el ingreso promedio de las mujeres que tienen ph.D: y
viven en Calgary, Alberta. select AVG(income) from Person where last_degree=“ph.D” and sex=“F” and city=“Calgary” and state=“Alberta”
Si sabemos que Mary Black es ph.D. y vive en Calgary y nosotros queremos saber sus
ingresos, nosotros podemos usar las dos consultas de
arriba.◦ Cuando la consulta Q1 retorna uno, el resultado de
Q2 es el ingreso de Mary.◦ De otra forma nosotros podemos usar otras
subconsultas usando MAX y MIN y podemos saber el rango donde se encuentran los ingresos de Mary
Ejemplo 2:Si el escritor de la consulta (llamado Connie) también vive en Calgary y tiene
ph.D., entoncespuede usar las siguientes consultas, ella también puede obtener fácilmente el
ingreso de Mary.Q3: select sum(income) from Person where last_degree = “ph.D” and sex = “F” and city = “Calgary” and state=“Alberta” and name <>
“Mary”
Q3: select sum(income) from Person where last_degree = “ph.D” and sex = “F” and city = “Calgary” and state=“Alberta” and name <>
“Connie”
Porque Connie sabe su propio ingreso, por Q4-(Q3-ingreso de Connie), ella sabe el ingreso
de Mary
Un número de restricciones puede ser usado para reducir la posibilidad de deducir información individual de consultas estadísticas:◦ Ninguna consulta estadística es permitada
cuando el número de tuplas en la población especificada por la condición de selección cae dentro de algún umbral.◦ Restringir el número de tuplas en la intersección
de los resultados de las consultas subsecuentes.◦ Otra técnica es prohibir secuencias de consultas
que se refieren repetidamente a la misma población de tuplas.
Especificación de Seguridad en SQL El lenguaje de definición de datos incluye
mandatos para conceder y revocar privilegios
El conjunto de privilegios depende de la versión de SQL
El standart incluye privilegios en: delete, insert, select, update
La forma básica de la sentencia esGRANT <Lista de Privilegios> ON <nombre de relación o vista> TO <lista de usuarios>
Ejemplos: GRANT SELECT ON sucursal TO U1,U2,U3
GRANT UPDATE (saldo) ON deposito TO U1,U2,U3