Вы находитесь на странице: 1из 45

2/23/13

SEGURIDAD

Haga clic para modificar el estilo de subttulo del patrn

DISEO DE BASE DE DATOS

2/23/13

introduccin
Seguridad: Proteccin de los datos contra su revelacin, su alteracin o su destruccin no autorizadas. Proteger los datos ante usuarios no autorizados. Integridad: La precisin o validez de los datos. Proteger los datos de usuarios

Consideraciones generales

2/23/13

Aspectos sobre el problema de la seguridad: Aspectos legales, sociales y ticos Controles fsicos Cuestiones de poltica Problemas operacionales Controles de hardware Soporte del sistema operativo

2/23/13

Control de acceso

Enfoques:
Control Control

de acceso discrecional. de acceso obligatorio.

2/23/13

Control de acceso discrecional


Un usuario especfico tendr generalmente diferentes derechos de acceso (tambin conocidos como privilegios) sobre diferentes objetos. Garantiza privilegios a usuarios, incluyendo la capacidad para acceder archivos de datos especficos, registros o campos para operar de una manera determinada (read, insert, delete, o update).

Control de acceso discrecional


GRANT SCHEMA NombreEsqBD AUTHORIZATION usuario;

2/23/13

GRANT privilegios ON objeto TO usuarios [WITH GRANT OPTION] REVOKE [GRANT OPTION FOR] privilegio ON objeto FROM usuarios {CASCADE | RESTRICT} Privilegios a asignar: q SELECT para leer todas las columnas (incluyendo las que se aadan con ALTER

2/23/13

Control de acceso discrecional


WITH GRANT OPTION: permite que el poseedor de ciertos privilegios pueda transmitirlos a otros usuarios. Usuario puede ser un username o PUBLIC PUBLIC los privilegios se asignan a todos (ej. GRANT SELECT ON ListaAlumnos TO PUBLIC;)

2/23/13

Control de acceso discrecional GRANT INSERT, SELECT ON Atletas TO Byron


Byron 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 (categora) ON Atletas TO Organizador Organizador puede actualizar solamente la categora en las tuplas de Atletas. GRANT SELECT ON VistaAtletasVeteranos TO Josu, Brandon, Alice Josu, Brandon y Alice NO pueden consultar directamente la tabla Atletas

2/23/13

REVOKE:

Control de acceso discrecional

Jos: GRANT SELECT ON Atletas TO Martin WITH GRANT OPTION Martn: GRANT SELECT ON Atletas TO Juan WITH GRANT OPTION Jos: REVOKE SELECT ON Atletas FROM Martin CASCADE

Cada objeto de datos est etiquetado con un nivel de clasificacin determinado y a cada usuario se le da un nivel de acreditacin. Un objeto de datos especfico slo puede ser accedido por los usuarios que tengan el nivel de acreditacin adecuado. Los esquemas obligatorios tienden a ser jerrquicos por naturaleza

Control de acceso obligatorio

2/23/13

2/23/13

Control de acceso obligatorio

Clasifica usuarios y datos en mltiples niveles de seguridad, y luego fuerza determinadas reglas acordes a cada nivel.

2/23/13

Modelo Bell-LaPadula:

Control de acceso obligatorio

Objetos (tablas, vistas, tuplas) Sujetos (usuarios, programas de usuario) Clases de Seguridad: Top secret (TS), secret (S), confidential (C), unclassified (U) TS > S> C > U Cada objeto y sujeto tiene asignada una clase. El Sujeto S puede leer el objeto O slo si clase(S)

2/23/13

Relaciones Multinivel Id_Objeto Color Nobre_Obj Clase


102 101 Caf Rojo Pintura Mesa C S

Control de acceso obligatorio

2/23/13

Control de Acceso basado en Roles


El acceso obligatorio o mandatorio es rgido porque hay que asignar permisos de una determinada clase a cada objeto y sujeto. En el mundo real, los privilegios de acceso estn asociados con el rol de una persona en la organizacin. Cada rol debe ser creado con determinados privilegios.

2/23/13

Reglas de autorizacin
Las actividades de creacin y mantenimiento de logins y usuarios de las bases de datos se reparten entre:
System System

Security Officer (SSO) Administrator (SA) Owner (DBO).

DataBase

2/23/13

La sntesis del proceso de agregar nuevos usuarios consta de los siguientes pasos: 1. El SSO crea una cuenta para el login al DBMS. 2. Un SA o DBO agrega un usuario; para el login creado; a una base de datos. Se puede dar al usuario un alias o asignarlo a un grupo de usuarios. 3. Un SA, DBO o propietario del objeto concede

Usuarios

2/23/13

Usuarios
Crear logins para el DBMS SA o SSO. Procedimiento addlogin. Se agrega una fila a la tabla de sistema syslogins. (uid) identificador de usuario. Crear usuario de la base de datos Procedimiento adduser. El usuario debe existir como login del DBMS. Se agrega una fila en la tabla sysusers que

2/23/13

Procedimientos estndar para administracin de usuarios

2/23/13

Procedimientos estndar para administracin de usuarios

2/23/13

Clasificacin de datos

Parapoder asignar autorizaciones, primero tenemos que identificar exactamente cul es la informacin importante en las empresas. Ese es el propsito de la clasificacin de datos.

2/23/13

Clasificacin de datos
Beneficios:

Ayuda a realizar anlisis de riesgos. la planeacin estratgica para la proteccin de datos. deslindar responsabilidades.

Facilita

Facilita

2/23/13

Clasificacin de datos
Niveles de Clasificacin:
Secreto:

Informacin sensible que tpicamente slo el Director de la empresa y sus colaboradores cercanos conocen: planes de inversiones, adquisiciones, fusiones o restructuraciones, manejo de asuntos legales, estrategias de negociacin con el sindicato, etc.
Confidencial:

2/23/13

Clasificacin de datos (Cont. Niveles)


Restringido:

Datosoperacionalesde cada rea, en los cuales slo el personal adscrito a esa rea especfica debe tener acceso:documentos de Finanzas, Contabilidad, Recursos Humanos, Tecnologas de Informacin, etc.
Interno:

Documentos de inters general paratodoslos empleados, sin importar adscripcin.

Clasificacin de datos
(ejemplo)

2/23/13

2/23/13

Clasificacin de datos
Es importante tener claro en la empresa que personas pertenecen a cada uno de estos niveles. La idea bsica es que cada objeto de datos tiene un nivel de clasificacin y cada usuario tiene un nivel de acreditacin (con las mismas posibilidades que tienen los niveles de clasificacin)

2/23/13

Clasificacin de datos
Se imponen las siguientes reglas que se deben a Bell y La Padula:
1.

El usuario puede recuperar el objeto j slo si el nivel de acreditacin de i es mayor o igual al nivel de clasificacin de j (la "propiedad de seguridad simple")

2. El usuario i puede actualizar el objeto j slo si el nivel de acreditacin de es igual al nivel de clasificacin de j (la "propiedad

2/23/13

Cifrado de datos
Es

posible que todas las precauciones que tomemos para evitar el acceso sin autorizacin no sean suficientes para proteger los datos muy importantes. estos casos, la informacin puede cifrarse.

En

No

es posible leer datos cifrados a menos que el lector sepa cmo descifrar la informacin.

2/23/13

Cifrado de datos
Partes de un sistema criptografico: Un mensaje M que debe almacenarse o transportarse. Un criptograma C Un conjunto de claves I Un conjunto de reglas de encriptamiento Un conjunto de reglas de desencriptamiento

2/23/13

Cifrado de datos
Algoritmo de transposicin columnar: Considerar el mensaje: Ser o no ser; he ah la cuestin y se desea utilizar una matriz de n x 5. En ese caso, dicha oracin queda ubicada de la siguiente forma.

2/23/13

Cifrado de datos

As el criptograma seria el siguiente: see u enr len ro, aas h t oshci

2/23/13

Seguridad sql
Haga clic para modificar el estilo de subttulo del patrn

2/23/13

CREACIN DE USUARIOS:
Para crear un usuario utilizamos la sentenciaCREATE USER. Cuando se crea una cuenta como mnimo se tiene que asignar un nico nombre (username) y una contrasea para poder autenticarse. Para cambiar alguno de los atributos que se le ha aadido al usuario creado se utiliza la sentenciaALTER USER.

2/23/13

AUTENTICACIN ORACLE
Cuando uno se conecta con una instancia de una base de datos la cuenta de usuario debe de estar autenticada. ORACLE provee tres mtodos de autenticacin para nuestra cuenta de usuario.
AUTENTICACIN

PASSWORD

MEDIANTE EXTERNA

AUTENTICACIN

2/23/13

AUTENTICACIN ORACLE
AUTENTICACIN MEDIANTE PASSWORD: Cuando un usuario conecta con una base de datos verifica que este usuario y la contrasea introducida almacenada en la base de datos, sea correcta. Las contraseas se guardan encriptadas en la base de datos (en el data dictionary).

2/23/13

AUTENTICACIN ORACLE
AUTENTICACIN EXTERNA: Cuando un usuario conecta con la base de datos se verifica que el nombre de usuario es el mismo que el nombre de usuario del sistema operativo para permitir la validacin. No se almacenan las cuentas en la base de datos de ninguna forma. Estas cuentas estn siempre referidas conOPS$.A partir de la versin 10g se puede configurar

2/23/13

AUTENTICACIN ORACLE
AUTENTICACIN GLOBAL: Cuando un usuario se conecta con la base de datos se verifica globalmente cuando la informacin pasa por una opcin avanzada de seguridad ( ADVANCED SECURITY OPTION ) para la autenticacin tal como Kerberos, RADIUS .... Para las cuentas globales no se

2/23/13

ASIGNACIONES A LOS USUARIOS


ASIGNACIN DE UN USUARIO A UN TABLESPACE ( DEFAULT TABLESPACE ) Mediante esta sentencia asignamos un usuario a un tablespace, este ser su tablespace por defecto cuando creamos un usuario. SQL > CREATE USER byron IDENTIFIED BY b12z321 DEFAULT TABLESPACE users;

2/23/13

ASIGNACIN DE UN USUARIO A UN TABLESPACE TEMPORAL


Un tablespace temporal se utiliza para almacenar segmentos temporales que son creados durante operaciones comoORDER BY,SELECT DISTINCT,MERGE JOINoCREATE INDEX. A veces a los usuarios se les asocia un tablespace temporal para realizar este tipo de operaciones, cuando estas operaciones finalizan este segmento temporal que se ha creado exclusivamente para la operacin

2/23/13

ASIGNACIN DE UN PERFIL A UN USUARIO:


Al igual que podemos asignar un tablespace a un usuario, tambin podemos asignarle un perfil (profile). El principal perfil ( profile ) por defecto se denomina default. Si el usuario no est lo podemos crear de la siguiente forma: SQL > CREATE USER byron IDENTIFIED BY b12z321 DEFAULT TABLESPACE users

2/23/13

BORRADO DE UN USUARIO:
Para borrar un usuario utilizamos la sentenciaDROP USER, podemos opcionalmente incluir la opcinCASCADE, se utiliza para borrar recursivamente los objetos del usuario que se pretende borrar. SQL > DROP USER byron CASCADE

OTORGANDO PRIVILEGIOS (GRANTING) A un usuario podemos otorgarle una serie de


privilegios. Un privilegio permite a un usuario acceder a ciertos objetos o realizar ciertas acciones:.
-

2/23/13

Privilegios sobre Objetos ( Object privileges ) a permisos sobre vistas, tablas, secuencias, procedimientos, paquetes. - Privilegios del Sistema ( System privileges ) a permisos sobre niveles de la base de datos como pueden ser conexin a la base de datos, creacin de usuarios, limitar cuentas.

PRIVILEGIOS (ejemplos) tabla: Privilegio sobre una

2/23/13

SQL > GRANT ALL ON tabla_alumnos TO byron Siendo tabla_alumnos una tabla de nuestra base de datos y byron un usuario de esta, hemos asignado medianteGRANT ALL, todos los permisos al usuario byron sobre esta tabla.

PRIVILEGIOS (ejemplos) vista: Privilegio sobre una

2/23/13

Para el caso de las vistas podemos a un usuario otorgar permisos SELECT,INSERT,UPDATE,DELETE,DEBUG ,REFERENCES. Siendo vista_alumnos una vista de nuestra base de datos y byron un usuario de esta: Otorgamos al usuario byron todos los permisos sobre la vista vista_alumnos.

PRIVILEGIOS (ejemplos)
Privilegio sobre una secuencia:

2/23/13

Con las secuencias pasa lo mismo que con los anteriores objetos vistos, para otorgar permisos se utiliza GRANT. Los permisos que podemos otorgar a una secuencia es SELECTo ALTER. Privilegio sobre un paquete, funcin o procedimiento Los permisos que podemos otorgar a las

2/23/13

QUITANDO PRIVILEGIOS:
Si queremos quitar un privilegio a uno de estos objetos haremos lo mismo que con GRANT pero utilizando la sentencia REVOKE.

SQL > REVOKE ALL ON tabla_usuarios FROM byron

Вам также может понравиться