mecanismo de identidad

26
MECANISMO DE IDENTIDAD

Upload: antonio-vasquez-silva

Post on 10-May-2017

218 views

Category:

Documents


0 download

TRANSCRIPT

MECANISMO DE IDENTIDAD

MEDIDAS DE SEGURIDAD• Físicas: Controlar el acceso al equipo. Tarjetas de acceso, etc• Personal: Acceso sólo del personal autorizado. Evitar

sobornos, etc.• SO: Seguridad a nivel de SO• SGBD: Uso herramientas de seguridad que proporcione el

SGBD. Perfiles de usuario, vistas, restricciones de uso de vistas, etc.

• Un  SMBD  cuenta  con  un  subsistema  de  seguridad  y  autorización  que  se encarga de garantizar la seguridad de porciones de la 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.

• Discrecional:  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).

• El ABD asigna el propietario de un esquema, quien puede otorgar o revocar privilegios a otros usuarios en la forma de consulta (select),  modificación o referencias.   A través del uso de la instrucción grant option  se  pueden  propagar los  privilegios  en  forma  horizontal o vertical.

• Ejemplo: grant select on Empleado to códigoUsuario• revoke select on Empleado from códigoUsuario• Obligatoria: sirve 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.

• Los sistemas operativos proveen algunos mecanismos de protección para poder implementar políticas de seguridad. Las políticas definen qué hay que hacer (qué datos y recursos deben protegerse de quién; es un problema de administración), y los mecanismos determinan cómo hay que hacerlo. Esta separación es importante en términos de flexibilidad, puesto que las políticas pueden variar en el tiempo y de una organización a otra. Los mismos mecanismos, si son flexibles, pueden usarse para implementar distintas políticas.

• Un aspecto importante de la seguridad es el de impedir la pérdida de información, la cual puede producirse por diversas causas: fenómenos naturales, guerras, errores de hardware o de software, o errores humanos. La solución es una sola: mantener la información respaldada, de preferencia en un lugar lejano.

LAS TRES PRINCIPALES CARACTERÍSTICAS DE LA SEGURIDAD

• Que se deben mantener en una base de datos son la confidencialidad, la integridad y la disponibilidad de la información. - Los datos contenidos en una Base de Datos pueden ser individuales o de una Organización. Sean de un tipo o de otro, a no ser que su propietario lo autorice, no deben ser desvelados. Si esta revelación es autorizada por dicho propietario la confidencialidad se mantiene. Es decir, asegurar la confidencialidad significa prevenir/ detectar/ impedir la revelación impropia de la información.

LA SEGURIDAD ( FIABILIDAD ) DEL SISTEMA

• El concepto de Seguridad lo medimos en:• La protección del sistema frente a ataques externos .• La protección frente a caídas o fallos en el software o en el equipo.• La protección frente a manipulación por parte del administrador .

*SEGURIDAD* La seguridad de los datos implica

protegerlos de operaciones indebidas que pongan en peligro su definición, existencia, consistencia e integridad independientemente de la persona que los accede.

Esto se logra mediante mecanismos que

permiten estructurar y controlar el acceso y actualización de datos.

El objetivo es proteger la Base de Datos contra accesos no autorizados. Se llama también privacidad.

*Incluye aspectos de:

Aspectos legales, sociales y éticos.Políticas de la empresa, niveles de información pública y privada.Controles de tipo físico, acceso a las instalaciones.Identificación de usuarios.Controles de sistema operativos.

Sistema de Seguridad del DBMS

• Objetivos– Integridad:

• Sólo los usuarios autorizados deberían tener acceso para modificar datos.

• Disponibilidad:– Los datos deben estar disponibles para

usuarios y programas de actualización autorizados.

• Confidencialidad:– Protección de los datos de su revelación no

autorizada.

Aspectos Relativos a Seguridad

• Legales• Sociales y Éticos• Controles Físicos• Cuestiones Estratégicas• Problemas Operativos• Controles de Hardware• Sistema de Seguridad del SO• Sistema de Seguridad de la Base de Datos

• Morales/Éticos : puede haber razones morales que regulen quienes tienen acceso a determinada información, por ejemplo registros médicos, de antecedentes penales, etc.

• Requisitos Legales : se requiere que las organizaciones usen con discreción los datos personales de los individuos. Esta información debería poder ser verificada por los individuos mismos

Aspectos Relativos a Seguridad

• Seguridad Comercial : Información perteneciente a una empresa es un recurso valioso que podría ser útil para la competencia.

• Fraude/Sabotaje: La información podría ser mal utilizada, por ej. por un novato o por alguien que tiene la intención de confundir.

• Errores : cambios accidentales en los datos, no maliciosos.

Aspectos Relativos a Seguridad

Tipos De Usuarios:El DBA, tiene permitidas todas las

operaciones, conceder privilegios y establecer usuarios:

Usuario con derecho a crear, borrar y modificar objetos y que además puede conceder privilegios a otros usuarios sobre los objetos que ha creado.Usuario con derecho a consultar, o actualizar, y sin derecho a crear o borrar objetos.

Un SMBD cuenta con un subsistema de seguridad y autorización que se encarga de garantizar la seguridad de porciones de la 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.

DISCRECIONAL 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).

El ABD asigna el propietario de un esquema, quien puede otorgar o revocar privilegios a otros usuarios en la forma de consulta (select), modificación o referencias. A través del uso de la instrucción (grantoption) se pueden propagar los privilegios en forma horizontal o vertical.

Control de acceso discrecional:

GRANT/REVOKE en Vistas El creador de una vista tiene privilegios sobre lavista si los tiene sobre todas las tablas subyacentes. *Si el creador de una vista pierde el privilegioSELECT sobre alguna de las tablas subyacentes, lavista es removida*Si el creador de una vista pierde un privilegioobtenido con With Grant Option, sobre una tablasubyacente, también pierde el privilegio sobre lavista; lo mismo ocurre con los demás usuarios queobtuvieron el privilegio sobre la vista!

• GRANT SCHEMA NombreEsqBD AUTHORIZATION usuario;• GRANT privilegios ON objeto TO usuarios [WITH GRANT OPTION]• REVOKE [GRANT OPTION FOR] privilegio ON objeto FROM usuarios• {CASCADE | RESTRICT}Privilegios a asignar:• SELECT – para leer todas las columnas (incluyendo las que se

añadan con ALTER TABLE)• DELETE – para remover datos• INSERT (columna/s) – para incorporar nuevas tuplas con valores

no nulos (o no default) en esa/s columna/s.• INSERT ídem para todas las columnas.• UPDATE – análogo a INSERT para modificar datos existentes• REFERENCES (columna) - para definir : foreign keys (en otras

tablas) que referencien a esta columna.• Sólo el propietario puede ejecutar CREATE, ALTER, y DROP.

Control de acceso discrecional:

Control de Acceso Discrecional: Ejemplo

• GRANT INSERT, SELECT ON Atletas TO Homero – Homero puede insertar y seleccionar tuplas de Atletas

• GRANT DELETE ON Atletas TO Entrenador WITH GRANT OPTION– Entrenador puede borrar tuplas de Atletas y autorizar borrados a otros usuarios.

• GRANT UPDATE (categoría) ON Atletas TO Organizador– Organizador puede actualizar solamente la categoría en las tuplas de Atletas.

• GRANT SELECT ON VistaAtletasVeteranos TO Juan, Ivan, Ines– Juan, Ivan e Ines NO pueden consultar directamente la tabla Atletas!

• REVOKE: cuando un privilegio le es revocado al usuarioX, también le es revocado a los que lo obtuvieron solamente de usuarioX.

Debilidades del Sistema Discrecional

OBLIGATORIASirve 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.Los sistemas operativos proveen algunos mecanismos de protección para poder implementar políticas de seguridad. Las políticas definen qué hay que hacer, y los mecanismos determinan cómo hay que hacerlo.

Otro aspecto importante de la seguridad, es el que tiene que ver con el uso no autorizado de los recursos:

*Lectura de datos.*Modificación de datos.*Destrucción de datos.*Uso de recursos. *Ciclos de CPU, impresora, almacenamiento.*Principios básicos para la seguridad.

Privilegios al usuario• Usar una B.D.• Consultar ciertos datos.• Actualizar datos.• Crear o actualizar objetos.• Ejecutar procedimientos almacenados.• Referenciar objetos.• Indexar objetos.• Crear identificadores.

Basado en estrategias de la organización, no pueden sermodificados por los usuarios individualmente.

• Cada objeto de la BD tiene asignada una clase de seguridad.

• Cada sujeto (usuario o programa) tiene asignado un permisopara una clase de seguridad.

• Existen reglas que habilitan/prohíben lecturas/escrituras en laBD, de acuerdo a combinaciones específicas de clases deseguridad y permisos.

• La mayoría de los DBMSs actuales no soportan controlmandatorio. Algunas versiones lo hacen para aplicacionesespecíficas, p. ej. Defensa.

Control de Acceso Mandatorio

Control de Acceso Mandatorio

• Modelo Bell-LaPadula: Objetos (tablas, vistas, tuplas) Sujetos (usuarios, programas de usuario)• Clases de Seguridad:Top secret (TS), secret (S), confidential (C), unclassified (U)

TS > S> C > UCada objeto y sujeto tiene asignada una clase.

El Sujeto S puede leer el objeto O sólo siclase(S) >= clase(O) (Propiedad de Seguridad Simple)

El Sujeto S puede escribir el objeto O sólo siclase(S) <= clase(O) (Propiedad *)

"no read up, no write down"

Control de Acceso Mandatorio

Relaciones MultinivelId_objeto Color NombreObj Clase102 Marron Pintura c

101 Rojo mesa S

Usuarios con permisos S y TS pueden ver ambas filas; si tienepermiso C sólo ve la primera y si tiene permiso U no ve ninguna.• Si un usuario con permiso C trata de insertar <101, Azul, Silla, C>:• Si se permite, viola la restricción de clave• Si no se permite, el usuario entiende que hay otro objeto conclave 101 que tiene clase > C!• Problema resuelto si la clase se ve como parte de la clave.

Seguridad en BD Estadísticas

Contiene información acerca de individuos, pero permite sólo accesos ‘masivos’ (por ej. Sueldo promedio, no un sueldo en particular).

• Problema :Puede inferirse información secreta .• Ejemplo: Si se sabe que Juan es el atleta de mayor edad,

se puede hacer la consulta: “cuántos atletas hay mayores que X años? para distintos valores de X hasta que la respuesta sea 1: esto me permite inferir la edad de Juan.

• Solucion : cada consulta debe incluir al menos N filas… pero esto no resuelve otros problemas .

• Ejemplo: pueden obtenerse los promedios de sueldos de dos conjuntos de empleados que difieren en un empleado. De esta manera, por simples operaciones se puede calcular el sueldo del empleado.