Documente Academic
Documente Profesional
Documente Cultură
FACULTAD DE INGENIERA
ESCUELA DE SISTEMAS
QUITO 2010
CONTENIDO
RESUMEN .........................................................................................................................1
INTRODUCCIN...............................................................................................................2
CAPTULO 1: DEFINICIONES SOBRE BASE DE DATOS ..........................................4
1.1 DEFINICIONES BSICAS .....................................................................................4
1.1.1 INFORMACIN ................................................................................................4
1.1.2 BASE DE DATOS ............................................................................................5
1.1.3 SISTEMAS GESTORES DE BASES DE DATOS.........................................5
1.2 ORIGEN DE LAS BASES DE DATOS ..................................................................6
1.3 TIPOS DE BASES DE DATOS ..............................................................................7
1.3.1 SEGN LA VARIABILIDAD DE LOS DATOS ALMACENADOS.................7
1.3.2 SEGN EL CONTENIDO................................................................................8
1.4 MODELOS DE BASES DE DATOS ......................................................................9
1.4.1 Bases de datos jerrquicas ........................................................................... 10
1.4.2 Base de datos de red ..................................................................................... 10
1.4.3 Bases de datos transaccionales ................................................................... 11
1.4.4 Bases de datos relacionales ......................................................................... 11
1.4.5 Bases de datos multidimensionales ............................................................. 13
1.4.6 Bases de datos orientadas a objetos ........................................................... 13
1.4.7 Bases de datos documentales ...................................................................... 14
1.4.8 Bases de datos deductivas ........................................................................... 14
1.4.9 Gestin de bases de datos distribuidas ....................................................... 15
CAPTULO 2: MEJORES PRCTICAS ........................................................................ 16
2.1 Definiciones de Mejores Prcticas ...................................................................... 16
2.2 Mejores Prcticas Seguridad .............................................................................. 16
2.2.1 Seguridad........................................................................................................ 16
2.3 Mejores Prcticas de Integridad ........................................................................ 24
2.3.1 Integridad ........................................................................................................ 24
2.4 Mejores Prcticas de Disponibilidad .................................................................. 32
RESUMEN
INTRODUCCIN
1.1.1 INFORMACIN
Obtenido de: CEO - Sistemas gestores de bases de datos" del autor M. J. Ramos, A. Ramos, F.
Montero, publicado por la editorial McGraw-Hill (Ramos y Montero s.f.)
programas con los que trabajan. Se trata de estructurar y organizar los datos
de forma que se pueda acceder a ellos con independencia de los programas
que los gestionan.
adicin
de
datos,
adems
de
las
operaciones
1.3.2.3 Directorios
10
11
SQL: Lenguaje declarativo de bases de datos relacionales que permite especificar diversos
tipos de operaciones. Una de sus caractersticas es el manejo del lgebra y el clculo
relacional permitiendo efectuar consultas con el fin de recuperar informacin de manera
sencilla. Obtenido de http://es.wikipedia.org/wiki/SQL el 28 de noviembre de 2010
12
objetos,
trata
de
almacenar
en
la
base
de
datos
13
15
2.2.1 Seguridad
ITIL (Information Technology Infrastructure Library) es un marco de trabajo de las mejores prcticas
destinadas a facilitar la entrega de servicios de tecnologas de la informacin de alta calidad.
8
http://www.tecnologiahechapalabra.com
16
de
nuevas
aplicaciones
para
todos
los
aspectos
del
17
Administracin de Usuarios
Control de Accesos
Proteccin de datos
Monitoreo de Datos
varios
usuarios
de
administracin
automticamente
18
Un rol agrupa bajo un nombre una lista de privilegios, y puede ser asignado
directamente a los usuarios. Este procedimiento se lo realiza para poder
llevar a cabo un control mucho ms riguroso de las capacidades y privilegios
que tienen los usuarios que se conectan a la base de datos, ya que al no
tener un diagrama de roles y privilegios se podran cometer errores
involuntarios en la asignacin de permisos a informacin sensible para la
empresa.
19
20
21
10) Una de las mejores prcticas que se han establecido y ha sido probada
en varias ocasiones y en varios lugares del mundo, pero as mismo una de
las que menos se ocupa ya que su aplicacin afecta directamente al
rendimiento y procesamiento de la Base de Datos. Es la activacin de los
registros de auditora con lo cual se logra un monitoreo y control de las
actividades que se realizan en la Base de Datos, con la utilizacin de esta
recomendacin se puede conocer que persona realiz qu actividad en
especfico, cuando y desde que equipo de computacin.
22
seguido de su
23
Los usuarios con acceso a scripts SQL pueden usar las secuencias de
comandos para realizar actividades no autorizadas en la base de datos ya
que estos suelen contener secuencias de comandos de base de datos de
identificadores de usuario y contraseas.
Por tanto, la integridad, disponibilidad y confidencialidad de la base de datos
podra verse comprometida.
2.3.1 Integridad
Segn Gonzalo lvarez Maran y Pedro Prez Garca autores del libro
Seguridad Informtica para empresas y particulares dicen La Integridad
consiste en garantizar que los datos, objetos y recursos no han sido
alterados, permanecen completos y son fiables.
Entonces podemos decir que la integridad de una base de datos significa
que, la base de datos o los programas que generaron su contenido,
24
incorporen mtodos que aseguren que el contenido de los datos del sistema
no se rompan as como las reglas del negocio. Por ejemplo, un distribuidor
puede tener una regla la cual permita que slo los clientes individuales
puedan solicitar rdenes; a su vez cada orden identifique a uno y slo un
proveedor. El servidor Oracle y otros SGDB relacionales hacen cumplir este
tipo de reglas del negocio con limitantes, las cuales pueden ser configuradas
implcitamente a travs de consultas. Para continuar con este ejemplo, en el
proceso de insercin de una nueva orden en la base de datos, est tendra
que cerciorarse de que el cliente identificado existe en su tabla para que la
orden pueda darse.
El objetivo de la Integridad consiste en garantizar que los datos, objetos y
recursos no han sido alterados, permanecen completos y son fiables. La
modificacin no autorizada de los datos no puede ocurrir durante su
almacenamiento, transporte o procesamiento. Por tanto, se vuelve necesario
implantar mecanismos de control de integridad durante todos los estados de
la informacin.
La principal y ms bsica de las practicas que nos ayudan a mantener y
garantizar la integridad de la informacin almacenada en la Base de datos
que administremos en nuestra organizacin, es la aplicacin de Vistas con el
fin de obtener la informacin ya sea de una o varias tablas.
Por lo cual necesitamos definir una Vista10 en una Base de Datos.
10
25
Una vista es una tabla virtual cuyo contenido est definido por una consulta.
Al igual que una tabla real, una vista consta de un conjunto de columnas y
filas de datos con un nombre. Sin embargo, a menos que est indexada, una
vista no existe como conjunto de valores de datos almacenados en una base
de datos. Las filas y las columnas de datos proceden de tablas a las que se
hace referencia en la consulta que define la vista y se producen de forma
dinmica cuando se hace referencia a la vista.
Una vista acta como filtro de las tablas subyacentes a las que se hace
referencia en ella. La consulta que define la vista puede provenir de una o de
varias tablas, o bien de otras vistas de la base de datos actual u otras bases
de datos. As mismo, es posible utilizar las consultas distribuidas para definir
vistas que utilicen datos de orgenes heterogneos. Esto puede resultar de
utilidad, por ejemplo, si desea combinar datos de estructura similar que
proceden de distintos servidores, cada uno de los cuales almacena los datos
para una regin distinta de la organizacin.
26
Grfico 2 nos ilustra la obtencin de una vista a partir de 2 tablas. Obtenido de:
http://msdn.microsoft.com/es-es/library/ms190174.aspx El 21 de septiembre de 2010
27
tablas
puede
recuperarse
utilizando
una
varias
consultas.
12
http://www.aulaclic.es/sql/b_8_1_1.htm
29
13
30
Habitantes
DNI
Apellidos
1719711702 Burbano
1789367492 Guerrero
Nombres
Marco
Grace
31
Segn Gonzalo lvarez Maran y Pedro Prez Garca autores del libro
Seguridad Informtica para empresas y particulares dicen Disponibilidad
consiste
en
garantizar
que
los datos
permanecen
accesibles
sin
14
32
33
15
16
34
35
37
38
No.
DESCRIPCIN
CLASIFICACIN
IMPLEMENTACIN
IMPLEMENTACIN
ORACLE
MYSQL
Se debe mantener
MySql crea
bloqueados a los usuarios
En Oracle se mantienen
automticamente el usuario
creados automticamente
1.
Seguridad
libere y permita su
correcto funcionamiento de
funcionamiento
la BDD
la seguridad.
39
No.
IMPLEMENTACIN
IMPLEMENTACIN
ORACLE
MYSQL
autenticacin en la BDD
autenticacin en la BDD
mediante la autenticacin
SO deben pertenecer a
SO deben pertenecer a
usuarios diferentes
usuarios diferentes
Mediante aplicacin o si la
Oracle lo ha implementado
Se lo puede controlar
DESCRIPCIN
CLASIFICACIN
Seguridad
3. cambio de contrasea
Seguridad
obligatorio despus de la
creacin de un usuario
cambios de contraseas
la peticin de cambio de
40
No.
DESCRIPCIN
CLASIFICACIN
IMPLEMENTACIN
IMPLEMENTACIN
ORACLE
MYSQL
contrasea.
de un usuario y contrasea
de un usuario y contrasea
mtodo eficaz
mtodo eficaz
Restringir el acceso de
4. usuarios autorizados a la
Seguridad
BDD
ejecutados en la BDD
ejecutados en la BDD
41
No.
DESCRIPCIN
CLASIFICACIN
IMPLEMENTACIN
IMPLEMENTACIN
ORACLE
MYSQL
restriccin
restriccin
restriccin
restriccin
Limitar el nmero de
sesiones concurrentes por
6. cada usuario de preferencia
Seguridad
Seguridad
42
No.
DESCRIPCIN
CLASIFICACIN
IMPLEMENTACIN
IMPLEMENTACIN
ORACLE
MYSQL
restriccin
restriccin
restriccin
restriccin
Denegar la posibilidad de
conectarse remotamente a la
BDD ms an si los usuarios
8.
Seguridad
tienen permisos para
modificar la informacin
sensitiva
La informacin sensitiva
almacenada en la Base de
Datos debera ser
9. encriptada. El no tener la
Seguridad
informacin primordial
encriptada aumenta el riesgo
de accesos no autorizados.
43
No.
DESCRIPCIN
CLASIFICACIN
IMPLEMENTACIN
IMPLEMENTACIN
ORACLE
MYSQL
Se lo debera implementar
Oracle permite esta
Seguridad
mediante un Trigger o un
restriccin
actividades realizadas en la
aplicativo
BDD
El administrador de
seguridad (no el DBA) debe
supervisar la configuracin
de auditora de base de
11.
Se lo implementa mediante
Se lo implementa mediante
roles y permisos
roles y permisos
Seguridad
datos. Slo el administrador
de seguridad debe tener
acceso a los registros de
auditora.
44
No.
DESCRIPCIN
IMPLEMENTACIN
IMPLEMENTACIN
ORACLE
MYSQL
Seguridad/
Disponibilidad
IT
IT
CLASIFICACIN
Integridad
cada uno de los usuarios
acceso a la BDD
acceso a la BDD
Restriccin del SO
Restriccin del SO
Seguridad
Seguridad
45
No.
DESCRIPCIN
CLASIFICACIN
IMPLEMENTACIN
IMPLEMENTACIN
ORACLE
MYSQL
comando a usuarios
autorizados
de Vistas
de Vistas
finales
Implementado en MySql con
17. Aplicar integridad referencial
Integridad
Implementado en Oracle
Tablas INNODB
Oracle permite la realizacin
configuracin en el Motor de
existe la posibilidad de
Disponibilidad
mejorar la disponibilidad
46
No.
DESCRIPCIN
CLASIFICACIN
IMPLEMENTACIN
IMPLEMENTACIN
ORACLE
MYSQL
BDD
Disponibilidad
Banco de Datos
Se lo puede realizar de
Oracle permite generar
20. Utilizacin de redundancia
Disponibilidad
47
Cabe mencionar que las bases de datos sern instaladas sobre un Sistema
Operativo de la Plataforma Microsoft en la Versin Windows Seven Ultimate
de 32 bits.
Para probar las tcnicas descritas en el captulo anterior de este se ha
descrito un modelo Entidad Relacin para ser implementado en las dos
bases de datos seleccionadas.
El modelo trata sobre la estructura administrativa del Talento Humano
(Recursos Humanos) de una empresa que tiene sede en varios pases. Que
a su vez puede o no tener varias sucursales por cada pas. Cabe mencionar
que cada sucursal tiene varios departamentos en donde se desarrollan
varios cargos. Dichos cargos son desarrollados por uno varios empleados.
48
3.1.1 Modelado
49
PAIS
CARGO
Pais_Id
<pi> CODIGO
<M>
Pais_Nombre
DESCRIPCION <M>
Cargo_Id
<pi> CODIGO
<M>
Cargo_Nombre
DESCRIPCION <M>
Cargo_SalarioMin
SALARIO
<M>
Cargo_SalarioMax
SALARIO
<M>
Pais_Id <pi>
...
R_Cargo_Historia
Cargo_Id <pi>
...
R_Pais_Sucursal
HISTORIA LABORAL
SUCURSAL
Sucursal_Id
<pi> CODIGO
Sucursal_Nombre
DESCRIPCION
Sucursal_Direccion
DESCRIPCION_DETALLADA
Sucursal_Ciudad
DESCRIPCION
Sucursal_Descripcion
DESCRIPCION_DETALLADA
R_Cargo_Empleado
<M>
<M>
<M>
<M>
Historia_FechaCierre FECHA
Sucursal_Id <pi>
...
EMPLEADO
R_Sucursal_Departamento
DEPARTAMENTO
Departamento_Id
<pi> CODIGO
<M>
Departamento_Nombre
DESCRIPCION
<M>
Departamento_Descripcion
DESCRIPCION_DET ALLADA
Departamento_Id <pi>
...
R_Departamento_Empleado
Empleado_Id
<pi> CODIGO
<M>
Empleado_Cedula
DESCRIPCION <M>
Empleado_Nombres
DESCRIPCION <M>
Empleado_Apellidos
DESCRIPCION <M>
Empleado_Email
DESCRIPCION
Empleado_Telefono
DESCRIPCION
Empleado_FechaContrato
FECHA
<M>
Empleado_Salario
SALARIO
<M>
Empleado_FechaNaci miento
FECHA
<M>
R_Empleado_Hi storia
Empleado_Id <pi>
...
R_Departamento_Hi storia
50
PAIS
CARGO
Pais_Id
char(6) <pk>
Pais_Nombre char(40)
Cargo_Id
Cargo_Nombre
Cargo_SalarioMin
Cargo_SalarioMax
...
char(6)
<pk>
char(40)
numeric(11,2)
numeric(11,2)
HISTORIA LABORAL
Empleado_Id
Departamento_Id
Sucursal_Id
Cargo_Id
Hi storia_FechaCierre
...
SUCURSAL
Sucursal_Id
Pais_Id
Sucursal_Nombre
Sucursal_Di reccion
Sucursal_Ci udad
Sucursal_Descripcion
...
char(6) <pk>
char(6) <fk>
char(40)
char(90)
char(40)
char(90)
<pk,fk2>
<fk3>
<fk3>
<pk,fk1>
EMPLEADO
DEPARTAMENTO
Departamento_Id
Sucursal_Id
Departamento_Nombre
Departamento_Descripcion
...
char(6)
char(6)
char(6)
char(6)
datetime
char(6) <pk>
char(6) <pk,fk>
char(40)
char(90)
Empl eado_Id
Cargo_Id
Departamento_Id
Sucursal_Id
Empl eado_Cedula
Empl eado_Nombres
Empl eado_Apell idos
Empl eado_Emai l
Empl eado_Telefono
Empl eado_FechaContrato
Empl eado_Salario
Empl eado_FechaNacimiento
...
char(6)
char(6)
char(6)
char(6)
char(40)
char(40)
char(40)
char(40)
char(40)
datetime
numeric(11,2)
datetime
<pk>
<fk1>
<fk2>
<fk2>
51
52
53
54
55
56
57
En este caso como se trata de un usuario normal que tiene el cargo de asistente
de RRHH no amerita mayores permisos.
8. Denegar la posibilidad de conectarse remotamente a la BDD ms an si
los usuarios tienen permisos para modificar la informacin sensitiva
Implementacin
MYSQL permite esta restriccin, mediante la configuracin automtica que
maneja el motor de base de datos ya que no permite la conexin remota si no se
cambia la IP del servidor que se defina automticamente.
59
60
61
17
62
Para este caso implementaremos un trigger el cual nos permita auditar las
actualizaciones a los salarios que se ejecuten en la tabla empleados.
Para esto crearemos una tabla de Auditoria llamada auditoria_empleado, en la
cual se registraran las modificaciones a los salarios.
/*Tabla Auditoria*/
create table auditoria_empleado(id int not null auto_increment,
usuario varchar(40), salario numeric (9,2), fecha datetime, primary key (id));
/*Trigger Auditoria*/
create trigger trigger_aud_empleado after update on empleado
63
64
65
67
68
69
71
72
73
74
18
http://www.webtaller.com/construccion/lenguajes/mysql/lecciones/tipos_tablas_usadas_mysql.php
Obtenido el 29 de octubre de 2010
75
- Bloqueo a nivel de filas. Al usar tablas MyISAM, y tener consultas muy grandes
que requieren de mucho tiempo, simplemente no se podan ejecutar ms
76
- SELECTs sin bloqueo. El motor InnoDB usa una tcnica conocida como multiversioning (similar a PostgreSQL) que elimina la necesidad de hacer bloqueos
en consultas SELECT muy simples. Ya no ser necesario molestarse porque
una simple consulta de slo lectura est siendo bloqueada por otra consulta que
est haciendo cambios en una misma tabla.
77
Despus de esta informacin queda claro que para poder aplicar integridad
referencial en una basa de datos con MySQL es necesario utilizar las tablas
INNODB con lo cual podemos utilizar las Foreing Keys as como tambin la
posibilidad de ejecutar COMMIT Y ROLLBACK.
Para configurar en qu tipo de tablas queremos almacenar la informacin
podemos ejecutar el siguiente query.
ALTER TABLE nombreDeLaTabla ENGINE=INNODB;
Para configurar ciertos parmetros de este tipo de tabla podemos ir a la
Administracin del MySQL Administrator a la Pestaa STARTUP VARIABLES y
posteriormente al Men de InnoDB Parameters en donde podemos seleccionar
la utilizacin de estas tablas as como tambin de los diferentes parmetros que
cada organizacin necesite.
78
Con lo cual se obtiene los beneficios de poder implementar foreing keys en las tablas
de nuestra base de datos, as como tambin la posibilidad de utilizar commits y
rollbacks.
79
80
proporcionalmente.
Otra forma de realizar redundancia a nivel de BDD es mediante la
implementacin de un sistema que permita realizar la replicacin en lnea de
cada una de las transacciones que se realicen en la base de datos.
Finalmente este procedimiento se lo puede realizar mediante procedimientos
batch los cuales se los ejecuta de manera automtica, esto depender de las
instrucciones que ingresemos en la programacin. Lo que s es importante
recordar es que se debe realizar una revisin con la finalidad de que los datos
replicados son los correctos, garantizando la integridad y disponibilidad de la
informacin.
MySQL permite la replicacin mediante la configuracin de variables ingresando
a la Consola de administracin.
Nos dirigimos a Startup Variables, posteriormente escogemos la pestaa de
REPLICATION en donde configuramos la manera como queremos configurar la
replicacin.
81
82
20
83
84
85
86
87
88
89
90
Contrasea
Externo
Global
Contrasea. La propia base de datos mira que el usuario est legitimado para
acceder a la base de datos y comprueba que la contrasea sea correcta.
CREATE USER <usuario> IDENTIFIED BY <contrasea>;
ALTER USER <usuario> IDENTIFIED BY <contrasea>;
Para finalmente realizar la revisin de las ejecuciones de los scripts, ya que con
esto se mantiene un fuerte control sobre los procesos de ejecucin y los
resultados obtenidos de lo realizado en el procedimiento.
6. Limitar el nmero de sesiones concurrentes por cada usuario de
preferencia permitir una sola sesin por cada usuario
Implementacin
Oracle permite esta restriccin, al momento de crear un perfil para asignar a un
usuario se nos permite configurar entre otras cosas el nmero de sesiones
simultneas que cada usuario es capaz de realizar.
Esta opcin lo presenta en Enterprise Manager de Oracle en la Opcin Perfiles
en la administracin de servidor.
93
94
21
Ver mas:
http://www.stanford.edu/dept/itss/docs/oracle/10g/server.101/b10759/statements_5005.htm Obtenido
el 28 de noviembre de 2010
95
Ver ms http://download-
97
El SGBD Oracle tiene la capacidad de auditar todas las acciones que tienen
lugar en la BD. Se pueden auditar tres tipos de acciones:
La BD registra todos los intentos de accin, tanto los exitosos como los
infructuosos, aunque es un parmetro configurable.
west.oracle.com/docs/cd/B14117_01/appdev.101/b10802/d_obtool.htm#1002213 obtenido el 13 de
noviembre de 2010
98
Tabla 223
Valor
Descripcin
NONE
Deshabilita la auditora
BD
OS
23
99
auditsession;
Para determinar si se deben registrar slo los xitos, o slo los fracasos se
pueden utilizar los siguientes comandos:
100
select
os_username,
username,
/* nombre de usuario SO */
/* nombre de usuario BD */
terminal,
decode(returncode,'0','Conectado',
'1005','Solo username, sin password',
'1017','Password incorrecto',
returncode), /* comprobacion de error */
to_char(timestamp,'DD-MON-YY HH24:MI:SS'), /* hora de entrada */
to_char(logoff_time,'DD-MON-YY HH24:MI:SS') /* hora de salida */
fromdba_audit_session;
noauditsession;
101
Se puede auditar cualquier accin que afecte a cualquier objeto de la BD. Para
facilitar la gestin, las acciones a auditar se encuentran agrupadas segn los
grupos que se muestran en la Tabla 3:
Tabla 324
Grupo
Comandos Auditados
CLUSTER
DATABASE LINK
EXISTS
INDEX
NOT EXISTS
PROCEDURE
PROFILE
PUBLIC
24
102
DATABASE LINK
pblicos de BD.
PUBLIC SINONYM
ROLE
ROLLBACK
SEGMENT
de rollback.
SEQUENCE
SESSION
SYNONYM
SYSTEM AUDIT
SYSTEM GRANT
TABLE
TABLESPACE
TRIGGER
USER
VIEW
Por ejemplo, para auditar todas acciones que tienen que ver con las tablas sirve
el siguiente comando:
103
audittable;
noaudittable;
audittableby mburbano001;
104
105
106
Las mejoras en RMAN han hecho que el backup de grandes bases de datos sea
un proceso eficiente y directo. RMAN aprovecha las capacidades Block Tracking
para aumentar el desempeo de los backups incrementales. Hacer solamente un
backup de los bloques que han cambiado a partir del ltimo backup reduce
enormemente el tiempo y los gastos generales del backup RMAN. En Oracle
Database 11g, las capacidades Block Tracking ahora estn activadas en bases
de datos standby administradas. Debido a que el tamao de las bases de datos
empresariales sigue creciendo se ha vuelto ms ventajoso aprovechar
BigfileTablespaces. Un Espacio de tabla Bigfile est conformado por un solo
archivo grande en lugar de varios archivos ms pequeos, permitiendo que las
bases de datos Oracle escalen hasta 8 exabytes de tamao. Para aumentar el
desempeo de las operaciones de backup y recuperacin de BigfileTablespaces
RMAN en Oracle Database 11g puede realizar operaciones paralelas dentro
del archivo para el backup y la recuperacin.
Muchas empresas crean clones o copias de sus bases de datos de produccin
para utilizarlas en pruebas, garanta de calidad y para generar una base de
datos standby. RMAN ha tenido durante mucho tiempo la capacidad de clonar
una base de datos utilizando backups RMAN existentes mediante la
funcionalidad DUPLICATE DATABASE. Antes de Oracle Database 11g, se deba
acceder a los archivos de backup en el host de la base de datos clonada. La
duplicacin de Oracle Database 11g basada en redes duplicar la base de datos
de origen en la base de datos clon sin la necesidad de que la base de datos de
origen tenga backups existentes. En cambio, la duplicacin basada en redes
clonar transparentemente los archivos necesarios directamente desde el origen
108
hasta el clon. Oracle Database 11g tiene una estrecha integracin con Microsoft
Virtual Shadow CopyService (VSS). Concretamente, Microsoft Virtual Shadow
CopyService es una estructura de tecnologa que permite que las aplicaciones
continen escribiendo a volmenes de disco mientras se ejecutan los backups
consistentes de esos volmenes. Oracle VSS Writer, un programa ejecutable
separado que funciona en sistemas Windows, actuar como coordinador entre la
base de datos Oracle y otros componentes VSS. Por ejemplo, Oracle VSS Writer
colocar los archivos de base de datos en modo backup activo para permitir que
los componentes VSS hagan una copia recuperable del archivo de datos en una
snapshot VSS. Oracle VSS Writer aprovechar RMAN como la herramienta
utilizada para realizar recuperaciones en los archivos almacenados desde una
snapshot VSS. Adems, RMAN ha sido mejorado para utilizar snapshots VSS
como origen para backups almacenados en el rea de Recuperacin Flash.
111
112
Es la implementacin del
113
115
116
117
118
119
120
122
Mantenimiento ms fcil.
123
CONSTRAINT
<constraint_name>
PRIMARY
KEY
(<column_name>[,<column_name>])
CONSTRAINT
<constraint_name>
UNIQUE
(<column_name>[,<column_name>])
CONSTRAINT
<constraint_name>
FOREIGN
KEY
Donde:
124
26
125
128
IMPLEMENTACIN
MYSQL
ANLISIS
Se debe mantener
bloqueados a los usuarios
creados automticamente
por la BDD y en el mejor de
Seguridad
los casos se los debe Borrar
con la finalidad de mantener
la seguridad.
En Oracle se mantienen
bloqueados hasta que
un usuario con permiso
los libere y permita su
funcionamiento
MySql crea
automticamente el
usuario
administrador(ROOT), el
cual es necesario para el
correcto
funcionamiento de la
BDD
Se lo realiza evitando
una autenticacin en la
BDD mediante la
autenticacin del SO y
para una mayor
seguridad las claves de
mayor poder en La BDD
y SO deben pertenecer a
usuarios diferentes
Se lo realiza evitando
una autenticacin en la
BDD mediante la
autenticacin del SO y
para una mayor
seguridad las calves de
mayor poder en La BDD
y SO deben pertenecer a
usuarios diferentes
No. DESCRIPCIN
1.
2.
CLASIFICACIN
Seguridad
No. DESCRIPCIN
CLASIFICACIN
IMPLEMENTACIN
ORACLE
IMPLEMENTACIN
MYSQL
ANLISIS
ninguna persona pueda realizar
actividades fraudulentas en reas de
responsabilidad nica sin que pueda
ser detectada.
3.
Mediante aplicacin o si la
BDD lo permite pedir el
cambio de contrasea
obligatorio despus de la
creacin de un usuario
Seguridad
Oracle lo ha
implementado
automticamente
incluso se puede definir
una periodicidad para
solicitar cambios de
contraseas
Se lo puede controlar
mediante una aplicacin
que funcione con la
BDD, as como tambin
automatizar la peticin
de cambio de
contrasea.
130
No. DESCRIPCIN
4.
5.
Restringir el acceso de
usuarios autorizados a la
BDD
CLASIFICACIN
Seguridad
IMPLEMENTACIN
ORACLE
IMPLEMENTACIN
MYSQL
ANLISIS
Se debe definir un
mtodo de acceso a la
BDD el cual puede ser
mediante el uso de un
usuario y contrasea
autorizados o cualquier
otro mtodo eficaz
Se debe definir un
mtodo de acceso a la
BDD el cual puede ser
mediante el uso de un
usuario y contrasea
autorizados o cualquier
otro mtodo eficaz
131
No. DESCRIPCIN
CLASIFICACIN
IMPLEMENTACIN
ORACLE
IMPLEMENTACIN
MYSQL
ANLISIS
tcnico.
6.
Limitar el nmero de
sesiones concurrentes por
cada usuario de preferencia
permitir una sola sesin por
cada usuario
7.
La posibilidad de usar
GRANT OPTION o
REVOKE debe ser
permitido solo a personal
autorizado
Seguridad
8.
Denegar la posibilidad de
conectarse remotamente a la
BDD ms an si los usuarios Seguridad
tienen permisos para
modificar la informacin
Seguridad
132
No. DESCRIPCIN
CLASIFICACIN
IMPLEMENTACIN
ORACLE
IMPLEMENTACIN
MYSQL
sensitiva
9.
funcionalidades
La informacin sensitiva
almacenada en la Base de
Datos debera ser encriptada.
El no tener la informacin
Seguridad
primordial encriptada
aumenta el riesgo de accesos
no autorizados.
ANLISIS
Seguridad
Se lo debera
implementar mediante
un Trigger o un
aplicativo
No. DESCRIPCIN
CLASIFICACIN
IMPLEMENTACIN
ORACLE
IMPLEMENTACIN
MYSQL
ANLISIS
las necesidades de cada una de las
organizaciones.
El administrador de
seguridad (no el DBA) debe
supervisar la configuracin
de auditora de base de
11.
datos. Slo el administrador
de seguridad debe tener
acceso a los registros de
auditora.
Seguridad
Se lo implementa
mediante roles y
permisos
Se lo implementa
mediante roles y
permisos
134
No. DESCRIPCIN
CLASIFICACIN
Seguridad/
Integridad
IMPLEMENTACIN
ORACLE
Implementar
procedimientos
rigurosos para la
asignacin de perfiles y
roles en la BDD
IMPLEMENTACIN
MYSQL
ANLISIS
Implementar
procedimientos
rigurosos para la
asignacin de perfiles y
roles en la BDD
No. DESCRIPCIN
CLASIFICACIN
IMPLEMENTACIN
ORACLE
IMPLEMENTACIN
MYSQL
ANLISIS
seguridad e integridad a la base de
datos.
Seguridad
Integridad
Configuracin del
ambiente de control en
el departamento de TI
Oracle permite la
realizacin de Vistas
Configuracin del
ambiente de control en
el departamento de TI
MySql permite la
realizacin de Vistas
136
No. DESCRIPCIN
CLASIFICACIN
18.
19.
Disponibilidad
Disponibilidad
IMPLEMENTACIN
ORACLE
IMPLEMENTACIN
MYSQL
ANLISIS
Oracle permite la
realizacin de clster
mediante una
configuracin en el
Motor de BDD
No depende de la BDD
local
No depende de la BDD
local
137
No. DESCRIPCIN
CLASIFICACIN
Disponibilidad
IMPLEMENTACIN
ORACLE
IMPLEMENTACIN
MYSQL
ANLISIS
Tanto Oracle como MySQL permite
realizar replicacin con la finalidad de
mantener una redundancia
controlada.
Cada uno de estos motores de bases
de datos mediante sus herramientas
permiten la configuracin de
replicacin.
138
para
mantener
la
seguridad,
integridad
139
5.2 Recomendaciones
141
situacin
correcciones
necesarias
para
implementar
las
correspondientes soluciones.
142
6. REFERENCIAS BIBLIOGRFICAS
Best, Tom, y M J Bilings. Oracle Data Base 10g: Administration Workshop I. Edicin 3.0,
Noviembre 2005.
Greenberg, Nancy, y Prya Nathan. Introduction to Oracle 9i: SQL. 2001.
Guaps, L Miguel A. Manual de Entrenamiento y Referencia en las mejores Prcticas de Itil
V3. 2008.
Ramos, M J, y F Montero. CEO Sistemas gestores de Bases de Datos. McGraw-Hill.
Codd, Edgar. Departamento de Ciencias de la Computacin .
http://www.dcc.uchile.cl/~rbaeza/inf/codd.html.
Consejo Superior de Administracin Electrnica.
http://www.csae.map.es/csi/silice/Sgbdat6.html.
Departamento de Informtica. 09 de Junio de 2010.
http://www.infor.uva.es/~jvegas/cursos/bd/oraseg/oraseg.html#4.1.
MSDN. 2010. http://msdn.microsoft.com/es-es/library/ms190174.aspx.
MySQL. 2010. http://dev.mysql.com/doc/refman/5.0/es/user-names.html.
MySQL. 2010. http://dev.mysql.com/doc/refman/5.0/es/ndbcluster.html.
Oracle. Oracle.com. http://downloadwest.oracle.com/docs/cd/B14117_01/appdev.101/b10802/d_obtool.htm#1002213.
. Oracle.com. http://www.oracle.com/technology/global/lades/documentation/collaterals/Oracle%20Database%2011g%20High%20Availability_cast_.p
df.
. Oracle.com. http://www.oracle.com/technology/global/lades/documentation/database.html.
University, Estanford.
http://www.stanford.edu/dept/itss/docs/oracle/10g/server.101/b10759/statements_5005.
htm.
Web Taller. 5 de 11 de 2010.
http://www.webtaller.com/construccion/lenguajes/mysql/lecciones/tipos_tablas_usadas_
mysql.php.
143
144
7. ANEXOS
7.1 Glosario
BDD
Base de Datos.
SO
Sistema Operativo
DBA
ID
Identificador
SQL
DBASE
para
microcomputadoras,
publicado
Hard-Code
Scripts
145
Tupla
Cluster
Conjunto
de
ordenadores
construidos
mediante
la
Copia de Seguridad
146