3.- Administración De Bases De Datos
+23
marisol perez
Josué vuelvas (kluge :P)
hoguer tapia
karina acuña santana
Jenesis Reyes Saucedo
ALFREDO92
RAMIRO BALDOVINOS
kike leon
Judith Benitez Charco
horfanel calles juarez
Isidro Antonio Solano
ISAI RENDON QUITERIO1
thanahi
AngelesAT
alma rosa
pablodelgadogomez
CINTHIA CADENA PEREZ
ixhel
sinay vargas
addicto007
tomas lopez perez
miguelTL
Admin
27 participantes
Página 5 de 7. • 1, 2, 3, 4, 5, 6, 7
RESPUESTA AL REACTIVO #3
3) Investigar la definición del esquema de seguridad, los conceptos de seguridad y recuperación y la importancia de la creación de usuarios de una base de datos.
Definición de un esquema de seguridad
El problema de la seguridad consiste en lograr que los recursos de un sistema sean, bajo toda circunstancia, utilizados para los fines previstos.
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.
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 y uso de recursos: ciclos de CPU, impresora, almacenamiento.
En relación al SGBD, debe mantener información de los usuarios, su tipo y los accesos y operaciones permitidas a éstos.
TIPOS DE 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.
Privilegios sobre los objetos, añadir nuevos campos, indexar, alterar la estructura de los objetos, etc.
Los SGBD tienen opciones que permiten manejar la seguridad, tal como GRANT, REVOKE, etc. También tienen un archivo de auditoria en donde se registran las operaciones que realizan los usuarios.
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.
Principios básicos para la seguridad.
Suponer que el diseño del sistema es público.
El defecto debe ser: sin acceso.
Chequear permanentemente.
Los mecanismos de protección deben ser simples, uniformes y construidos en las capas más básicas del sistema.
Los mecanismos deben ser aceptados sicológicamente por los usuarios.
SEGURIDAD: Fallos lógicos o físicos que destruyan los datos.
- Evitar pérdidas de datos por fallos hardware o software (fallo disco, etc.). Normalmente suelen ser fallos de disco o pérdida de memoria RAM.
- Aparte del punto de vista de los SGBD, intervienen otros niveles (ej: discos replicados, etc.)
- A pesar de estos posibles fallos la base de datos debe quedar siempre en un estado consistente.
El concepto de seguridad, según Date (1992), se puede entender como la protección de los datos contra acceso, alteración o destrucción no autorizados.
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 .
Puesto que trabajamos con un sistema que utiliza una serie de bases de datos, y dado que dicha base de datos está sujeta a una serie de requerimientos legales en base a la LORTAD, estos puntos son de obligado cumplimiento. Especialmente severa es la LORTAD en cuanto al papel y actuación del responsable del sistema y las sanciones por incumplimiento de las normas establecidas. Entre estas, podemos citar la obligatoriedad de existencia de protocolos de actuación, sistemas de encriptación, mecanismos de backup y recuperación, registro de incidencias, etc. Todo esto está reglamentado y documentado en los en los reglamentos de aplicación de la LORTAD, y su correcta aplicación permiten confiar -hasta cierto punto- en el administrador. Realmente haría falta una "Autoridad de emisión de consultas", al igual que existe una "Autoridad de emisión de certificados digitales"
La seguridad de los datos se refiere a la protección de estos contra el acceso por parte de las personas no autorizadas y contra su indebida destrucción o alteración.
El analista de sistemas que se hace responsable de la seguridad debe estar familiarizado con todas las particularidades del sistema, porque este puede ser atacado con fines ilícitos desde muchos ángulos. A veces se presta mucha atención a alguno de los aspectos del problema mientras se descuidan otros.
Los siguientes siete requisitos son esenciales para la seguridad de la base de datos:
• La base de datos debe ser protegida contra el fuego, el robo y otras formas de destrucción.
• Los datos deben ser reconstruibles, porque por muchas precauciones que se tomen, siempre ocurren accidentes.
• Los datos deben poder ser sometidos a procesos de auditoria. La falta de auditoria en los sistemas de computación ha permitido la comisión de grandes delitos.
• El sistema debe diseñarse a prueba de intromisiones. Los programadores, por ingeniosos que sean, no deben poder pasar por alto los controles.
• Ningún sistema puede evitar de manera absoluta las intromisiones malintencionadas, pero es posible hacer que resulte muy difícil eludir los controles. El sistema debe tener capacidad para verificar que sus acciones han sido autorizadas. Las acciones de los usuarios deben ser supervisadas, de modo tal que pueda descubrirse cualquier acción indebida o errónea.
MEDIDAS DE SEGURIDAD EN UN ENTORNO DE B.D.
CONFIDENCIALIDAD.
Autorización en sistemas de bases de datos.
• Identificación y autenticación.
• Código y contraseña.
• Identificación por Hardware.
• Características bioantropométricas.
• Conocimiento, aptitudes y hábitos del usuario.
• Información predefinida (Aficiones, cultura, etc.)
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.
SEGURIDAD
Un aspecto muy importante sobre todo en SD. Incluye servicios tales como:
• Autentificación: Verificación de la identidad de un componente que genera datos (principal) por parte de otro componente (verificador).
• Integridad y carácter confidencial de los datos transmitidos.
Los ataques a la seguridad pueden consistir en la escucha de los mensajes que se transmiten por la red, la inyección de mensajes en la red, la retransmisión de mensajes escuchados anteriormente, la suplantación del cliente o del servidor, etc. La solución a estos problemas se basa generalmente en utilizar criptografía tanto para proteger los datos como para autentificación. En la transmisión se aplica un algoritmo de cifrado al mensaje M usando una clave Kc y en la recepción se aplica el algoritmo de descifrado usando Kd. La función de cifrado es muy difícil de invertir sin conocer la clave. Existen dos esquemas:
Sistemas de clave secreta
En estos sistemas Kc es igual Kd. El algoritmo más usado es el Data Encryption Standard (DES) basado en 16 niveles de sustituciones y permutaciones. Este esquema sufre el problema de la distribución de la clave. Un ejemplo de sistema de autentificación basado en este esquema es Kerberos.
Sistemas de clave publica
Beneficios de un Sistema de Seguridad:
Los beneficios de un sistema de seguridad bien elaborado son inmediatos, ya que el la organización trabajará sobre una plataforma confiable, que se refleja en los siguientes puntos:
• Aumento de la productividad.
• Aumento de la motivación del personal.
• Compromiso con la misión de la compañía.
www.itescam.edu.mx/principal/sylabus/fpdb/recursos/r88095.PDF
www.monografias.com › Computacion › General
ATTE: KARINA ACUÑA SANTANA.
Definición de un esquema de seguridad
El problema de la seguridad consiste en lograr que los recursos de un sistema sean, bajo toda circunstancia, utilizados para los fines previstos.
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.
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 y uso de recursos: ciclos de CPU, impresora, almacenamiento.
En relación al SGBD, debe mantener información de los usuarios, su tipo y los accesos y operaciones permitidas a éstos.
TIPOS DE 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.
Privilegios sobre los objetos, añadir nuevos campos, indexar, alterar la estructura de los objetos, etc.
Los SGBD tienen opciones que permiten manejar la seguridad, tal como GRANT, REVOKE, etc. También tienen un archivo de auditoria en donde se registran las operaciones que realizan los usuarios.
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.
Principios básicos para la seguridad.
Suponer que el diseño del sistema es público.
El defecto debe ser: sin acceso.
Chequear permanentemente.
Los mecanismos de protección deben ser simples, uniformes y construidos en las capas más básicas del sistema.
Los mecanismos deben ser aceptados sicológicamente por los usuarios.
SEGURIDAD: Fallos lógicos o físicos que destruyan los datos.
- Evitar pérdidas de datos por fallos hardware o software (fallo disco, etc.). Normalmente suelen ser fallos de disco o pérdida de memoria RAM.
- Aparte del punto de vista de los SGBD, intervienen otros niveles (ej: discos replicados, etc.)
- A pesar de estos posibles fallos la base de datos debe quedar siempre en un estado consistente.
El concepto de seguridad, según Date (1992), se puede entender como la protección de los datos contra acceso, alteración o destrucción no autorizados.
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 .
Puesto que trabajamos con un sistema que utiliza una serie de bases de datos, y dado que dicha base de datos está sujeta a una serie de requerimientos legales en base a la LORTAD, estos puntos son de obligado cumplimiento. Especialmente severa es la LORTAD en cuanto al papel y actuación del responsable del sistema y las sanciones por incumplimiento de las normas establecidas. Entre estas, podemos citar la obligatoriedad de existencia de protocolos de actuación, sistemas de encriptación, mecanismos de backup y recuperación, registro de incidencias, etc. Todo esto está reglamentado y documentado en los en los reglamentos de aplicación de la LORTAD, y su correcta aplicación permiten confiar -hasta cierto punto- en el administrador. Realmente haría falta una "Autoridad de emisión de consultas", al igual que existe una "Autoridad de emisión de certificados digitales"
La seguridad de los datos se refiere a la protección de estos contra el acceso por parte de las personas no autorizadas y contra su indebida destrucción o alteración.
El analista de sistemas que se hace responsable de la seguridad debe estar familiarizado con todas las particularidades del sistema, porque este puede ser atacado con fines ilícitos desde muchos ángulos. A veces se presta mucha atención a alguno de los aspectos del problema mientras se descuidan otros.
Los siguientes siete requisitos son esenciales para la seguridad de la base de datos:
• La base de datos debe ser protegida contra el fuego, el robo y otras formas de destrucción.
• Los datos deben ser reconstruibles, porque por muchas precauciones que se tomen, siempre ocurren accidentes.
• Los datos deben poder ser sometidos a procesos de auditoria. La falta de auditoria en los sistemas de computación ha permitido la comisión de grandes delitos.
• El sistema debe diseñarse a prueba de intromisiones. Los programadores, por ingeniosos que sean, no deben poder pasar por alto los controles.
• Ningún sistema puede evitar de manera absoluta las intromisiones malintencionadas, pero es posible hacer que resulte muy difícil eludir los controles. El sistema debe tener capacidad para verificar que sus acciones han sido autorizadas. Las acciones de los usuarios deben ser supervisadas, de modo tal que pueda descubrirse cualquier acción indebida o errónea.
MEDIDAS DE SEGURIDAD EN UN ENTORNO DE B.D.
CONFIDENCIALIDAD.
Autorización en sistemas de bases de datos.
• Identificación y autenticación.
• Código y contraseña.
• Identificación por Hardware.
• Características bioantropométricas.
• Conocimiento, aptitudes y hábitos del usuario.
• Información predefinida (Aficiones, cultura, etc.)
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.
SEGURIDAD
Un aspecto muy importante sobre todo en SD. Incluye servicios tales como:
• Autentificación: Verificación de la identidad de un componente que genera datos (principal) por parte de otro componente (verificador).
• Integridad y carácter confidencial de los datos transmitidos.
Los ataques a la seguridad pueden consistir en la escucha de los mensajes que se transmiten por la red, la inyección de mensajes en la red, la retransmisión de mensajes escuchados anteriormente, la suplantación del cliente o del servidor, etc. La solución a estos problemas se basa generalmente en utilizar criptografía tanto para proteger los datos como para autentificación. En la transmisión se aplica un algoritmo de cifrado al mensaje M usando una clave Kc y en la recepción se aplica el algoritmo de descifrado usando Kd. La función de cifrado es muy difícil de invertir sin conocer la clave. Existen dos esquemas:
Sistemas de clave secreta
En estos sistemas Kc es igual Kd. El algoritmo más usado es el Data Encryption Standard (DES) basado en 16 niveles de sustituciones y permutaciones. Este esquema sufre el problema de la distribución de la clave. Un ejemplo de sistema de autentificación basado en este esquema es Kerberos.
Sistemas de clave publica
Beneficios de un Sistema de Seguridad:
Los beneficios de un sistema de seguridad bien elaborado son inmediatos, ya que el la organización trabajará sobre una plataforma confiable, que se refleja en los siguientes puntos:
• Aumento de la productividad.
• Aumento de la motivación del personal.
• Compromiso con la misión de la compañía.
www.itescam.edu.mx/principal/sylabus/fpdb/recursos/r88095.PDF
www.monografias.com › Computacion › General
ATTE: KARINA ACUÑA SANTANA.
karina acuña santana- Mensajes : 38
Fecha de inscripción : 30/01/2013
RESPUESTA AL REACTIVO #4
4) Investigar acerca del uso, importancia, diseño y creación de una bitácora.
USO E IMPORTANCIA:
• Hoy en día los sistemas de cómputo se encuentran
expuestos a distintas amenazas informáticas.
• Las vulnerabilidades de los sistemas aumentan, al
mismo tiempo que se hacen mas complejos.
• El número de ataques también aumenta.
Una bitácora puede registrar mucha información
acerca de eventos relacionados con el sistema que
la genera.
– Fecha y hora
– Direcciones IP origen y destino
– Dirección IP que genera la bitácora
– Usuarios
– Errores
su importancia:
Recuperación ante incidentes de seguridad
• Detección de comportamiento inusual
• Información para resolver problemas
• Evidencia legal
• Es de gran ayuda en las tareas de cómputo forense.
DISEÑO Y CREACIÓN DE UNA BITÁCORA:
Con el crecimiento de Internet, y el desarrollo de sistemas de información bajo la arquitectura Cliente/Servidor, los sistemas de cómputo ,en general, están expuestos a múltiples amenazas, vulnerabilidades y ataques cada vez más complejos. Por lo tanto, es importante que las organizaciones implementen bitácoras (o archivos logs) para almacenar los sucesos que ocurren en el sistema. La información contenida en una bitácora es muy importante y útil cuando ocurre un incidente de seguridad o cuando se realiza una auditoría de sistemas.
Una bitácora puede registrar mucha información acerca de eventos relacionados con el sistema que la genera los cuales pueden ser:
Fecha y hora.
Host origen.
Usuario.
Actividad realizada.
La importancia de las bitácoras es la de recuperar información ante incidentes de seguridad, detección de comportamiento inusual, información para resolver problemas, evidencia legal, es de gran ayuda en las tareas de cómputo forense.
Enseguida plantearé un ejemplo de una bitácora desarrollada para la siguiente base de datos de MySQL, llamada proyecto, que tiene las tablas carrera, departamento y maestros.
CREATE DATABASE proyecto;
USE proyecto
CREATE TABLE IF NOT EXISTS `carrera` (`clave_carrera` int(11) NOT NULL, `nom_carrera` varchar(20) NOT NULL, `num_depto` int(11) NOT NULL, PRIMARY KEY (`clave_carrera`), KEY `num_depto` (`num_depto`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `departamento` ( `num_departamento` int(11) NOT NULL,`nombre_dept` varchar(20) NOT NULL, `jefe_num_tarjet` int(11) NOT NULL, PRIMARY KEY (`num_departamento`), KEY `jefe_num_tarjet` (`jefe_num_tarjet`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `maestros` (`num_tarjeta` int(11) NOT NULL DEFAULT ’0′,`nombre` varchar(50) DEFAULT NULL, PRIMARY KEY (`num_tarjeta`)) ENGINE=InnoDB DEFAULT CHARSET=latin1;
La estructura de la tabla bitácora sería la siguiente:
CREATE TABLE IF NOT EXISTS `bitacora` (`id` int(11) NOT NULL AUTO_INCREMENT, `operacion` varchar(10) DEFAULT NULL, `usuario` varchar(40) DEFAULT NULL, `host` varchar(30) NOT NULL, `modificado` datetime DEFAULT NULL, `tabla` varchar(40) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
La bitácora debe registrar todos los movimientos (insertar, eliminar y modificar) que se realicen en las tablas de la base de datos. Para lograr lo anterior es necesario crear un trigger para que se ejecute después de la operación de insertar, otro para después de eliminar y el último para después de modificar para cada una de las 3 tablas de la base de datos. Los nueve triggers necesarios para que funcione la bitácora son los siguientes:
DROP TRIGGER IF EXISTS `bit_carr_ins`;
DELIMITER
CREATE TRIGGER `bitacora` AFTER INSERT ON `carrera`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “INSERTAR”, NOW(), “CARRERA”)
DROP TRIGGER IF EXISTS `bit_carr_upd`;
CREATE TRIGGER `bit_carr_upd` AFTER UPDATE ON `carrera`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ACTUALIZAR”, NOW(), “CARRERA”)
DROP TRIGGER IF EXISTS `bit_carr_del`;
CREATE TRIGGER `bit_carr_del` AFTER DELETE ON `carrera`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ELIMINAR”, NOW(), “CARRERA”)
DROP TRIGGER IF EXISTS `bit_depto_ins`;
CREATE TRIGGER `bit_depto_ins` AFTER INSERT ON `departamento`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “INSERTAR”, NOW(), “DEPARTAMENTO”)
DROP TRIGGER IF EXISTS `bit_depto_upd`;
CREATE TRIGGER `bit_depto_upd` AFTER UPDATE ON `departamento`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ACTUALIZAR”, NOW(), “DEPARTAMENTO”)
DROP TRIGGER IF EXISTS `bit_depto_del`;
CREATE TRIGGER `bit_depto_del` AFTER DELETE ON `departamento`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ELIMINAR”, NOW(), “DEPARTAMENTO”)
DROP TRIGGER IF EXISTS `bit_mae_ins`;
CREATE TRIGGER `bit_mae_ins` AFTER INSERT ON `maestros`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “INSERTAR”, NOW(), “MAESTROS”)
DROP TRIGGER IF EXISTS `bit_mae_upd`;
CREATE TRIGGER `bit_mae_upd` AFTER UPDATE ON `maestros`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ACTUALIZAR”, NOW(), “MAESTROS”)
DROP TRIGGER IF EXISTS `bit_mae_del`;
CREATE TRIGGER `bit_mae_del` AFTER DELETE ON `maestros`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ELIMINAR”, NOW(), “MAESTROS”)
http://seguridad.cudi.edu.mx/congresos/2003/cudi1/impor_bitacoras.pdf
http://yoalo.wikispaces.com/2.4.1+Dise%C3%B1o+Creacion+Bitacora
ATTE: KARINA ACUÑA SANTANA.
USO E IMPORTANCIA:
• Hoy en día los sistemas de cómputo se encuentran
expuestos a distintas amenazas informáticas.
• Las vulnerabilidades de los sistemas aumentan, al
mismo tiempo que se hacen mas complejos.
• El número de ataques también aumenta.
Una bitácora puede registrar mucha información
acerca de eventos relacionados con el sistema que
la genera.
– Fecha y hora
– Direcciones IP origen y destino
– Dirección IP que genera la bitácora
– Usuarios
– Errores
su importancia:
Recuperación ante incidentes de seguridad
• Detección de comportamiento inusual
• Información para resolver problemas
• Evidencia legal
• Es de gran ayuda en las tareas de cómputo forense.
DISEÑO Y CREACIÓN DE UNA BITÁCORA:
Con el crecimiento de Internet, y el desarrollo de sistemas de información bajo la arquitectura Cliente/Servidor, los sistemas de cómputo ,en general, están expuestos a múltiples amenazas, vulnerabilidades y ataques cada vez más complejos. Por lo tanto, es importante que las organizaciones implementen bitácoras (o archivos logs) para almacenar los sucesos que ocurren en el sistema. La información contenida en una bitácora es muy importante y útil cuando ocurre un incidente de seguridad o cuando se realiza una auditoría de sistemas.
Una bitácora puede registrar mucha información acerca de eventos relacionados con el sistema que la genera los cuales pueden ser:
Fecha y hora.
Host origen.
Usuario.
Actividad realizada.
La importancia de las bitácoras es la de recuperar información ante incidentes de seguridad, detección de comportamiento inusual, información para resolver problemas, evidencia legal, es de gran ayuda en las tareas de cómputo forense.
Enseguida plantearé un ejemplo de una bitácora desarrollada para la siguiente base de datos de MySQL, llamada proyecto, que tiene las tablas carrera, departamento y maestros.
CREATE DATABASE proyecto;
USE proyecto
CREATE TABLE IF NOT EXISTS `carrera` (`clave_carrera` int(11) NOT NULL, `nom_carrera` varchar(20) NOT NULL, `num_depto` int(11) NOT NULL, PRIMARY KEY (`clave_carrera`), KEY `num_depto` (`num_depto`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `departamento` ( `num_departamento` int(11) NOT NULL,`nombre_dept` varchar(20) NOT NULL, `jefe_num_tarjet` int(11) NOT NULL, PRIMARY KEY (`num_departamento`), KEY `jefe_num_tarjet` (`jefe_num_tarjet`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `maestros` (`num_tarjeta` int(11) NOT NULL DEFAULT ’0′,`nombre` varchar(50) DEFAULT NULL, PRIMARY KEY (`num_tarjeta`)) ENGINE=InnoDB DEFAULT CHARSET=latin1;
La estructura de la tabla bitácora sería la siguiente:
CREATE TABLE IF NOT EXISTS `bitacora` (`id` int(11) NOT NULL AUTO_INCREMENT, `operacion` varchar(10) DEFAULT NULL, `usuario` varchar(40) DEFAULT NULL, `host` varchar(30) NOT NULL, `modificado` datetime DEFAULT NULL, `tabla` varchar(40) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
La bitácora debe registrar todos los movimientos (insertar, eliminar y modificar) que se realicen en las tablas de la base de datos. Para lograr lo anterior es necesario crear un trigger para que se ejecute después de la operación de insertar, otro para después de eliminar y el último para después de modificar para cada una de las 3 tablas de la base de datos. Los nueve triggers necesarios para que funcione la bitácora son los siguientes:
DROP TRIGGER IF EXISTS `bit_carr_ins`;
DELIMITER
CREATE TRIGGER `bitacora` AFTER INSERT ON `carrera`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “INSERTAR”, NOW(), “CARRERA”)
DROP TRIGGER IF EXISTS `bit_carr_upd`;
CREATE TRIGGER `bit_carr_upd` AFTER UPDATE ON `carrera`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ACTUALIZAR”, NOW(), “CARRERA”)
DROP TRIGGER IF EXISTS `bit_carr_del`;
CREATE TRIGGER `bit_carr_del` AFTER DELETE ON `carrera`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ELIMINAR”, NOW(), “CARRERA”)
DROP TRIGGER IF EXISTS `bit_depto_ins`;
CREATE TRIGGER `bit_depto_ins` AFTER INSERT ON `departamento`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “INSERTAR”, NOW(), “DEPARTAMENTO”)
DROP TRIGGER IF EXISTS `bit_depto_upd`;
CREATE TRIGGER `bit_depto_upd` AFTER UPDATE ON `departamento`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ACTUALIZAR”, NOW(), “DEPARTAMENTO”)
DROP TRIGGER IF EXISTS `bit_depto_del`;
CREATE TRIGGER `bit_depto_del` AFTER DELETE ON `departamento`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ELIMINAR”, NOW(), “DEPARTAMENTO”)
DROP TRIGGER IF EXISTS `bit_mae_ins`;
CREATE TRIGGER `bit_mae_ins` AFTER INSERT ON `maestros`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “INSERTAR”, NOW(), “MAESTROS”)
DROP TRIGGER IF EXISTS `bit_mae_upd`;
CREATE TRIGGER `bit_mae_upd` AFTER UPDATE ON `maestros`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ACTUALIZAR”, NOW(), “MAESTROS”)
DROP TRIGGER IF EXISTS `bit_mae_del`;
CREATE TRIGGER `bit_mae_del` AFTER DELETE ON `maestros`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ELIMINAR”, NOW(), “MAESTROS”)
http://seguridad.cudi.edu.mx/congresos/2003/cudi1/impor_bitacoras.pdf
http://yoalo.wikispaces.com/2.4.1+Dise%C3%B1o+Creacion+Bitacora
ATTE: KARINA ACUÑA SANTANA.
karina acuña santana- Mensajes : 38
Fecha de inscripción : 30/01/2013
RESPUESTA AL REACTIVO #5
5) Investigar acerca del uso, procesamiento y estructura de una transacción en procedimientos almacenados y/o triggers.
Un procedimiento almacenado (stored procedure en inglés) es un programa (o procedimiento) el cual es almacenado físicamente en una base de datos. Su implementación varía de un gestor de bases de datos a otro. La ventaja de un procedimiento almacenado es que al ser ejecutado, en respuesta a una petición de usuario, es ejecutado directamente en el motor de bases de datos, el cual usualmente corre en un servidor separado. Como tal, posee acceso directo a los datos que necesita manipular y sólo necesita enviar sus resultados de regreso al usuario, deshaciéndose de la sobrecarga resultante de comunicar grandes cantidades de datos salientes y entrantes.
Usos típicos para procedimientos almacenados incluyen la validación de datos siendo integrados a la estructura de base de datos (los procedimientos almacenados utilizados para este propósito a menudo son llamados disparadores; triggers en inglés), o encapsular un proceso grande y complejo. El último ejemplo generalmente ejecutará más rápido como un procedimiento almacenado que de haber sido implementado como, por ejemplo, un programa corriendo en el sistema cliente y comunicándose con la base de datos mediante el envío de consultas SQL y recibiendo sus resultados.
Los procedimientos pueden ser ventajosos: Cuando una base de datos es manipulada desde muchos programas externos. Al incluir la lógica de la aplicación en la base de datos utilizando procedimientos almacenados, la necesidad de embeber la misma lógica en todos los programas que acceden a los datos es reducida. Esto puede simplificar la creación y, particularmente, el mantenimiento de los programas involucrados.
Podemos ver un claro ejemplo de estos procedimientos cuando requerimos realizar una misma operación en un servidor dentro de algunas o todas las bases de datos y a la vez dentro de todas o algunas de las tablas de las bases de datos del mismo. Para ello podemos utilizar a los Procedimientos almacenados auto creables que es una forma de generar ciclos redundantes a través de los procedimientos almacenados.
Implementación
Estos procedimientos, se usan a menudo, pero no siempre, para realizar consultas SQL sobre los objetos de la base de datos de una manera abstracta, desde el punto de vista del cliente de la aplicación. Un procedimiento almacenado permite agrupar en forma exclusiva parte de algo específico que se desee realizar o, mejor dicho, el SQL apropiado para dicha acción.
Usos
Los usos 'típicos' de los procedimientos almacenados se aplican en la validación de datos, integrados dentro de la estructura del banco de datos. Los procedimientos almacenados usados con tal propósito se llaman comúnmente disparadores, o triggers. Otro uso común es la 'encapsulación' de un API para un proceso complejo o grande que podría requerir la 'ejecución' de varias consultas SQL, tales como la manipulación de un 'dataset' enorme para producir un resultado resumido.
También pueden ser usados para el control de gestión de operaciones, y ejecutar procedimientos almacenados dentro de una transacción de tal manera que las transacciones sean efectivamente transparentes para ellos.
Ventajas
La ventaja de un procedimiento almacenado, en respuesta a una petición de usuario, está directamente bajo el control del motor del gestor de bases de datos, que corre generalmente en un servidor distinto del gestor de bases de datos aumentando con ello la rapidez de procesamiento de las peticiones del gestor de bases de datos. El servidor de la base de datos tiene acceso directo a los datos necesarios para manipular y sólo necesita enviar el resultado final al usuario. Los procedimientos almacenados pueden permitir que la lógica del negocio se encuentre como un API en la base de datos, que pueden simplificar la gestión de datos y reducir la necesidad de codificar la lógica en el resto de los programas cliente. Esto puede reducir la probabilidad de que los datos se corrompan por el uso de programas clientes defectuosos o erróneos. De este modo, el motor de base de datos puede asegurar la integridad de los datos y su consistencia con la ayuda de procedimientos almacenados. Algunos afirman que las bases de datos deben ser utilizadas para el almacenamiento de datos solamente, y que la lógica de negocio sólo debería aplicarse en la capa de negocio de código, a través de aplicaciones cliente que deban acceder a los datos. Sin embargo, el uso de procedimientos almacenados no se opone a la utilización de una capa de negocio.
TRIGGERS EJEMPLO
TRIGGERS EXPLICACIÓN El disparador “default_class_end” sera disparado antes de que la sentencia INSERT se efectúe en la tabla cl_sched. La variable “n” en la definición del trigger representa el nuevo valor en un INSERT, esto es, el valor que esta siendo insertado. El disparador verificará la validez de lo que está siendo insertado a la tabla. Si la columna “ending” no tiene un valor durante la inserción, el disparador asegurará que tenga el valor de la columna “starting” mas 1 hora.NOTA DB2 maneja tres tipos de disparadores: “before” o “antes”, “after” o “después” e “instead”o “en lugar de”.
TRIGGERS OTRO EJEMPLOCREATE TRIGGER audit_emp_salAFTER UPDATE OF salary ON employeeREFERENCING OLD AS o NEW AS nFOR EACH ROWMODE DB2SQLINSERT INTO audit VALUES (CURRENT TIMESTAMP, ' Employee ' || o.empno || ' salary changedfrom ' || CHAR(o.salary) || ' to ' || CHAR(n.salary) || ' by ' ||USER)
TRIGGERS EXPLICACIÓN En este ejemplo, el disparador audit_emp_sal es utilizado para realizar auditoria en la columna “salary” de la tabla “employee”. Cuando alguien hace un cambio en esta columna, el disparador será lanzado para escribir información acerca del cambio hecho en el salario en otra tabla llamada “audit”. La línea “OLD as o NEW as n” indica que el prefijo “o” será utilizado para representar el valor anterior o el existente en la tabla, y el prefijo “n” será utilizado para representar el nuevo valor que viene de la operación UPDATE. Por lo que “o.salary” representa el valor anterior o el actual del salario y “n.salary” representa el valor actualizado para la columna salario.
PROCEDIMIENTOS ALMACENADOS ESTRUCTUR:
La sintaxis básica de un procedimiento almacenado se muestra aquí. CREATE PROCEDURE proc_name [( {parametros opcionales} )] [atributos opcionales del procedimiento] <statement> Donde <statement> es una sentencia individual, o un conjunto de sentencias agrupadas por BEGIN [ATOMIC]… END
PROCEDIMIENTOS ALMACENADOS ATRIBUTOS OPCIONALES A continuación se describen algunos de los atributos del procedimiento almacenado:LANGUAGE SQL (Lenguaje SQL) Este atributo indica el idioma del procedimiento almacenado que se va a utilizar. LANGUAGE SQL es el valor por defecto. Para otros idiomas, tales como Java o C utilizar un LANGUAGE JAVA o LANGUAGE C, respectivamente.RESULT SETS <n> (Conjunto de Resultados <n>)Esto es necesario si el procedimiento almacenado devuelve un conjunto n de resultados.
PROCEDIMIENTOS ALMACENADOS ATRIBUTOS OPCIONALES SPECIFIC my_unique_name (Especificar mi_unico_nombre) Este es un nombre único que se le puede dar a un procedimiento. Un procedimiento almacenado puede estar sobrecargado, es decir, varios procedimientos almacenados pueden tener el mismo nombre, pero con diferente número de parámetros. Mediante el uso de la palabra clave específica puede proporcionar un nombre único para cada uno de estos procedimientos almacenados, y esto puede facilitar la administración de procedimientos almacenados. Por ejemplo, para eliminar un procedimiento almacenado utilizando la palabra clave específica, puede utilizar esta declaración: DROP SPECIFIC (procedimiento específico). Si la palabra clave SPECIFIC (específica) no se hubiera utilizado, usted tendría que utilizar un procedimiento de declaración DROP y poner el nombre del procedimiento con todos los parámetros a fin de que DB2 sepa cual procedimiento almacenado sobrecargado quería eliminar.
. PROCEDIMIENTOS ALMACENADOS PARAMETROS:
Existen tres tipos de parámetros en un procedimiento almacenado SQL PL: • IN – parámetro de entrada • OUT – parámetro de salida • INOUT – parámetro de entrada y salida
PROCEDIMIENTOS ALMACENADOS EJEMPLO CREATE PROCEDURE P2 ( IN v_p1 INT, INOUT v_p2 INT, OUT v_p3 INT) LANGUAGE SQL SPECIFIC myP2 BEGIN SET v_p2 = v_p2 + v_p1; SET v_p3 = v_p1; END Para llamar al procedimiento desde el comando Editor, use:call P2 (3, 4, ?) El signo de interrogación (?) Se utiliza para los parámetros de salida en la declaración de llamada.
ftp://ftp.software.ibm.com/software/data/db2/express-c/wiki/Conociendo_DB2_Express_v9.5.pdf
• www.slideshare.net/Kamisutra/db2-ibm
•
https://elenahzz.files.wordpress.com/.../triggers-y-procedimiento-alm.
ATTE: KARINA ACUÑA SANTANA.
Un procedimiento almacenado (stored procedure en inglés) es un programa (o procedimiento) el cual es almacenado físicamente en una base de datos. Su implementación varía de un gestor de bases de datos a otro. La ventaja de un procedimiento almacenado es que al ser ejecutado, en respuesta a una petición de usuario, es ejecutado directamente en el motor de bases de datos, el cual usualmente corre en un servidor separado. Como tal, posee acceso directo a los datos que necesita manipular y sólo necesita enviar sus resultados de regreso al usuario, deshaciéndose de la sobrecarga resultante de comunicar grandes cantidades de datos salientes y entrantes.
Usos típicos para procedimientos almacenados incluyen la validación de datos siendo integrados a la estructura de base de datos (los procedimientos almacenados utilizados para este propósito a menudo son llamados disparadores; triggers en inglés), o encapsular un proceso grande y complejo. El último ejemplo generalmente ejecutará más rápido como un procedimiento almacenado que de haber sido implementado como, por ejemplo, un programa corriendo en el sistema cliente y comunicándose con la base de datos mediante el envío de consultas SQL y recibiendo sus resultados.
Los procedimientos pueden ser ventajosos: Cuando una base de datos es manipulada desde muchos programas externos. Al incluir la lógica de la aplicación en la base de datos utilizando procedimientos almacenados, la necesidad de embeber la misma lógica en todos los programas que acceden a los datos es reducida. Esto puede simplificar la creación y, particularmente, el mantenimiento de los programas involucrados.
Podemos ver un claro ejemplo de estos procedimientos cuando requerimos realizar una misma operación en un servidor dentro de algunas o todas las bases de datos y a la vez dentro de todas o algunas de las tablas de las bases de datos del mismo. Para ello podemos utilizar a los Procedimientos almacenados auto creables que es una forma de generar ciclos redundantes a través de los procedimientos almacenados.
Implementación
Estos procedimientos, se usan a menudo, pero no siempre, para realizar consultas SQL sobre los objetos de la base de datos de una manera abstracta, desde el punto de vista del cliente de la aplicación. Un procedimiento almacenado permite agrupar en forma exclusiva parte de algo específico que se desee realizar o, mejor dicho, el SQL apropiado para dicha acción.
Usos
Los usos 'típicos' de los procedimientos almacenados se aplican en la validación de datos, integrados dentro de la estructura del banco de datos. Los procedimientos almacenados usados con tal propósito se llaman comúnmente disparadores, o triggers. Otro uso común es la 'encapsulación' de un API para un proceso complejo o grande que podría requerir la 'ejecución' de varias consultas SQL, tales como la manipulación de un 'dataset' enorme para producir un resultado resumido.
También pueden ser usados para el control de gestión de operaciones, y ejecutar procedimientos almacenados dentro de una transacción de tal manera que las transacciones sean efectivamente transparentes para ellos.
Ventajas
La ventaja de un procedimiento almacenado, en respuesta a una petición de usuario, está directamente bajo el control del motor del gestor de bases de datos, que corre generalmente en un servidor distinto del gestor de bases de datos aumentando con ello la rapidez de procesamiento de las peticiones del gestor de bases de datos. El servidor de la base de datos tiene acceso directo a los datos necesarios para manipular y sólo necesita enviar el resultado final al usuario. Los procedimientos almacenados pueden permitir que la lógica del negocio se encuentre como un API en la base de datos, que pueden simplificar la gestión de datos y reducir la necesidad de codificar la lógica en el resto de los programas cliente. Esto puede reducir la probabilidad de que los datos se corrompan por el uso de programas clientes defectuosos o erróneos. De este modo, el motor de base de datos puede asegurar la integridad de los datos y su consistencia con la ayuda de procedimientos almacenados. Algunos afirman que las bases de datos deben ser utilizadas para el almacenamiento de datos solamente, y que la lógica de negocio sólo debería aplicarse en la capa de negocio de código, a través de aplicaciones cliente que deban acceder a los datos. Sin embargo, el uso de procedimientos almacenados no se opone a la utilización de una capa de negocio.
TRIGGERS EJEMPLO
TRIGGERS EXPLICACIÓN El disparador “default_class_end” sera disparado antes de que la sentencia INSERT se efectúe en la tabla cl_sched. La variable “n” en la definición del trigger representa el nuevo valor en un INSERT, esto es, el valor que esta siendo insertado. El disparador verificará la validez de lo que está siendo insertado a la tabla. Si la columna “ending” no tiene un valor durante la inserción, el disparador asegurará que tenga el valor de la columna “starting” mas 1 hora.NOTA DB2 maneja tres tipos de disparadores: “before” o “antes”, “after” o “después” e “instead”o “en lugar de”.
TRIGGERS OTRO EJEMPLOCREATE TRIGGER audit_emp_salAFTER UPDATE OF salary ON employeeREFERENCING OLD AS o NEW AS nFOR EACH ROWMODE DB2SQLINSERT INTO audit VALUES (CURRENT TIMESTAMP, ' Employee ' || o.empno || ' salary changedfrom ' || CHAR(o.salary) || ' to ' || CHAR(n.salary) || ' by ' ||USER)
TRIGGERS EXPLICACIÓN En este ejemplo, el disparador audit_emp_sal es utilizado para realizar auditoria en la columna “salary” de la tabla “employee”. Cuando alguien hace un cambio en esta columna, el disparador será lanzado para escribir información acerca del cambio hecho en el salario en otra tabla llamada “audit”. La línea “OLD as o NEW as n” indica que el prefijo “o” será utilizado para representar el valor anterior o el existente en la tabla, y el prefijo “n” será utilizado para representar el nuevo valor que viene de la operación UPDATE. Por lo que “o.salary” representa el valor anterior o el actual del salario y “n.salary” representa el valor actualizado para la columna salario.
PROCEDIMIENTOS ALMACENADOS ESTRUCTUR:
La sintaxis básica de un procedimiento almacenado se muestra aquí. CREATE PROCEDURE proc_name [( {parametros opcionales} )] [atributos opcionales del procedimiento] <statement> Donde <statement> es una sentencia individual, o un conjunto de sentencias agrupadas por BEGIN [ATOMIC]… END
PROCEDIMIENTOS ALMACENADOS ATRIBUTOS OPCIONALES A continuación se describen algunos de los atributos del procedimiento almacenado:LANGUAGE SQL (Lenguaje SQL) Este atributo indica el idioma del procedimiento almacenado que se va a utilizar. LANGUAGE SQL es el valor por defecto. Para otros idiomas, tales como Java o C utilizar un LANGUAGE JAVA o LANGUAGE C, respectivamente.RESULT SETS <n> (Conjunto de Resultados <n>)Esto es necesario si el procedimiento almacenado devuelve un conjunto n de resultados.
PROCEDIMIENTOS ALMACENADOS ATRIBUTOS OPCIONALES SPECIFIC my_unique_name (Especificar mi_unico_nombre) Este es un nombre único que se le puede dar a un procedimiento. Un procedimiento almacenado puede estar sobrecargado, es decir, varios procedimientos almacenados pueden tener el mismo nombre, pero con diferente número de parámetros. Mediante el uso de la palabra clave específica puede proporcionar un nombre único para cada uno de estos procedimientos almacenados, y esto puede facilitar la administración de procedimientos almacenados. Por ejemplo, para eliminar un procedimiento almacenado utilizando la palabra clave específica, puede utilizar esta declaración: DROP SPECIFIC (procedimiento específico). Si la palabra clave SPECIFIC (específica) no se hubiera utilizado, usted tendría que utilizar un procedimiento de declaración DROP y poner el nombre del procedimiento con todos los parámetros a fin de que DB2 sepa cual procedimiento almacenado sobrecargado quería eliminar.
. PROCEDIMIENTOS ALMACENADOS PARAMETROS:
Existen tres tipos de parámetros en un procedimiento almacenado SQL PL: • IN – parámetro de entrada • OUT – parámetro de salida • INOUT – parámetro de entrada y salida
PROCEDIMIENTOS ALMACENADOS EJEMPLO CREATE PROCEDURE P2 ( IN v_p1 INT, INOUT v_p2 INT, OUT v_p3 INT) LANGUAGE SQL SPECIFIC myP2 BEGIN SET v_p2 = v_p2 + v_p1; SET v_p3 = v_p1; END Para llamar al procedimiento desde el comando Editor, use:call P2 (3, 4, ?) El signo de interrogación (?) Se utiliza para los parámetros de salida en la declaración de llamada.
ftp://ftp.software.ibm.com/software/data/db2/express-c/wiki/Conociendo_DB2_Express_v9.5.pdf
• www.slideshare.net/Kamisutra/db2-ibm
•
https://elenahzz.files.wordpress.com/.../triggers-y-procedimiento-alm.
ATTE: KARINA ACUÑA SANTANA.
karina acuña santana- Mensajes : 38
Fecha de inscripción : 30/01/2013
Replica a una compañera
thanahi escribió:1) Investigar conceptos básicos y tareas relacionadas con la Administración de bases de datos
Un administrador de bases de datos (o DBA) tiene la responsabilidad de mantener y operar las bases de datos que conforman el sistema de información de una compañía.
Un Administrador de Base de Datos de tiempo completo normalmente tiene aptitudes técnicas para el manejo del sistema en cuestión además, son cualidades deseables nociones de administración, manejo de personal e incluso un cierto grado de diplomacia. La característica más importante que debe poseer es un conocimiento profundo de las políticas y normas de la empresa así como el criterio de la empresa para aplicarlas en un momento dado.
La responsabilidad general del DBA es facilitar el desarrollo y el uso de la Base de Datos dentro de las guías de acción definidas por la administración de los datos.
El DBA es responsable primordialmente de:
•Administrar la estructura de la Base de Datos
•Administrar la actividad de los datos
•Administrar el Sistema Manejador de Base de Datos
•Establecer el Diccionario de Datos
•Asegurar la confiabilidad de la Base de Datos
•Confirmar la seguridad de la Base de Datos.
Entre sus roles podemos encontrar:
Recuperabilidad: Esto significa que, si ocurre algún error en los datos, hay un bug de programa o de hardware, el DBA (Administrador de base de datos) puede traer de vuelta la base de datos al tiempo y estado en que se encontraba en estado consistente antes de que el daño se causara.
Integridad: La integridad de una base de datos significa que, la base de datos o los programas que generaron su contenido, incorporen métodos que aseguren que el contenido de los datos del sistema no se rompa así como las reglas del negocio.
Seguridad: La seguridad se encarga de limitar a los usuarios a ejecutar únicamente las operaciones permitidas. Al igual que otros metadatos, una DBMS relacional maneja la seguridad en forma de tablas. Estas tablas son las "llaves del reino" por lo cual se deben proteger de posibles intrusos.
Disponibilidad: El DBA debe mantener la disponibilidad, esto significa que los usuarios tengan acceso a los datos cuando lo necesiten para atender a las necesidades del negocio.
Desempeño: Esto significa que la base de datos no cause tiempos de respuesta poco razonables. En sistemas muy complejos cliente/servidor y de tres capas, la base de datos es solo uno de los elementos que determinan la experiencia de los usuarios en línea y los programas desatendidos. El desempeño es una de las mayores motivaciones de los DBA para coordinarse con los especialistas de otras áreas del sistema fuera de las líneas burocráticas tradicionales.
Desarrollo y Soporte a Pruebas: Las actividades de soporte incluyen la colecta de datos de producción para llevar a cabo pruebas con ellos; consultar a los programadores respecto al desempeño; y hacer cambios a los diseños de tablas de manera que se puedan proporcionar nuevos tipos de almacenamientos para las funciones de los programas.
Administrar el sistema manejador de base de datos: La concurrencia de múltiples usuarios requiere la estandarización de los procesos de operación; el DBA es responsable de estas especificaciones y de asegurarse que estas lleguen a quienes concierne. Todo el ámbito de la base de datos se rige por estándares, desde la forma de cómo se captura la información (tipo de dato, longitud, formato), como es procesada y presentada. El nivel de estandarización alcanza hasta los aspectos más internos de la base de datos; como sé accesa a un archivo, como se determinan los índices primarios y auxiliares, registros, etc.
El DBA debe procurar siempre que los estándares que serán aplicados beneficien también a los usuarios, privilegiando siempre la optimización en la operación del DBMS y el apego de las políticas de la empresa. Entre las funciones del DBA se encuentra la de revisar los estándares periódicamente para determinar su operatividad, ajustarlos, ampliarlos o cancelarlos y hacer que éstos se cumplan.
Establecer el diccionario de datos: Cuando se definen estándares sobre la estructura de la base de datos, se deben de registrarse en una sección del diccionario de datos a la que todos aquellos usuarios relacionados con ese tipo de proceso pueden acceder. Este metadato debe precisar información que nos indique con claridad el tipo de datos que serán utilizados, sus ámbitos de influencia y sus limitantes de seguridad.
Asegurar la confiabilidad de la base de datos: Se trata de realizar un sistema de bases de datos lo suficientemente robusto para que sea capaz de recuperarse frente a errores o usos inadecuados. Se deben utilizar gestores con las herramientas necesarias para la reparación de los posibles errores que las bases de datos pueden sufrir, por ejemplo tras un corte inesperado de luz.
FUENTES DE INFORMACION:
• http://www.angelfire.com/nf/tecvirtual/cursos/admonbd/DBA1.htm
• http://tutorialdeadministraciondebasededatos.blogspot.mx/
• http://es.kioskea.net/contents/metiers-informatique/administrateur-bases-donnees.php3
• http://susanmendoza.blogspot.mx/2009/08/roles-o-funciones-del-administrador-de.html
ATTE: THANAHI MEDRANO RUIZ
Hola amiga sobre tu participación en el foro me parece una buena información ya que haces mención de algunos conceptos que abarca esta unidad. Me gusto tu información sigue así.
Atentamente: Sinaí Vargas García
sinay vargas- Mensajes : 68
Fecha de inscripción : 29/01/2013
RESPUESTA AL REACTIVO NUM: 4
Con el crecimiento de Internet, y el desarrollo de sistemas de información bajo la arquitectura Cliente/Servidor, los sistemas de cómputo ,en general, están expuestos a múltiples amenazas, vulnerabilidades y ataques cada vez más complejos. Por lo tanto, es importante que las organizaciones implementen bitácoras (o archivos logs) para almacenar los sucesos que ocurren en el sistema. La información contenida en una bitácora es muy importante y útil cuando ocurre un incidente de seguridad o cuando se realiza una auditoría de sistemas.
Una bitácora puede registrar mucha información acerca de eventos relacionados con el sistema que la genera los cuales pueden ser:
• Fecha y hora.
• Host origen.
• Usuario.
• Actividad realizada.
La importancia de las bitácoras es la de recuperar información ante incidentes de seguridad, detección de comportamiento inusual, información para resolver problemas, evidencia legal, es de gran ayuda en las tareas de cómputo forense.
Enseguida plantearé un ejemplo de una bitácora desarrollada para la siguiente base de datos de MySQL, llamada proyecto, que tiene las tablas carrera, departamento y maestros.
CREATE DATABASE proyecto;
USE proyecto
CREATE TABLE IF NOT EXISTS `carrera` (`clave_carrera` int(11) NOT NULL, `nom_carrera` varchar(20) NOT NULL, `num_depto` int(11) NOT NULL, PRIMARY KEY (`clave_carrera`), KEY `num_depto` (`num_depto`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `departamento` ( `num_departamento` int(11) NOT NULL,`nombre_dept` varchar(20) NOT NULL, `jefe_num_tarjet` int(11) NOT NULL, PRIMARY KEY (`num_departamento`), KEY `jefe_num_tarjet` (`jefe_num_tarjet`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `maestros` (`num_tarjeta` int(11) NOT NULL DEFAULT ’0′,`nombre` varchar(50) DEFAULT NULL, PRIMARY KEY (`num_tarjeta`)) ENGINE=InnoDB DEFAULT CHARSET=latin1;
La estructura de la tabla bitácora sería la siguiente:
CREATE TABLE IF NOT EXISTS `bitacora` (`id` int(11) NOT NULL AUTO_INCREMENT, `operacion` varchar(10) DEFAULT NULL, `usuario` varchar(40) DEFAULT NULL, `host` varchar(30) NOT NULL, `modificado` datetime DEFAULT NULL, `tabla` varchar(40) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
La bitácora debe registrar todos los movimientos (insertar, eliminar y modificar) que se realicen en las tablas de la base de datos. Para lograr lo anterior es necesario crear un trigger para que se ejecute después de la operación de insertar, otro para después de eliminar y el último para después de modificar para cada una de las 3 tablas de la base de datos.
ATT: ELMAN FLORES ALCANTAR
Una bitácora puede registrar mucha información acerca de eventos relacionados con el sistema que la genera los cuales pueden ser:
• Fecha y hora.
• Host origen.
• Usuario.
• Actividad realizada.
La importancia de las bitácoras es la de recuperar información ante incidentes de seguridad, detección de comportamiento inusual, información para resolver problemas, evidencia legal, es de gran ayuda en las tareas de cómputo forense.
Enseguida plantearé un ejemplo de una bitácora desarrollada para la siguiente base de datos de MySQL, llamada proyecto, que tiene las tablas carrera, departamento y maestros.
CREATE DATABASE proyecto;
USE proyecto
CREATE TABLE IF NOT EXISTS `carrera` (`clave_carrera` int(11) NOT NULL, `nom_carrera` varchar(20) NOT NULL, `num_depto` int(11) NOT NULL, PRIMARY KEY (`clave_carrera`), KEY `num_depto` (`num_depto`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `departamento` ( `num_departamento` int(11) NOT NULL,`nombre_dept` varchar(20) NOT NULL, `jefe_num_tarjet` int(11) NOT NULL, PRIMARY KEY (`num_departamento`), KEY `jefe_num_tarjet` (`jefe_num_tarjet`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `maestros` (`num_tarjeta` int(11) NOT NULL DEFAULT ’0′,`nombre` varchar(50) DEFAULT NULL, PRIMARY KEY (`num_tarjeta`)) ENGINE=InnoDB DEFAULT CHARSET=latin1;
La estructura de la tabla bitácora sería la siguiente:
CREATE TABLE IF NOT EXISTS `bitacora` (`id` int(11) NOT NULL AUTO_INCREMENT, `operacion` varchar(10) DEFAULT NULL, `usuario` varchar(40) DEFAULT NULL, `host` varchar(30) NOT NULL, `modificado` datetime DEFAULT NULL, `tabla` varchar(40) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
La bitácora debe registrar todos los movimientos (insertar, eliminar y modificar) que se realicen en las tablas de la base de datos. Para lograr lo anterior es necesario crear un trigger para que se ejecute después de la operación de insertar, otro para después de eliminar y el último para después de modificar para cada una de las 3 tablas de la base de datos.
ATT: ELMAN FLORES ALCANTAR
Elman F.- Invitado
RESPUESTA AL REACTIVO NUM: 2
1. Al hacer el primer backup o respaldo de información, revisa que la información esté limpia de virus y que sea la que realmente quieres guardar, si es muy extensiva, comprueba que esté totalmente funcional, en lo posible archivo por archivo.
2. Cada vez que hagas cambios importantes, realiza un nuevo respaldo, si no es posible, establece un calendario serio para realizar uno, con fechas asignadas para tal tarea.
3. Recuerda realizar el backup de todo el sitio web, no sólamente de los archivos de texto que los sitios webs utilizan, sino también de los correos, las bases de datos y la estructura de carpetas completa.
4. Mientras más "importante" sea tu información en términos de dinero para tu persona u organización, deberás realizar mayor número de respaldos.
5. Guarda varias copias es distintas partes (físicas y en internet), con la finalidad que no dependas de una sóla copia. Para este fin puedes utilizar servicios webs de respaldo como DropBox o SugarSync, en los que puedes subir información hasta de 5 GBs completamente gratis.
6. Recomiendo el uso de DVDs de 1,4 o 4,3 GBs para guardar y mantener la información a salvo.
7. Existen 2 tipos de respaldos, los totales y los progresivas, si tienes poca cantidad de información, es conveniente hacer siempre respaldos totales de tu información, si manejas una cantidad muy grande de datos, puedes hacer backups progresivos. Hay muchas aplicaciones para este tipo de tareas.
8. Antes de guardar o quemar la información, ordena la misma a través de diferentes carpetas, con su respectivo nombre y fecha por meses/año.
9. Etiqueta y clasifica cada DVD o copia de seguridad con una cinta o con algún rotulado indicando Fecha y el Contenido.
10. En caso de tener información muy privada personal o empresarial, puedes encriptarla y ponerle una clave simple, que sea fácil de recordar. Otra solución, es comprimir tus datos y asignar la contraseña.
11. El último consejo es: revisar la información que se guarda, con el uso de antivirus y luego abrir manualmente cada pieza de información, para asegurarnos que su consistencia esté correcta. No vaya a ser que estés realizando copias de seguridad con un contenido dañado a través del tiempo.
Ahora más que nunca, con el uso de nuevas herramientas tecnológicas, la menor cantidad de datos físicos o por medios impresos y mayor por medios digitales, es imprescindible saber hacer un respaldo, de forma repetitiva y cada cierto tiempo establecido. Hay muchas personas y empresas que no saben o no le prestan mayor atención a este detalle hasta que sucede alguna eventualidad desafortunada: el robo de la computadora, se echa a perder el disco duro, por lo que ocurre una pérdida de información.
ATT: ELMAN FLORES ALCANTAR
2. Cada vez que hagas cambios importantes, realiza un nuevo respaldo, si no es posible, establece un calendario serio para realizar uno, con fechas asignadas para tal tarea.
3. Recuerda realizar el backup de todo el sitio web, no sólamente de los archivos de texto que los sitios webs utilizan, sino también de los correos, las bases de datos y la estructura de carpetas completa.
4. Mientras más "importante" sea tu información en términos de dinero para tu persona u organización, deberás realizar mayor número de respaldos.
5. Guarda varias copias es distintas partes (físicas y en internet), con la finalidad que no dependas de una sóla copia. Para este fin puedes utilizar servicios webs de respaldo como DropBox o SugarSync, en los que puedes subir información hasta de 5 GBs completamente gratis.
6. Recomiendo el uso de DVDs de 1,4 o 4,3 GBs para guardar y mantener la información a salvo.
7. Existen 2 tipos de respaldos, los totales y los progresivas, si tienes poca cantidad de información, es conveniente hacer siempre respaldos totales de tu información, si manejas una cantidad muy grande de datos, puedes hacer backups progresivos. Hay muchas aplicaciones para este tipo de tareas.
8. Antes de guardar o quemar la información, ordena la misma a través de diferentes carpetas, con su respectivo nombre y fecha por meses/año.
9. Etiqueta y clasifica cada DVD o copia de seguridad con una cinta o con algún rotulado indicando Fecha y el Contenido.
10. En caso de tener información muy privada personal o empresarial, puedes encriptarla y ponerle una clave simple, que sea fácil de recordar. Otra solución, es comprimir tus datos y asignar la contraseña.
11. El último consejo es: revisar la información que se guarda, con el uso de antivirus y luego abrir manualmente cada pieza de información, para asegurarnos que su consistencia esté correcta. No vaya a ser que estés realizando copias de seguridad con un contenido dañado a través del tiempo.
Ahora más que nunca, con el uso de nuevas herramientas tecnológicas, la menor cantidad de datos físicos o por medios impresos y mayor por medios digitales, es imprescindible saber hacer un respaldo, de forma repetitiva y cada cierto tiempo establecido. Hay muchas personas y empresas que no saben o no le prestan mayor atención a este detalle hasta que sucede alguna eventualidad desafortunada: el robo de la computadora, se echa a perder el disco duro, por lo que ocurre una pérdida de información.
ATT: ELMAN FLORES ALCANTAR
Elman F.- Invitado
RESPUESTA AL REACTIVO NUM: 3
Seguridad: El objetivo es proteger la Base de Datos contra accesos no autorizados. Se le conoce también como 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: voz, retina del ojo, etc.
• Controles de sistema operativo.
En relación al SGBD, debe mantener información de los usuarios, su tipo y los accesos y operaciones permitidas a éstos.
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. 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.
Un sistema de recuperación consiste en restaurar la BD a un estado que se
Sepa correcto, tras cualquier fallo que la haya dejado en un estado incorrecto. Recuperación de BD: “devolver la BD a un estado consistente” En Oracle hay recuperación automática ante fallos, el proceso varía
Dependiendo del tipo de fallo y las estructuras afectadas.
Ficheros Redo Log : Ficheros de almacenamiento de cambios en la BD,
(Recovery).
-Ficheros de Control: Almacenan el estado de la estructura física de la BD.
Guían la recuperación.
-Rollback Segments: Almacenan las últimas sentencias realizadas sobre la
BD. Saben cuándo se ha confirmado o no una transacción.
- Backups de la BD: Copias de Seguridad, (Restoring)
En este tema se describe cómo crear un usuario de base de datos asignado a un inicio de sesión en SQL Server 2012 mediante SQL Server Management Studio o Transact-SQL. El usuario de la base de datos es la identidad del inicio de sesión cuando está conectado a una base de datos. El usuario de la base de datos puede utilizar el mismo nombre que el inicio de sesión, pero no es necesario. En este tema se supone que ya existe un inicio de sesión en SQL Server. Para obtener información acerca de cómo crear un inicio de sesión, vea Crear un inicio de sesión.
Un usuario es una entidad de seguridad de la base de datos. Los inicios de sesión deben estar asignados a un usuario de base de datos para poder conectarse a una base de datos. Un inicio de sesión se puede asignar a bases de datos diferentes como usuarios diferentes pero solo se puede asignar como un usuario en cada base de datos. En una base de datos parcialmente independiente, puede crearse un usuario que no tenga un inicio de sesión.Para obtener más información acerca de los usuarios de bases de datos independientes, vea CREATE USER (Transact-SQL). Si el usuario invitado de una base de datos está habilitado, un inicio de sesión que no esté asignado a un usuario de la base de datos puede entrar en la base de datos como el usuario invitado.
Para crear un usuario de base de datos
1. En el Explorador de objetos, expanda la carpeta Bases de datos.
2. Expanda la base de datos en la que se va a crear el usuario de la misma.
3. Haga clic con el botón secundario en la carpeta Seguridad, seleccione Nuevo y seleccione Usuario.
4. En el cuadro de diálogo Usuario de la base de datos - Nuevo, en la página General, seleccione uno de los tipos de usuario siguientes de la listaTipo de usuario: Usuario SQL con inicio de sesión, Usuario SQL sin inicio de sesión, Usuario asignado a un certificado, Usuario asignado a una clave asimétrica o Usuario de Windows.
5. En el cuadro Nombre de usuario, escriba un nombre para el nuevo usuario. Si ha elegido Usuario de Windows en la lista Tipo de usuario, también puede hacer clic en los puntos suspensivos (…) para abrir el cuadro de diálogo Seleccionar usuarios o grupos.
6. En el cuadro Nombre de inicio de sesión, escriba el inicio de sesión para el usuario. Como alternativa, haga clic en los puntos suspensivos (…)para abrir el cuadro de diálogo Seleccionar inicio de sesión. Si selecciona Usuario SQL con inicio de sesión o Usuario de Windows en la listaTipo de usuario, estará disponible Nombre de inicio de sesión.
7. En el cuadro Esquema predeterminado, especifique el esquema al que pertenecerán los objetos creados por este usuario. Como alternativa, haga clic en los puntos suspensivos (…) para abrir el cuadro de diálogo Seleccionar esquema. Si selecciona Usuario SQL con inicio de sesión, Usuario SQL sin inicio de sesión, o Usuario de Windows en la lista Tipo de usuario, estará disponible Esquema predeterminado.
8. En el cuadro de Nombre de certificado, escriba el certificado que se utilizará para el usuario de base de datos. Como alternativa, haga clic en los puntos suspensivos (…) para abrir el cuadro de diálogo Seleccionar certificado. Si selecciona Usuario asignado a un certificado en la lista Tipo de usuario, estará disponible Nombre de certificado.
9. En el cuadro Nombre de clave asimétrica , escriba la clave que se va a utilizar para el usuario de base de datos. Como alternativa, haga clic en los puntos suspensivos (…) para abrir el cuadro de diálogo Seleccionar clave asimétrica. Si selecciona Usuario asignado a una clave asimétrica en la lista Tipo de usuario, estará disponible Nombre de clave asimétrica.
10. Haga clic en Aceptar.
ATT: ELMAN FLORES ALCANTAR
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: voz, retina del ojo, etc.
• Controles de sistema operativo.
En relación al SGBD, debe mantener información de los usuarios, su tipo y los accesos y operaciones permitidas a éstos.
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. 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.
Un sistema de recuperación consiste en restaurar la BD a un estado que se
Sepa correcto, tras cualquier fallo que la haya dejado en un estado incorrecto. Recuperación de BD: “devolver la BD a un estado consistente” En Oracle hay recuperación automática ante fallos, el proceso varía
Dependiendo del tipo de fallo y las estructuras afectadas.
Ficheros Redo Log : Ficheros de almacenamiento de cambios en la BD,
(Recovery).
-Ficheros de Control: Almacenan el estado de la estructura física de la BD.
Guían la recuperación.
-Rollback Segments: Almacenan las últimas sentencias realizadas sobre la
BD. Saben cuándo se ha confirmado o no una transacción.
- Backups de la BD: Copias de Seguridad, (Restoring)
En este tema se describe cómo crear un usuario de base de datos asignado a un inicio de sesión en SQL Server 2012 mediante SQL Server Management Studio o Transact-SQL. El usuario de la base de datos es la identidad del inicio de sesión cuando está conectado a una base de datos. El usuario de la base de datos puede utilizar el mismo nombre que el inicio de sesión, pero no es necesario. En este tema se supone que ya existe un inicio de sesión en SQL Server. Para obtener información acerca de cómo crear un inicio de sesión, vea Crear un inicio de sesión.
Un usuario es una entidad de seguridad de la base de datos. Los inicios de sesión deben estar asignados a un usuario de base de datos para poder conectarse a una base de datos. Un inicio de sesión se puede asignar a bases de datos diferentes como usuarios diferentes pero solo se puede asignar como un usuario en cada base de datos. En una base de datos parcialmente independiente, puede crearse un usuario que no tenga un inicio de sesión.Para obtener más información acerca de los usuarios de bases de datos independientes, vea CREATE USER (Transact-SQL). Si el usuario invitado de una base de datos está habilitado, un inicio de sesión que no esté asignado a un usuario de la base de datos puede entrar en la base de datos como el usuario invitado.
Para crear un usuario de base de datos
1. En el Explorador de objetos, expanda la carpeta Bases de datos.
2. Expanda la base de datos en la que se va a crear el usuario de la misma.
3. Haga clic con el botón secundario en la carpeta Seguridad, seleccione Nuevo y seleccione Usuario.
4. En el cuadro de diálogo Usuario de la base de datos - Nuevo, en la página General, seleccione uno de los tipos de usuario siguientes de la listaTipo de usuario: Usuario SQL con inicio de sesión, Usuario SQL sin inicio de sesión, Usuario asignado a un certificado, Usuario asignado a una clave asimétrica o Usuario de Windows.
5. En el cuadro Nombre de usuario, escriba un nombre para el nuevo usuario. Si ha elegido Usuario de Windows en la lista Tipo de usuario, también puede hacer clic en los puntos suspensivos (…) para abrir el cuadro de diálogo Seleccionar usuarios o grupos.
6. En el cuadro Nombre de inicio de sesión, escriba el inicio de sesión para el usuario. Como alternativa, haga clic en los puntos suspensivos (…)para abrir el cuadro de diálogo Seleccionar inicio de sesión. Si selecciona Usuario SQL con inicio de sesión o Usuario de Windows en la listaTipo de usuario, estará disponible Nombre de inicio de sesión.
7. En el cuadro Esquema predeterminado, especifique el esquema al que pertenecerán los objetos creados por este usuario. Como alternativa, haga clic en los puntos suspensivos (…) para abrir el cuadro de diálogo Seleccionar esquema. Si selecciona Usuario SQL con inicio de sesión, Usuario SQL sin inicio de sesión, o Usuario de Windows en la lista Tipo de usuario, estará disponible Esquema predeterminado.
8. En el cuadro de Nombre de certificado, escriba el certificado que se utilizará para el usuario de base de datos. Como alternativa, haga clic en los puntos suspensivos (…) para abrir el cuadro de diálogo Seleccionar certificado. Si selecciona Usuario asignado a un certificado en la lista Tipo de usuario, estará disponible Nombre de certificado.
9. En el cuadro Nombre de clave asimétrica , escriba la clave que se va a utilizar para el usuario de base de datos. Como alternativa, haga clic en los puntos suspensivos (…) para abrir el cuadro de diálogo Seleccionar clave asimétrica. Si selecciona Usuario asignado a una clave asimétrica en la lista Tipo de usuario, estará disponible Nombre de clave asimétrica.
10. Haga clic en Aceptar.
ATT: ELMAN FLORES ALCANTAR
Elman F.- Invitado
REACTIVO 1) Investigar conceptos básicos y tareas relacionadas con la Administración de bases de datos
un abministrador de base de datos es el que se encarga de mantener la base de datos de una compañia en perfecto estado.
La información es uno los activos más valiosos de la empresa, es indispensable contar con una persona -el administrador de datos- que conozca la información, y las necesidades de la empresa en este aspecto, en un nivel gerencial superior. Así la labor del administradorde datos es decidir en primer término cuáles datos deben almacenarse en la base de datos, y establecer políticas para mantener y manejar los datos uan vez almacenados. El administrador de datos es por lo general, un gerente, no un técnico. El técnico responsable de poner en práctica las decisiones del administrador de datos es el administrador de bases de datos(DBA, database administrator).
El alcance de la actividad de la Administración de Datos es la organización completa (empresa, institución u otro organismo), mientras que el alcance de la Administración de Bases de Datos queda restringido a una Base de Datos en particular y a los sistemas que los procesan. La Administración de la Base de Datos opera dentro de un marco proporcionado por la Administración de Datos facilitándose de esta manera el desarrollo y el uso de una Base de Datos y sus aplicaciones. Las siglas DBA suelen utilizarse para designar tanto la función Administración de Base de Datos como al titulo del puesto administrador de Base de Datos.
En los distintos niveles y aplicaciones de Base de Datos existe la función DBA, aunque varia en complejidad. Esta es más sencilla cuando se trata de una Base de Datos Personal que cuando se refiere a una Base de Datos de grupos de trabajo, y esta a su vez es más sencilla que en una Base de Datos Organizacional. En una Base de Datos Personal comúnmente el mismo usuario es el Administrador de la Base de Datos; las Bases de Datos de grupos de trabajo requieren de una o dos personas que normalmente no se dedican a esta función de tiempo completo puesto que tienen otras responsabilidades dentro o fuera de la organización. En las Bases de Datos Organizacionales, que comúnmente permiten el acceso a decenas e incluso centenas de usuarios, se requiere de un administrador de Base de Datos de tiempo completo; lo anterior debido al alto volumen de procesos que deben desarrollarse, controlarse y supervisarse.
Un Administrador de Base de Datos de tiempo completo normalmente tiene aptitudes técnicas para el manejo del sistema en cuestión a demás, son cualidades deseables nociones de administración, manejo de personal e incluso un cierto grado de diplomacia. La característica más importante que debe poseer es un conocimiento profundo de las políticas y normas de la empresa así como el criterio de la empresa para aplicarlas en un momento dado.
La información es uno los activos más valiosos de la empresa, es indispensable contar con una persona -el administrador de datos- que conozca la información, y las necesidades de la empresa en este aspecto, en un nivel gerencial superior. Así la labor del administradorde datos es decidir en primer término cuáles datos deben almacenarse en la base de datos, y establecer políticas para mantener y manejar los datos uan vez almacenados. El administrador de datos es por lo general, un gerente, no un técnico. El técnico responsable de poner en práctica las decisiones del administrador de datos es el administrador de bases de datos(DBA, database administrator).
El alcance de la actividad de la Administración de Datos es la organización completa (empresa, institución u otro organismo), mientras que el alcance de la Administración de Bases de Datos queda restringido a una Base de Datos en particular y a los sistemas que los procesan. La Administración de la Base de Datos opera dentro de un marco proporcionado por la Administración de Datos facilitándose de esta manera el desarrollo y el uso de una Base de Datos y sus aplicaciones. Las siglas DBA suelen utilizarse para designar tanto la función Administración de Base de Datos como al titulo del puesto administrador de Base de Datos.
En los distintos niveles y aplicaciones de Base de Datos existe la función DBA, aunque varia en complejidad. Esta es más sencilla cuando se trata de una Base de Datos Personal que cuando se refiere a una Base de Datos de grupos de trabajo, y esta a su vez es más sencilla que en una Base de Datos Organizacional. En una Base de Datos Personal comúnmente el mismo usuario es el Administrador de la Base de Datos; las Bases de Datos de grupos de trabajo requieren de una o dos personas que normalmente no se dedican a esta función de tiempo completo puesto que tienen otras responsabilidades dentro o fuera de la organización. En las Bases de Datos Organizacionales, que comúnmente permiten el acceso a decenas e incluso centenas de usuarios, se requiere de un administrador de Base de Datos de tiempo completo; lo anterior debido al alto volumen de procesos que deben desarrollarse, controlarse y supervisarse.
Un Administrador de Base de Datos de tiempo completo normalmente tiene aptitudes técnicas para el manejo del sistema en cuestión a demás, son cualidades deseables nociones de administración, manejo de personal e incluso un cierto grado de diplomacia. La característica más importante que debe poseer es un conocimiento profundo de las políticas y normas de la empresa así como el criterio de la empresa para aplicarlas en un momento dado.
hoguer tapia- Mensajes : 11
Fecha de inscripción : 12/02/2013
reactivo2) Investigar acerca del uso e importancia de respaldar bases de datos y sus distintos tipos de respaldo
La importancia radica en que todos los dispositivos de almacenamiento masivo de información tienen la posibilidad de fallar, por lo tanto es necesario que se cuente con una copia de seguridad de la información importante, ya que la probabilidad de que 2 dispositivos fallen de manera simultánea es muy difícil.
Tipos de respaldo
El respaldo de información es un proceso muy importante que debe de tener cada empresa este debe de realizarce en sus computadora, sea un equipo portátil o un equipo de escritorio. El contar con respaldos permite al usuario en algún momento dado recuperar información que haya sido dañada por virus, fallas en el equipo o por accidentes.
su último respaldo y por tanto se puede saltar esta vez. Por otro lado, si la fecha de modificación es más reciente, el archivo ha sido modificado y se debería copiar. Los respaldos incrementales son utilizados en conjunto con respaldos regulares completos (por ejemplo, un respaldo semanal completo, con respaldos incrementales diarios).
Incrementales
Los respaldos incrementales primero revisan para ver si la fecha de modificación de un archivo es más reciente que la fecha de su último respaldo. Si no lo es, significa que el archivo no ha sido modificado desde
Completos.
Un respaldo completo es un respaldo donde cada archivo es escrito a la media de respaldo. Si los datos a respaldar nunca cambian, cada respaldo completo creado será una copia de exactamente lo mismo.
Respaldos manuales y automatizados.
El RLOPD define la copia de respaldo como una copia de los datos de un fichero automatizado en un soporte que posibilite su recuperación. Además obliga a documentar procedimientos tanto para la realización de copias de respaldo como para la recuperación de los datos en los ficheros o tratamientos automatizados que garanticen su reconstrucción.
Un procedimiento de copias de seguridad deberá existir por escrito, estar accesible y puesto en conocimiento de todos aquellos a quienes pueda afectar almacenando, si fuera necesario, una copia fuera de las instalaciones donde se encuentran los sistemas.
Tipos de respaldo
El respaldo de información es un proceso muy importante que debe de tener cada empresa este debe de realizarce en sus computadora, sea un equipo portátil o un equipo de escritorio. El contar con respaldos permite al usuario en algún momento dado recuperar información que haya sido dañada por virus, fallas en el equipo o por accidentes.
su último respaldo y por tanto se puede saltar esta vez. Por otro lado, si la fecha de modificación es más reciente, el archivo ha sido modificado y se debería copiar. Los respaldos incrementales son utilizados en conjunto con respaldos regulares completos (por ejemplo, un respaldo semanal completo, con respaldos incrementales diarios).
Incrementales
Los respaldos incrementales primero revisan para ver si la fecha de modificación de un archivo es más reciente que la fecha de su último respaldo. Si no lo es, significa que el archivo no ha sido modificado desde
Completos.
Un respaldo completo es un respaldo donde cada archivo es escrito a la media de respaldo. Si los datos a respaldar nunca cambian, cada respaldo completo creado será una copia de exactamente lo mismo.
Respaldos manuales y automatizados.
El RLOPD define la copia de respaldo como una copia de los datos de un fichero automatizado en un soporte que posibilite su recuperación. Además obliga a documentar procedimientos tanto para la realización de copias de respaldo como para la recuperación de los datos en los ficheros o tratamientos automatizados que garanticen su reconstrucción.
Un procedimiento de copias de seguridad deberá existir por escrito, estar accesible y puesto en conocimiento de todos aquellos a quienes pueda afectar almacenando, si fuera necesario, una copia fuera de las instalaciones donde se encuentran los sistemas.
hoguer tapia- Mensajes : 11
Fecha de inscripción : 12/02/2013
Re: 3.- Administración De Bases De Datos
Elman F. escribió:Seguridad: El objetivo es proteger la Base de Datos contra accesos no autorizados. Se le conoce también como 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: voz, retina del ojo, etc.
• Controles de sistema operativo.
En relación al SGBD, debe mantener información de los usuarios, su tipo y los accesos y operaciones permitidas a éstos.
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. 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.
Un sistema de recuperación consiste en restaurar la BD a un estado que se
Sepa correcto, tras cualquier fallo que la haya dejado en un estado incorrecto. Recuperación de BD: “devolver la BD a un estado consistente” En Oracle hay recuperación automática ante fallos, el proceso varía
Dependiendo del tipo de fallo y las estructuras afectadas.
Ficheros Redo Log : Ficheros de almacenamiento de cambios en la BD,
(Recovery).
-Ficheros de Control: Almacenan el estado de la estructura física de la BD.
Guían la recuperación.
-Rollback Segments: Almacenan las últimas sentencias realizadas sobre la
BD. Saben cuándo se ha confirmado o no una transacción.
- Backups de la BD: Copias de Seguridad, (Restoring)
En este tema se describe cómo crear un usuario de base de datos asignado a un inicio de sesión en SQL Server 2012 mediante SQL Server Management Studio o Transact-SQL. El usuario de la base de datos es la identidad del inicio de sesión cuando está conectado a una base de datos. El usuario de la base de datos puede utilizar el mismo nombre que el inicio de sesión, pero no es necesario. En este tema se supone que ya existe un inicio de sesión en SQL Server. Para obtener información acerca de cómo crear un inicio de sesión, vea Crear un inicio de sesión.
Un usuario es una entidad de seguridad de la base de datos. Los inicios de sesión deben estar asignados a un usuario de base de datos para poder conectarse a una base de datos. Un inicio de sesión se puede asignar a bases de datos diferentes como usuarios diferentes pero solo se puede asignar como un usuario en cada base de datos. En una base de datos parcialmente independiente, puede crearse un usuario que no tenga un inicio de sesión.Para obtener más información acerca de los usuarios de bases de datos independientes, vea CREATE USER (Transact-SQL). Si el usuario invitado de una base de datos está habilitado, un inicio de sesión que no esté asignado a un usuario de la base de datos puede entrar en la base de datos como el usuario invitado.
Para crear un usuario de base de datos
1. En el Explorador de objetos, expanda la carpeta Bases de datos.
2. Expanda la base de datos en la que se va a crear el usuario de la misma.
3. Haga clic con el botón secundario en la carpeta Seguridad, seleccione Nuevo y seleccione Usuario.
4. En el cuadro de diálogo Usuario de la base de datos - Nuevo, en la página General, seleccione uno de los tipos de usuario siguientes de la listaTipo de usuario: Usuario SQL con inicio de sesión, Usuario SQL sin inicio de sesión, Usuario asignado a un certificado, Usuario asignado a una clave asimétrica o Usuario de Windows.
5. En el cuadro Nombre de usuario, escriba un nombre para el nuevo usuario. Si ha elegido Usuario de Windows en la lista Tipo de usuario, también puede hacer clic en los puntos suspensivos (…) para abrir el cuadro de diálogo Seleccionar usuarios o grupos.
6. En el cuadro Nombre de inicio de sesión, escriba el inicio de sesión para el usuario. Como alternativa, haga clic en los puntos suspensivos (…)para abrir el cuadro de diálogo Seleccionar inicio de sesión. Si selecciona Usuario SQL con inicio de sesión o Usuario de Windows en la listaTipo de usuario, estará disponible Nombre de inicio de sesión.
7. En el cuadro Esquema predeterminado, especifique el esquema al que pertenecerán los objetos creados por este usuario. Como alternativa, haga clic en los puntos suspensivos (…) para abrir el cuadro de diálogo Seleccionar esquema. Si selecciona Usuario SQL con inicio de sesión, Usuario SQL sin inicio de sesión, o Usuario de Windows en la lista Tipo de usuario, estará disponible Esquema predeterminado.
8. En el cuadro de Nombre de certificado, escriba el certificado que se utilizará para el usuario de base de datos. Como alternativa, haga clic en los puntos suspensivos (…) para abrir el cuadro de diálogo Seleccionar certificado. Si selecciona Usuario asignado a un certificado en la lista Tipo de usuario, estará disponible Nombre de certificado.
9. En el cuadro Nombre de clave asimétrica , escriba la clave que se va a utilizar para el usuario de base de datos. Como alternativa, haga clic en los puntos suspensivos (…) para abrir el cuadro de diálogo Seleccionar clave asimétrica. Si selecciona Usuario asignado a una clave asimétrica en la lista Tipo de usuario, estará disponible Nombre de clave asimétrica.
10. Haga clic en Aceptar.
ATT: ELMAN FLORES ALCANTAR
muy buen aporte elman me parecio muy bien detallada tu informacio.
hoguer tapia- Mensajes : 11
Fecha de inscripción : 12/02/2013
Investigar acerca del uso, importancia, diseño y creación de una bitácora.
La importancia de las bitácoras es la de recuperar información ante incidentes de seguridad, detección de comportamiento inusual, información para resolver problemas, evidencia legal, es de gran ayuda en las tareas de cómputo
diseño
La estructura más ampliamente usada para grabar las modificaciones de la base de datos es la Bitácora.
Cada registro de la bitácora escribe una única escritura de base de datos y tiene lo siguiente :
1. Nombre de la transacción : Nombre de la transacción que realizó la operación de escritura.
2. Nombre del dato : El nombre único del dato escrito.
3. Valor antiguo : El valor del dato antes de la escritura.
4. Valor nuevo : El valor que tendrá el dato después de la escritura.
Existen otros registros de bitácora especiales para grabar sucesos importantes durante el proceso de transacción tales como :
< T1, inicio >
< T1, x, v1, v2 >
< T1, commit >
Es fundamental que siempre se cree un registro en la bitácora cuando se realice una escritura antes de que se modifique la base de datos.
También tenemos la posibilidad de deshacer una modificación que ya se ha escrito en la base de datos, esto se realizará usando el campo del valor antiguo de los registros de la bitácora.
Los registros de la bitácora deben residir en memoria estable como resultado el volumen de datos en la bitácora puede ser exageradamente grande.
creacion
EJEMPLO E IMPLEMENTACION DE BITACORA DE BASE DE DATOS EN LENGUAJE DE PROGRAMACION EN SQL SERVER
Bitácora de instrucciones por Javier Loria (MVP) Revisión de Carlos Sacristán.
***************
CREATE TABLE [dbo].[Bitacora] (
[BitacoraID] [int] IDENTITY (1, 1) NOT NULL ,
[EventType] [char] (14) NOT NULL ,
[Status] [int] NOT NULL ,
[EventInfo] [varchar] (1000) NOT NULL ,
[Usuario] [varchar] (20) NOT NULL ,
[Fecha] [smalldatetime] NOT NULL
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[Bitacora] WITH NOCHECK ADD
CONSTRAINT [DF_Bitacora_Usuario] DEFAULT (suser_sname()) FOR [Usuario],
CONSTRAINT [DF_Bitacora_Fecha] DEFAULT (getdate()) FOR [Fecha]
******************
Y, por otro lado, el trigger en la tabla lo refiniría de la siguiente
manera:
******************
/* Trigger de Monitoreo */
CREATE TRIGGER trig_tablabitacora
ON TABLA
FOR DELETE, INSERT, UPDATE
AS
BEGIN
DECLARE @NUMERO INT
INSERT INTO Bitacora (EventType,Status,EventInfo)
exec sp_executesql N’DBCC INPUTBUFFER( @i )’, N’@i int’,
@i=@@spid
END
atte.horfanel calles juarez
diseño
La estructura más ampliamente usada para grabar las modificaciones de la base de datos es la Bitácora.
Cada registro de la bitácora escribe una única escritura de base de datos y tiene lo siguiente :
1. Nombre de la transacción : Nombre de la transacción que realizó la operación de escritura.
2. Nombre del dato : El nombre único del dato escrito.
3. Valor antiguo : El valor del dato antes de la escritura.
4. Valor nuevo : El valor que tendrá el dato después de la escritura.
Existen otros registros de bitácora especiales para grabar sucesos importantes durante el proceso de transacción tales como :
< T1, inicio >
< T1, x, v1, v2 >
< T1, commit >
Es fundamental que siempre se cree un registro en la bitácora cuando se realice una escritura antes de que se modifique la base de datos.
También tenemos la posibilidad de deshacer una modificación que ya se ha escrito en la base de datos, esto se realizará usando el campo del valor antiguo de los registros de la bitácora.
Los registros de la bitácora deben residir en memoria estable como resultado el volumen de datos en la bitácora puede ser exageradamente grande.
creacion
EJEMPLO E IMPLEMENTACION DE BITACORA DE BASE DE DATOS EN LENGUAJE DE PROGRAMACION EN SQL SERVER
Bitácora de instrucciones por Javier Loria (MVP) Revisión de Carlos Sacristán.
***************
CREATE TABLE [dbo].[Bitacora] (
[BitacoraID] [int] IDENTITY (1, 1) NOT NULL ,
[EventType] [char] (14) NOT NULL ,
[Status] [int] NOT NULL ,
[EventInfo] [varchar] (1000) NOT NULL ,
[Usuario] [varchar] (20) NOT NULL ,
[Fecha] [smalldatetime] NOT NULL
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[Bitacora] WITH NOCHECK ADD
CONSTRAINT [DF_Bitacora_Usuario] DEFAULT (suser_sname()) FOR [Usuario],
CONSTRAINT [DF_Bitacora_Fecha] DEFAULT (getdate()) FOR [Fecha]
******************
Y, por otro lado, el trigger en la tabla lo refiniría de la siguiente
manera:
******************
/* Trigger de Monitoreo */
CREATE TRIGGER trig_tablabitacora
ON TABLA
FOR DELETE, INSERT, UPDATE
AS
BEGIN
DECLARE @NUMERO INT
INSERT INTO Bitacora (EventType,Status,EventInfo)
exec sp_executesql N’DBCC INPUTBUFFER( @i )’, N’@i int’,
@i=@@spid
END
atte.horfanel calles juarez
horfanel calles juarez- Mensajes : 11
Fecha de inscripción : 29/01/2013
Re: 3.- Administración De Bases De Datos
muy buena informacion amiga bien.alma rosa escribió:4) Investigar acerca del uso, importancia, diseño y creación de una bitácora.
USO DE UNA BITACORA:
Una bitácora puede registrar mucha información acerca de eventos relacionados con el sistema que la genera los cuales pueden ser:
- Fecha y hora.
Host origen.
Usuario.
Actividad realizada.
IMPORTANCIA DE UNA BITACORA:
La importancia de las bitácoras es la de recuperar información ante incidentes de seguridad, detección de comportamiento inusual, información para resolver problemas, evidencia legal, es de gran ayuda en las tareas de cómputo forense.
DISEÑO DEA BITACORA:
Cada registro de la bitácora escribe una única escritura de base de datos y tiene lo siguiente:
Nombre de la transacción: Nombre de la transacción que realizó la operación de escritura.
Nombre del dato: El nombre único del dato escrito.
Valor antiguo: El valor del dato antes de la escritura.
Valor nuevo: El valor que tendrá el dato después de la escritura.
CREACION DE UNA BITACORA:
CREATE DATABASE proyecto;
USE proyecto
CREATE TABLE IF NOT EXISTS `carrera` (`clave_carrera` int(11) NOT NULL, `nom_carrera` varchar(20) NOT NULL, `num_depto` int(11) NOT NULL, PRIMARY KEY (`clave_carrera`), KEY `num_depto` (`num_depto`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
La estructura de la tabla bitácora sería la siguiente:
CREATE TABLE IF NOT EXISTS `bitacora` (`id` int(11) NOT NULL AUTO_INCREMENT, `operacion` varchar(10) DEFAULT NULL, `usuario` varchar(40) DEFAULT NULL, `host` varchar(30) NOT NULL, `modificado` datetime DEFAULT NULL, `tabla` varchar(40) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
La bitácora debe registrar todos los movimientos (insertar, eliminar y modificar) que se realicen en las tablas de la base de datos. Para lograr lo anterior es necesario crear un trigger para que se ejecute después de la operación de insertar, otro para después de eliminar y el último para después de modificar para cada una de las 3 tablas de la base de datos. Los nueve triggers necesarios para que funcione la bitácora son los siguientes:
DROP TRIGGER IF EXISTS `bit_carr_ins`;
DELIMITER //
CREATE TRIGGER `bitacora` AFTER INSERT ON `carrera`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “INSERTAR”, NOW(), “CARRERA”)
//
DROP TRIGGER IF EXISTS `bit_carr_upd`;
CREATE TRIGGER `bit_carr_upd` AFTER UPDATE ON `carrera`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ACTUALIZAR”, NOW(), “CARRERA”)
//
ALMA ROSA PEÑALOZA FIERROS
horfanel calles juarez- Mensajes : 11
Fecha de inscripción : 29/01/2013
replica
CINTHIA escribió:RESPUESTA AL REACTIVO N° 1
1) Investigar conceptos básicos y tareas relacionadas con la Administración de bases de datos
DEFINICION:
El Administrador de bases de datos (DBA1 ) es el profesional de tecnologías de la información y la comunicación, responsable de los aspectos técnicos, tecnológicos, científicos, inteligencia de negocios y legales de bases de datos. Los administradores de bases de datos, implementan, dan soporte y gestionan, bases de datos corporativas. Los administradores de bases de datos, crean y configuran bases de datos relacionales. Los administradores de bases de datos, son responsables de la integridad de los datos y la disponibilidad. Los administradores de bases de datos, diseñan, despliegan y monitorizan servidores de bases de datos. Los administradores de bases de datos, diseñan la distribución de los datos y las soluciones de almacenamiento. Los DBAs, garantizan la seguridad de las bases de datos, incluyendo backups y recuperación de desastres. Los administradores de bases de datos, planean e implementan el aprovisionamiento de los datos y aplicaciones. Los administradores de bases de datos, diseñan planes de contigencia. Los administradores de bases de datos, diseñan y crean las bases de datos corporativas de soluciones avanzadas. Los DBAs, analizan y reportan datos corporativos que ayuden a la toma de decisiones en la inteligencia de negocios. Los DBAs, producen diagramas de entidades relacionales y diagramas de flujos de datos, normalización esquemática, localización lógica y física de bases de datos y parámetros de tablas.
SE DEFINEN ALGUNOS ASPECTOS QUE INCLUYE LA PROFESIÓN DEL DBA:
• Profesional de software de fabricante - Profesionales acreditados en administración de bases de datos y tecnologías específicas, desde, tecnólogos, ingenieros, post-graduados, másteres ydoctorados(en proyectos de investigación como en biotecnologías y tratamiento de datos de Genómica, por ejemplo).
• Metodología de desarrollo software - Ofreciendo y compartiendo diseños concretos sobre el trabajo total, estandarizando sus actividades, definiendo arquitecturas compartidas en un único uso desde las fases desarrollo y las implementaciones necesarias para ejercer el control de los datos garantizando e inclusive el cumplimiento de los plazos de entrega, intercambiando requerimientos de calidad en el software y cumpliendo con todos los acuerdos contractuales alineados al objetivo empresarial, por ejemplo SOA.
• Optimización de software - Realización de tareas de mejora y solución de problemas en los niveles de servicios implicados.
• Ingeniería del software y Herramientas CASE - Diseño, Planeación, implementación y gestión de arquitecturas e infraestructuras software.
• Ingeniería de requerimientos - Estudios de funcionalidad y compatibilidad en la analítica del negocio.
• Tecnologías de almacenamiento - Coordinación de Racks, plataformas hardware & software de sistemas operativos, cabinas de almacenamiento, sistemas de particionamiento, Centro de procesamiento de datos y comunicaciones.
• Desastres y recuperación - Implementación de copias de seguridad y centros de respaldo.
• Integridad de datos - Integrar proyectos compatibles de formato controlando la consistencia de los datos desde los requerimientos del desarrollo hasta la integración de los sistemas con las lineas del negocio.
• Seguridad tecnológica - Brindar las soluciones en los estudios de gestión de riesgos y estudios avanzados (Guerra informática, guerra digital o ciberguerra).
• Disponibilidad - Asegurar la continuidad de los servicios de las bases de datos "full time, 24x7, non stop database, open 369".
• Análisis de sistemas - Analizar ciclos de procesamiento y el retorno funcional de todas las capas de negocio.
• Testing - Realizar pruebas de software y/o de hardware.
• Gestión de proyectos.
Funciones del DBA
Así, el DBA, a diferencia del administrador de datos, es un profesional en procesamiento de datos. La tarea del DBA es crear la base de datos en sí y poner en vigor los controles técnicos necesarios para apoyar las políticas dictadas por el administrador de datos. El DBA se encarga también de garantizar el funcionamiento adecuado del sistema y de proporcionar otros servicios de índole técnica relacionados. El DBA cuenta por lo regular con un grupo de programadores de sistemas y otros asistentes técnicos.
La responsabilidad general del DBA es facilitar el desarrollo y el uso de la Base de Datos dentro de las guías de acción definidas por la administración de los datos.
El DBA es responsable primordialmente de:
o Administrar la estructura de la Base de Datos
o Administrar la actividad de los datos
o Administrar el Sistema Manejador de Base de Datos
o Establecer el Diccionario de Datos
o Asegurar la confiabilidad de la Base de Datos
o Confirmar la seguridad de la Base de Datos
Espero sea de ayuda esta informacion para todos ustedes ya que trate de exponer lo principal.
ATTE: CINTHIA CADENA PEREZ
muy bien compañera tu informacion es muy concreta
tomas lopez perez- Mensajes : 22
Fecha de inscripción : 11/02/2013
Re: 3.- Administración De Bases De Datos
hoguer tapia escribió:un abministrador de base de datos es el que se encarga de mantener la base de datos de una compañia en perfecto estado.
La información es uno los activos más valiosos de la empresa, es indispensable contar con una persona -el administrador de datos- que conozca la información, y las necesidades de la empresa en este aspecto, en un nivel gerencial superior. Así la labor del administradorde datos es decidir en primer término cuáles datos deben almacenarse en la base de datos, y establecer políticas para mantener y manejar los datos uan vez almacenados. El administrador de datos es por lo general, un gerente, no un técnico. El técnico responsable de poner en práctica las decisiones del administrador de datos es el administrador de bases de datos(DBA, database administrator).
El alcance de la actividad de la Administración de Datos es la organización completa (empresa, institución u otro organismo), mientras que el alcance de la Administración de Bases de Datos queda restringido a una Base de Datos en particular y a los sistemas que los procesan. La Administración de la Base de Datos opera dentro de un marco proporcionado por la Administración de Datos facilitándose de esta manera el desarrollo y el uso de una Base de Datos y sus aplicaciones. Las siglas DBA suelen utilizarse para designar tanto la función Administración de Base de Datos como al titulo del puesto administrador de Base de Datos.
En los distintos niveles y aplicaciones de Base de Datos existe la función DBA, aunque varia en complejidad. Esta es más sencilla cuando se trata de una Base de Datos Personal que cuando se refiere a una Base de Datos de grupos de trabajo, y esta a su vez es más sencilla que en una Base de Datos Organizacional. En una Base de Datos Personal comúnmente el mismo usuario es el Administrador de la Base de Datos; las Bases de Datos de grupos de trabajo requieren de una o dos personas que normalmente no se dedican a esta función de tiempo completo puesto que tienen otras responsabilidades dentro o fuera de la organización. En las Bases de Datos Organizacionales, que comúnmente permiten el acceso a decenas e incluso centenas de usuarios, se requiere de un administrador de Base de Datos de tiempo completo; lo anterior debido al alto volumen de procesos que deben desarrollarse, controlarse y supervisarse.
Un Administrador de Base de Datos de tiempo completo normalmente tiene aptitudes técnicas para el manejo del sistema en cuestión a demás, son cualidades deseables nociones de administración, manejo de personal e incluso un cierto grado de diplomacia. La característica más importante que debe poseer es un conocimiento profundo de las políticas y normas de la empresa así como el criterio de la empresa para aplicarlas en un momento dado.
ese compañero hoguer... usted muy bien en su informacion solo que hay q darle un poco de formato a la informacion para que se haga destacar
tomas lopez perez- Mensajes : 22
Fecha de inscripción : 11/02/2013
posible respuesta del reactivo 1
Entre las principales tareas de los SGBD tenemos:
El SGBD oculta al usuario los detalles del almacenamiento de la información,
mostrando una visión ‘abstracta’ de la información.
El SGBD garantiza la independencia lógica y física de los datos.
El SGBD permite integrar distintos tipos de información y permite compartirlos
entre distintas aplicaciones y usuarios.
El SGBD se encarga de garantizar la seguridad de la información controlando el
acceso a la misma.
El SGBD controla la integridad de la información comprobando la consistencia de
la misma cuando se realizan las operaciones de inserción, modificación o borrado.
El SGBD organiza el acceso concurrente a la información por parte de distintas
aplicaciones y usuarios, eliminando las posibilidad de interferencias o conflictos
entre diferentes acciones.
El SGBD oculta al usuario los detalles del almacenamiento de la información,
mostrando una visión ‘abstracta’ de la información.
El SGBD garantiza la independencia lógica y física de los datos.
El SGBD permite integrar distintos tipos de información y permite compartirlos
entre distintas aplicaciones y usuarios.
El SGBD se encarga de garantizar la seguridad de la información controlando el
acceso a la misma.
El SGBD controla la integridad de la información comprobando la consistencia de
la misma cuando se realizan las operaciones de inserción, modificación o borrado.
El SGBD organiza el acceso concurrente a la información por parte de distintas
aplicaciones y usuarios, eliminando las posibilidad de interferencias o conflictos
entre diferentes acciones.
leyder- Invitado
posible respuesta al reactivo 2
La palabra "Backup" significa subir respaldo, siendo común el uso de este término dentro del ámbito informático. El respaldo de información es la copia de los datos importantes de un dispositivo primario en uno ó varios dispositivos secundarios, ello para que en caso de que el primer dispositivo sufra una avería electromecánica ó un error en su estructura lógica, sea posible contar con la mayor parte de la información necesaria para continuar con las actividades rutinarias y evitar pérdida generalizada de datos.
Importancia del respaldo
La importancia radica en que todos los dispositivos de almacenamiento masivo de información tienen la posibilidad de fallar, por lo tanto es necesario que se cuente con una copia de seguridad de la información importante, ya que la probabilidad de que 2 dispositivos fallen de manera simultánea es muy difícil.
Métodos para el respaldo de información
• Manual: el usuario copia directamente los archivos a respaldar por medio de comandos ó por medio del explorador de archivos de su respectivo sistema operativo.
Otra forma de realizar las copias de seguridad es por medio de una aplicación que permita la creación de la copia al momento y con los datos existentes hasta ese momento, regularmente los datos se almacenan en forma de archivos comprimidos para ahorrar espacio. Ejemplo Microsoft® Copia de Seguridad.
• Automático: por medio de una aplicación especializada, el usuario programa los archivos a guardar y este respaldo se va actualizando en tiempo real (simultáneamente), conforme se van registrando cambios en los archivos. Ejemplo Computer Associates® Survive IT.
Conforme aumenta la capacidad de almacenamiento de los dispositivos de información, también los usuarios tienden a necesitar guardar mayores cantidades de datos (videos, música, archivos de Office, imágenes, etc.). En el caso de las empresas que manejan grandes volúmenes de información, siempre ha sido necesidad el respaldo (bases de datos de sus empleados, reportes de ventas, clientes de correo electrónico, etc.), lo que para ellos es crucial. Un problema del respaldo, es que si no se tiene cuidado con la copia de seguridad, este puede ser utilizado por otras personas para crear nuevas copias y así hacer mal uso de la información.
Entre los dispositivos y servicios para respaldo de información están los siguientes:
Cintas de almacenamiento: son los dispositivos por excelencia que mas se habían utilizado, debido a su bajo costo y gran capacidad de almacenamiento, aunque su lentitud era la desventaja. Desde el dispositivo de almacenamiento principal, se copian los archivos hacia la unidad que escribe/lee las cintas.
El explorador no admite los marcos flotantes o no está configurado actualmente para mostrarlos.
Servidores Web: actualmente por medio de Internet, es posible subir los archivos a respaldar al servidor de algún proveedor, esto se hace por medio de la red. Tiene la desventaja de que la conexión tiene que ser muy veloz y segura, para evitar que los datos sean interceptados mientras llegan al servidor.
Discos duros: actualmente estos son los que dominan el mercado, ya que cuentan con una muy alta capacidad para guardar datos, tanto en empresas como en el entorno doméstico ya que tiene una alta velocidad de lectura/escritura. Simplemente se copian los archivos del dispositivo primario al disco duro.
Discos espejo de servidores: se trata de discos duros que se van autocopiando mientras se trabaja de manera normal, conforme el disco duro principal de una computadora va modificando su información, una computadora anexa va clonando las acciones de este. Esto se logra mediante una aplicación especial instalada en ambas computadoras, así si el principal falla, se autoactiva el otro como primario mientras se resuelve la avería del sistema.
Importancia del respaldo
La importancia radica en que todos los dispositivos de almacenamiento masivo de información tienen la posibilidad de fallar, por lo tanto es necesario que se cuente con una copia de seguridad de la información importante, ya que la probabilidad de que 2 dispositivos fallen de manera simultánea es muy difícil.
Métodos para el respaldo de información
• Manual: el usuario copia directamente los archivos a respaldar por medio de comandos ó por medio del explorador de archivos de su respectivo sistema operativo.
Otra forma de realizar las copias de seguridad es por medio de una aplicación que permita la creación de la copia al momento y con los datos existentes hasta ese momento, regularmente los datos se almacenan en forma de archivos comprimidos para ahorrar espacio. Ejemplo Microsoft® Copia de Seguridad.
• Automático: por medio de una aplicación especializada, el usuario programa los archivos a guardar y este respaldo se va actualizando en tiempo real (simultáneamente), conforme se van registrando cambios en los archivos. Ejemplo Computer Associates® Survive IT.
Conforme aumenta la capacidad de almacenamiento de los dispositivos de información, también los usuarios tienden a necesitar guardar mayores cantidades de datos (videos, música, archivos de Office, imágenes, etc.). En el caso de las empresas que manejan grandes volúmenes de información, siempre ha sido necesidad el respaldo (bases de datos de sus empleados, reportes de ventas, clientes de correo electrónico, etc.), lo que para ellos es crucial. Un problema del respaldo, es que si no se tiene cuidado con la copia de seguridad, este puede ser utilizado por otras personas para crear nuevas copias y así hacer mal uso de la información.
Entre los dispositivos y servicios para respaldo de información están los siguientes:
Cintas de almacenamiento: son los dispositivos por excelencia que mas se habían utilizado, debido a su bajo costo y gran capacidad de almacenamiento, aunque su lentitud era la desventaja. Desde el dispositivo de almacenamiento principal, se copian los archivos hacia la unidad que escribe/lee las cintas.
El explorador no admite los marcos flotantes o no está configurado actualmente para mostrarlos.
Servidores Web: actualmente por medio de Internet, es posible subir los archivos a respaldar al servidor de algún proveedor, esto se hace por medio de la red. Tiene la desventaja de que la conexión tiene que ser muy veloz y segura, para evitar que los datos sean interceptados mientras llegan al servidor.
Discos duros: actualmente estos son los que dominan el mercado, ya que cuentan con una muy alta capacidad para guardar datos, tanto en empresas como en el entorno doméstico ya que tiene una alta velocidad de lectura/escritura. Simplemente se copian los archivos del dispositivo primario al disco duro.
Discos espejo de servidores: se trata de discos duros que se van autocopiando mientras se trabaja de manera normal, conforme el disco duro principal de una computadora va modificando su información, una computadora anexa va clonando las acciones de este. Esto se logra mediante una aplicación especial instalada en ambas computadoras, así si el principal falla, se autoactiva el otro como primario mientras se resuelve la avería del sistema.
leyder- Invitado
Re: 3.- Administración De Bases De Datos
ALFREDO92 escribió:definicion de bitacora
La Bitácora es un conjunto de entradas en orden cronológico inverso, es decir, la entrada más reciente aparece la primera en la lista. Las entradas pueden ser de cualquier tema, dependiendo de la web donde se incluyan. Es frecuente referirse a las bitácoras como Weblog o, para abreviar, blog.
Uso de una bitácora
Sirve para guardar periódicamente actualizado que recopila cronológicamente textos o artículos de uno o varios usuarios como pueden ser estudiantes, profesores, funcionarios, etc., apareciendo primero el más reciente, donde el autor conserva siempre la libertad de dejar publicado lo que crea pertinente.
importancia de bitacora
La importancia de las bitácoras es la de recuperar información ante incidentes de seguridad, detección de comportamiento inusual, información para resolver problemas, evidencia legal, es de gran ayuda en las tareas de cómputo forense.
creacion de una bitacora
CREATE DATABASE proyecto;
USE proyecto
CREATE TABLE IF NOT EXISTS `carrera` (`clave_carrera` int(11) NOT NULL, `nom_carrera` varchar(20) NOT NULL, `num_depto` int(11) NOT NULL, PRIMARY KEY (`clave_carrera`), KEY `num_depto` (`num_depto`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `departamento` ( `num_departamento` int(11) NOT NULL,`nombre_dept` varchar(20) NOT NULL, `jefe_num_tarjet` int(11) NOT NULL, PRIMARY KEY (`num_departamento`), KEY `jefe_num_tarjet` (`jefe_num_tarjet`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `maestros` (`num_tarjeta` int(11) NOT NULL DEFAULT ’0′,`nombre` varchar(50) DEFAULT NULL, PRIMARY KEY (`num_tarjeta`)) ENGINE=InnoDB DEFAULT CHARSET=latin1;
La estructura de la tabla bitácora sería la siguiente:
CREATE TABLE IF NOT EXISTS `bitacora` (`id` int(11) NOT NULL AUTO_INCREMENT, `operacion` varchar(10) DEFAULT NULL, `usuario` varchar(40) DEFAULT NULL, `host` varchar(30) NOT NULL, `modificado` datetime DEFAULT NULL, `tabla` varchar(40) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
La bitácora debe registrar todos los movimientos (insertar, eliminar y modificar) que se realicen en las tablas de la base de datos. Para lograr lo anterior es necesario crear un trigger para que se ejecute después de la operación de insertar, otro para después de eliminar y el último para después de modificar para cada una de las 3 tablas de la base de datos. Los nueve triggers necesarios para que funcione la bitácora son los siguientes:
DROP TRIGGER IF EXISTS `bit_carr_ins`;
DELIMITER //
CREATE TRIGGER `bitacora` AFTER INSERT ON `carrera`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “INSERTAR”, NOW(), “CARRERA”)
//
DROP TRIGGER IF EXISTS `bit_carr_upd`;
CREATE TRIGGER `bit_carr_upd` AFTER UPDATE ON `carrera`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ACTUALIZAR”, NOW(), “CARRERA”)
//
DROP TRIGGER IF EXISTS `bit_carr_del`;
CREATE TRIGGER `bit_carr_del` AFTER DELETE ON `carrera`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ELIMINAR”, NOW(), “CARRERA”)
//
DROP TRIGGER IF EXISTS `bit_depto_ins`;
CREATE TRIGGER `bit_depto_ins` AFTER INSERT ON `departamento`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “INSERTAR”, NOW(), “DEPARTAMENTO”)
//
DROP TRIGGER IF EXISTS `bit_depto_upd`;
CREATE TRIGGER `bit_depto_upd` AFTER UPDATE ON `departamento`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ACTUALIZAR”, NOW(), “DEPARTAMENTO”)
//
DROP TRIGGER IF EXISTS `bit_depto_del`;
CREATE TRIGGER `bit_depto_del` AFTER DELETE ON `departamento`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ELIMINAR”, NOW(), “DEPARTAMENTO”)
//
DROP TRIGGER IF EXISTS `bit_mae_ins`;
CREATE TRIGGER `bit_mae_ins` AFTER INSERT ON `maestros`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “INSERTAR”, NOW(), “MAESTROS”)
//
DROP TRIGGER IF EXISTS `bit_mae_upd`;
CREATE TRIGGER `bit_mae_upd` AFTER UPDATE ON `maestros`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ACTUALIZAR”, NOW(), “MAESTROS”)
//
DROP TRIGGER IF EXISTS `bit_mae_del`;
CREATE TRIGGER `bit_mae_del` AFTER DELETE ON `maestros`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ELIMINAR”, NOW(), “MAESTROS”)
atte: alfredo mendoza ocampo
Hola compañero solo quería felicitar por tu gran trabajo en la búsqueda de conocimientos, sigue así, felicidades. aunque pusiste muchos ejemplos y no muestras las tablas y ni nada eso, fue bueno.
Isidro Antonio Solano- Mensajes : 36
Fecha de inscripción : 06/02/2013
Edad : 32
Re: 3.- Administración De Bases De Datos
Buen trabajo Thanahi, una buena fuente información. y se expresa lo que se pide en el reactivo.thanahi escribió:4) Investigar acerca del uso, importancia, diseño y creación de una bitácora.
Las bitácoras modelan y registran los procesos que se efectúan dentro de la base de datos. Se logra por medio de almacenar los datos asociados con la ejecución de los comandos del SQL de la base de datos (altas bajas cambios, pérdidas). Contienen el QUE, QUIEN, COMO, DONDE y CUANDO de la BD.
La bitácora permite guardar las transacciones realizadas sobre una base de datos en específico, de tal manera que estas transacciones puedan ser auditadas y analizadas posteriormente. También puede ser una herramienta que permite registrar, analizar, detectar y notificar eventos que sucedan en cualquier sistema de información utilizado en las organizaciones. La estructura más ampliamente usada para grabar las modificaciones de la base de datos.
BENEFICIOS
•No se requiere hacer cambios en los sistemas de producción para la implementación de la bitácora.
•A través de la parametrización se generan las pantallas de consulta y reportes sin necesidad de programar.
•Acceso a la bitácora a través de una aplicación WEB.
•Control de Acceso a la información de la bitácora a través de Roles.
•Se puede implementar en los sistemas de información que utilicen las principales bases de datos del mercado: ORACLE, SQL SERVER, INFORMIX, SYBASE.
•Permite hacer el seguimiento de todos los cambios que ha tenido un registro.
•Registra información acerca de eventos relacionados con el sistema que la genera.
•Reduce riesgos operacionales por cambios no autorizados.
•Se envían alertas cuando se realizan cambios a la configuración del sistema, permitiendo corregir a tiempo malas configuraciones.
•Permite dar el seguimiento a cada una de las alertas generadas de acuerdo a los parámetros establecidos por el usuario.
Tipos de bitácora.
Bitácora de Usuarios: Usuario, Password, departamento, sistema, archivos, terminal, permisos
Bitácora de Archivos: Password, Dueño, sistema que los usan, dominios, formatos, ubicación, usuarios
Catálogo de Sistemas: Departamento, sistema, archivos, terminal, programas, responsable
Bitácora de Errores: Tipo, programa, descripción, hora, lugar, usuario, fecha, archivo, sistema Bitácora de Uso: Fecha, Usuario, Sistema, Permiso, Terminal, Registro, tipo de acceso Imagen Vieja, Imagen Nueva
Manuales del Sistema: Sistema, departamento, archivos, procedimiento de uso, nivel de sistematización/automatización
Una bitácora puede registrar mucha información acerca de eventos relacionados con el sistema que la genera los cuales pueden ser:
• Fecha y hora.
• Direcciones IP origen y destino.
• Dirección IP que genera la bitácora.
• Usuarios.
• Errores.
La importancia de las bitácoras es la de recuperar información ante incidentes de seguridad, detección de comportamiento inusual, información para resolver problemas, evidencia legal, es de gran ayuda en las tareas de cómputo forense.
DISEÑO DE LA BITÁCORA:
La estructura más ampliamente usada para grabar las modificaciones de la base de datos es la Bitácora.
Cada registro de la bitácora escribe una única escritura de base de datos y tiene lo siguiente :
1.Nombre de la transacción: Nombre de la transacción que realizó la operación de escritura.
2.Nombre del dato: El nombre único del dato escrito.
3.Valor antiguo: El valor del dato antes de la escritura.
4.Valor nuevo: El valor que tendrá el dato después de la escritura.
Creación de una bitácora:
Un ejemplo de una bitácora desarrollada para la siguiente base de datos de MySQL, llamada proyecto, que tiene las tablas carrera, departamento y maestros.
CREATE DATABASE proyecto;
USE proyecto
CREATE TABLE IF NOT EXISTS `carrera` (`clave_carrera` int(11) NOT NULL, `nom_carrera` varchar(20) NOT NULL, `num_depto` int(11) NOT NULL, PRIMARY KEY (`clave_carrera`), KEY `num_depto` (`num_depto`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `departamento` ( `num_departamento` int(11) NOT NULL,`nombre_dept` varchar(20) NOT NULL, `jefe_num_tarjet` int(11) NOT NULL, PRIMARY KEY (`num_departamento`), KEY `jefe_num_tarjet` (`jefe_num_tarjet`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
La estructura de la tabla bitácora sería la siguiente:
CREATE TABLE IF NOT EXISTS `bitacora` (`id` int(11) NOT NULL AUTO_INCREMENT, `operacion` varchar(10) DEFAULT NULL, `usuario` varchar(40) DEFAULT NULL, `host` varchar(30) NOT NULL, `modificado` datetime DEFAULT NULL, `tabla` varchar(40) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
La bitácora debe registrar todos los movimientos (insertar, eliminar y modificar) que se realicen en las tablas de la base de datos. Para lograr lo anterior es necesario crear un trigger para que se ejecute después de la operación de insertar, otro para después de eliminar y el último para después de modificar para cada una de las 3 tablas de la base de datos. Los nueve triggers necesarios para que funcione la bitácora son los siguientes:
DROP TRIGGER IF EXISTS `bit_carr_ins`;
DELIMITER //
CREATE TRIGGER `bitacora` AFTER INSERT ON `carrera`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “INSERTAR”, NOW(), “CARRERA”)
DROP TRIGGER IF EXISTS `bit_carr_upd`;
CREATE TRIGGER `bit_carr_upd` AFTER UPDATE ON `carrera`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ACTUALIZAR”, NOW(), “CARRERA”)
DROP TRIGGER IF EXISTS `bit_carr_del`;
CREATE TRIGGER `bit_carr_del` AFTER DELETE ON `carrera`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ELIMINAR”, NOW(), “CARRERA”)
DROP TRIGGER IF EXISTS `bit_depto_ins`;
CREATE TRIGGER `bit_depto_ins` AFTER INSERT ON `departamento`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “INSERTAR”, NOW(), “DEPARTAMENTO”)
DROP TRIGGER IF EXISTS `bit_depto_upd`;
CREATE TRIGGER `bit_depto_upd` AFTER UPDATE ON `departamento`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ACTUALIZAR”, NOW(), “DEPARTAMENTO”)
DROP TRIGGER IF EXISTS `bit_depto_del`;
CREATE TRIGGER `bit_depto_del` AFTER DELETE ON `departamento`
FOR EACH ROW INSERT INTO bitacora(host, usuario, operacion, modificado, tabla) VALUES (SUBSTRING(USER(), (INSTR(USER(),’@')+1)), SUBSTRING(USER(),1,(instr(user(),’@')-1)), “ELIMINAR”, NOW(), “DEPARTAMENTO”)
EJEMPLO EN POSTGRESQL
Table: tbl_audit
DROP TABLE tbl_audit;
CREATE TABLE tbl_audit
(
pk_audit serial NOT NULL,
"TableName" character(45) NOT NULL,
"Operation" character(1) NOT NULL,
"OldValue" text,
"NewValue" text,
"UpdateDate" timestamp without time zone NOT NULL,
"UserName" character(45) NOT NULL,
"IP" inet,
CONSTRAINT pk_audit PRIMARY KEY (pk_audit)
)
WITH ( OIDS=FALSE );
ALTER TABLE tbl_audit OWNER TO sisap;
Function: fn_log_audit()
DROP FUNCTION fn_log_audit();
CREATE OR REPLACE FUNCTION fn_log_audit()
RETURNS trigger AS
$BODY$
BEGIN
IF (TG_OP = 'DELETE') THEN
INSERT INTO tbl_audit ("TableName", "Operation", "OldValue", "NewValue", "UpdateDate", "UserName","IP") VALUES (TG_TABLE_NAME, 'D', OLD, NULL, now(), USER,inet_client_addr());
RETURN OLD;
ELSIF (TG_OP = 'UPDATE') THEN
INSERT INTO tbl_audit ("TableName", "Operation", "OldValue", "NewValue", "UpdateDate", "UserName","IP") VALUES (TG_TABLE_NAME, 'U', OLD, NEW, now(), USER,inet_client_addr());
RETURN NEW;
ELSIF (TG_OP = 'INSERT') THEN
INSERT INTO tbl_audit ("TableName", "Operation", "OldValue", "NewValue", "UpdateDate", "UserName","IP") VALUES (TG_TABLE_NAME, 'I', NULL, NEW, now(), USER,inet_client_addr());
RETURN NEW;
END IF;
RETURN NULL;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
ALTER FUNCTION fn_log_audit() OWNER TO sisap;
CREATE TRIGGER tbl_atributos_tg_audit
AFTER INSERT OR UPDATE OR DELETE
ON cesta_ubicaciones
FOR EACH ROW
EXECUTE PROCEDURE fn_log_audit();
Fuentes de información:
http://erick-pena-talamantes.blogspot.mx/2013/03/bitacoras.html
http://es.slideshare.net/LaloOsorio1/bitcora-de-base-de-datos
http://foros.cristalab.com/crear-bitacora-en-base-de-datos-mysql-t63012/
http://ylez.wordpress.com/2010/03/20/bitacoras-de-bases-de-datos/
Atentamente: THANAHI MEDRANO RUIZ
Isidro Antonio Solano- Mensajes : 36
Fecha de inscripción : 06/02/2013
Edad : 32
Replica del reactivo #4
tomas lopez perez escribió:BITACORAPermite guardar las transacciones realizadas
sobre una base de datos en especifico,
de tal manera que estas transacciones
puedan ser auditadas y analizadas posteriormente.
Pueden obtenerse datos específicos de la
transacción como son la Operación que
se realizo, el Usuario de BD y Windows,
Fecha, Maquina y Programa.
BENEFICIOS· No se requiere hacer cambios en los sistemas
de producción para la implementación de la
bitácora.
· A través de la parametrización se generan las
pantallas de consulta y reportes sin necesidad
de programar.
· Acceso a la bitácora a través de una aplicación
WEB.
· Control de Acceso a la información de la bitácora
a través de Roles.
· Se puede implementar en los sistemas de información
que utilicen las principales bases de
datos del mercado: ORACLE, SQL SERVER,
INFORMIX, SYBASE.
· Permite hacer el seguimiento de todos los
cambios que ha tenido un registro.
· Registra información acerca de eventos relacionados
con el sistema que la genara.
· Reduce riesgos operacionales por cambios
no autorizados.
· Se envían alertas cuando se realizan
cambios a la configuración del sistema,
permitiendo corregir a tiempo malas
configuraciones.
· Permite dar el seguimiento a cada una
de las alertas generadas de acuerdo a
los parámetros establecidos por el
usuario.
Hola compañero tu aportación al foro es muy buena.
Atte: THANAHI MEDRANO RUIZ
thanahi- Mensajes : 52
Fecha de inscripción : 30/01/2013
Replica del reactivo #1
CINTHIA escribió:RESPUESTA AL REACTIVO N° 1
1) Investigar conceptos básicos y tareas relacionadas con la Administración de bases de datos
DEFINICION:
El Administrador de bases de datos (DBA1 ) es el profesional de tecnologías de la información y la comunicación, responsable de los aspectos técnicos, tecnológicos, científicos, inteligencia de negocios y legales de bases de datos. Los administradores de bases de datos, implementan, dan soporte y gestionan, bases de datos corporativas. Los administradores de bases de datos, crean y configuran bases de datos relacionales. Los administradores de bases de datos, son responsables de la integridad de los datos y la disponibilidad. Los administradores de bases de datos, diseñan, despliegan y monitorizan servidores de bases de datos. Los administradores de bases de datos, diseñan la distribución de los datos y las soluciones de almacenamiento. Los DBAs, garantizan la seguridad de las bases de datos, incluyendo backups y recuperación de desastres. Los administradores de bases de datos, planean e implementan el aprovisionamiento de los datos y aplicaciones. Los administradores de bases de datos, diseñan planes de contigencia. Los administradores de bases de datos, diseñan y crean las bases de datos corporativas de soluciones avanzadas. Los DBAs, analizan y reportan datos corporativos que ayuden a la toma de decisiones en la inteligencia de negocios. Los DBAs, producen diagramas de entidades relacionales y diagramas de flujos de datos, normalización esquemática, localización lógica y física de bases de datos y parámetros de tablas.
SE DEFINEN ALGUNOS ASPECTOS QUE INCLUYE LA PROFESIÓN DEL DBA:
• Profesional de software de fabricante - Profesionales acreditados en administración de bases de datos y tecnologías específicas, desde, tecnólogos, ingenieros, post-graduados, másteres ydoctorados(en proyectos de investigación como en biotecnologías y tratamiento de datos de Genómica, por ejemplo).
• Metodología de desarrollo software - Ofreciendo y compartiendo diseños concretos sobre el trabajo total, estandarizando sus actividades, definiendo arquitecturas compartidas en un único uso desde las fases desarrollo y las implementaciones necesarias para ejercer el control de los datos garantizando e inclusive el cumplimiento de los plazos de entrega, intercambiando requerimientos de calidad en el software y cumpliendo con todos los acuerdos contractuales alineados al objetivo empresarial, por ejemplo SOA.
• Optimización de software - Realización de tareas de mejora y solución de problemas en los niveles de servicios implicados.
• Ingeniería del software y Herramientas CASE - Diseño, Planeación, implementación y gestión de arquitecturas e infraestructuras software.
• Ingeniería de requerimientos - Estudios de funcionalidad y compatibilidad en la analítica del negocio.
• Tecnologías de almacenamiento - Coordinación de Racks, plataformas hardware & software de sistemas operativos, cabinas de almacenamiento, sistemas de particionamiento, Centro de procesamiento de datos y comunicaciones.
• Desastres y recuperación - Implementación de copias de seguridad y centros de respaldo.
• Integridad de datos - Integrar proyectos compatibles de formato controlando la consistencia de los datos desde los requerimientos del desarrollo hasta la integración de los sistemas con las lineas del negocio.
• Seguridad tecnológica - Brindar las soluciones en los estudios de gestión de riesgos y estudios avanzados (Guerra informática, guerra digital o ciberguerra).
• Disponibilidad - Asegurar la continuidad de los servicios de las bases de datos "full time, 24x7, non stop database, open 369".
• Análisis de sistemas - Analizar ciclos de procesamiento y el retorno funcional de todas las capas de negocio.
• Testing - Realizar pruebas de software y/o de hardware.
• Gestión de proyectos.
Funciones del DBA
Así, el DBA, a diferencia del administrador de datos, es un profesional en procesamiento de datos. La tarea del DBA es crear la base de datos en sí y poner en vigor los controles técnicos necesarios para apoyar las políticas dictadas por el administrador de datos. El DBA se encarga también de garantizar el funcionamiento adecuado del sistema y de proporcionar otros servicios de índole técnica relacionados. El DBA cuenta por lo regular con un grupo de programadores de sistemas y otros asistentes técnicos.
La responsabilidad general del DBA es facilitar el desarrollo y el uso de la Base de Datos dentro de las guías de acción definidas por la administración de los datos.
El DBA es responsable primordialmente de:
o Administrar la estructura de la Base de Datos
o Administrar la actividad de los datos
o Administrar el Sistema Manejador de Base de Datos
o Establecer el Diccionario de Datos
o Asegurar la confiabilidad de la Base de Datos
o Confirmar la seguridad de la Base de Datos
Espero sea de ayuda esta informacion para todos ustedes ya que trate de exponer lo principal.
ATTE: CINTHIA CADENA PEREZ
Hola amiga tu aportación al foro es excelente explicas de manera breve los conceptos mas relevantes y las actividades mas importantes del administrador de bases de datos. Sigue así amiga.
ATTE: THANAHI MEDRANO RUIZ
thanahi- Mensajes : 52
Fecha de inscripción : 30/01/2013
Replica del reactivo #5
AngelesAT escribió:Un procedimiento almacenado: es un programa (o procedimiento) el cual es almacenado físicamente en una base de datos. Su implementación varía de un gestor de bases de datos a otro. La ventaja de un procedimiento almacenado es que al ser ejecutado, en respuesta a una petición de usuario, es ejecutado directamente en el motor de bases de datos, el cual usualmente corre en un servidor separado. Como tal, posee acceso directo a los datos que necesita manipular y sólo necesita enviar sus resultados de regreso al usuario, deshaciéndose de la sobrecarga resultante de comunicar grandes cantidades de datos salientes y entrantes.
Usos típicos para procedimientos almacenados incluyen la validación de datos siendo integrados a la estructura de base de datos (los procedimientos almacenados utilizados para este propósito a menudo son llamados disparadores; triggers en inglés), o encapsular un proceso grande y complejo. El último ejemplo generalmente ejecutará más rápido como un procedimiento almacenado que de haber sido implementado como, por ejemplo, un programa corriendo en el sistema cliente y comunicándose con la base de datos mediante el envío de consultas SQL y recibiendo sus resultados.
Un trigger (o disparador) en una Base de datos , es un procedimiento que se ejecuta cuando se cumple una condición establecida al realizar una operación. Dependiendo de la base de datos, los triggers pueden ser de inserción (INSERT), actualización (UPDATE) o borrado (DELETE). Algunas bases de datos pueden ejecutar triggers al crear, borrar o editar usuarios, tablas, bases de datos u otros objetos.
Usos
Son usados para mejorar la administración de la Base de datos, sin necesidad de contar con que el usuario ejecute la sentencia de SQL.
Además, pueden generar valores de columnas, previene errores de datos, sincroniza tablas, modifica valores de una vista, etc. Permite implementar programas basados en paradigma lógico (sistemas expertos, deducción)
Existen dos tipos de disparadores que se clasifican según la cantidad de ejecuciones a realizar:
" Row Triggers (o Disparadores de fila): son aquellas que se ejecutaran n-veces si se llama n-veces
desde la tabla asociada al trigger
" Statement Triggers (o Disparadores de secuencia): son aquellos que sin importar la cantidad de
veces que se cumpla con la condición, su ejecución es única.
Pueden ser de sesión y almacenados; pero no son de fiar[cita requerida].
Efectos y características
" No aceptan parámetros o argumentos (pero podrían almacenar los datos afectados en tablas
temporales)
" No pueden ejecutar las operaciones COMMIT o ROLLBACK por que estas son parte de la sentencia
SQL del disparador (únicamente a través de transacciones autónomas)
" Pueden causar errores de mutaciones en las tablas, si se han escrito de manera deficiente
Una transacción es un conjunto de operaciones T-SQL que funcionan como un solo bloque de instrucciones, esto significa que si ocurre un fallo durante la ejecución de alguna instrucción del bloque todas las demás fallaran, lo que implica que nada más se ejecutara y la transacción tendrá que deshacer todo lo que había ejecutado hasta donde ocurrió el fallo, a eso se la llama reversión de la transacción y se ejecuta con un ROLLBACK, en caso de una ejecución correcta se tendrá que grabar la transacción con COMMIT, el objetivo de las transacciones es garantizar que los datos que se inserten, actualicen o eliminen queden CONSISTENTES en la base de datos.
REFERENCIAS: https://elenahzz.files.wordpress.com/2012/03/triggers-y-procedimiento-almacenado.pdf
http://sqlpsykrest.wordpress.com/2009/01/22/sql-procedimiento-almacenado-para-insertar-datos-con-transaccin-y-control-de-errores/
ATENTAMENTE: MA. DE LOS ANGELES ALONSO TAPIA
Excelente aporte amiga explicas de manera clara y breve lo que es una transacción me parecio que explicaste lo mas importante que debemos saber sobre dicho tema.
ATTE: THANAHI MEDRANO RUIZ
thanahi- Mensajes : 52
Fecha de inscripción : 30/01/2013
Replica del reactivo #3
alma rosa escribió:3) Investigar la definición del esquema de seguridad, los conceptos de seguridad y recuperación y la importancia de la creación de usuarios de una base de datos
La Definición de esquema de seguridad, hace referencia a lo siguiente:
Prevenir accesos no autorizados a la base de datos.
Prevenir accesos no autorizados a objetos (tablas, vistas, índices, procedimientos, etc) pertenecientes a un usuario.
El objetivo de seguridad es:
Proteger la Base de Datos contra accesos no autorizados. Se llama también privacidad.
En relación al SGBD, debe mantener información de los usuarios, su tipo y los accesos y operaciones permitidas a éstos.
La recuperación de información es:
El siguiente paso a la determinación de las necesidades de información. Se puede recuperar a través de diferentes herramientas: bases de datos, Internet, tesauros, ontologías, mapas... Conocer y manejar estas herramientas contribuye a una recuperación de calidad
La importancia de la creación de usuarios de una base de datos, es la siguiente:
El usuario de la base de datos es la identidad del inicio de sesión cuando está conectado a una base de datos. El usuario de la base de datos puede utilizar el mismo nombre que el inicio de sesión, pero no es necesario. En este tema se supone que ya existe un inicio de sesión en SQL Server.
ALMA ROSA PEÑALOZA FIERROS
Excelente aporte al foro compañera explicas de manera clara y breve sobre los mas relevante de los esquemas de seguridad.
Atte: THANAHI MEDRANO RUIZ
thanahi- Mensajes : 52
Fecha de inscripción : 30/01/2013
Reactivo No. 4) Investigar acerca del uso, importancia, diseño y creación de una bitácora.
4) Investigar acerca del uso, importancia, diseño y creación de una bitácora.
Con el crecimiento de Internet, y el desarrollo de sistemas de información bajo la arquitectura Cliente/Servidor, los sistemas de cómputo ,en general, están expuestos a múltiples amenazas, vulnerabilidades y ataques cada vez más complejos. Por lo tanto, es importante que las organizaciones implementen bitácoras (o archivos logs) para almacenar los sucesos que ocurren en el sistema. La información contenida en una bitácora es muy importante y útil cuando ocurre un incidente de seguridad o cuando se realiza una auditoría de sistemas.
Una bitácora puede registrar mucha información acerca de eventos relacionados con el sistema que la genera los cuales pueden ser:
La importancia de las bitácoras es la de recuperar información ante incidentes de seguridad, detección de comportamiento inusual, información para resolver problemas, evidencia legal, es de gran ayuda en las tareas de cómputo forense.
Su uso principal es : Lleva un control sobre las modificaciones que se hacen la BD.
Un tipo de bitácora puede ser un blog, una pagina web etc. Todos estos lugares se consideran bitácora porque llevan fecha, hora, host, usuario, actividad realizada y estos son los datos básicos que lleva una bitácora.
Enseguida plantearé un ejemplo de una bitácora desarrollada para la siguiente base de datos de MySQL, llamada proyecto, que tiene las tablas carrera, departamento y maestros.
Una bitácora puede registrar mucha información acerca de eventos relacionados con el sistema que la genera los cuales pueden ser:
- Fecha y hora.
- Host origen.
- Usuario.
- Actividad realizada.
La importancia de las bitácoras es la de recuperar información ante incidentes de seguridad, detección de comportamiento inusual, información para resolver problemas, evidencia legal, es de gran ayuda en las tareas de cómputo forense.
Su uso principal es : Lleva un control sobre las modificaciones que se hacen la BD.
Un tipo de bitácora puede ser un blog, una pagina web etc. Todos estos lugares se consideran bitácora porque llevan fecha, hora, host, usuario, actividad realizada y estos son los datos básicos que lleva una bitácora.
Enseguida plantearé un ejemplo de una bitácora desarrollada para la siguiente base de datos de MySQL, llamada proyecto, que tiene las tablas carrera, departamento y maestros.
CREATE DATABASE proyecto;
USE proyecto
CREATE TABLE IF NOT EXISTS `carrera` (`clave_carrera` int(11) NOT NULL,
`nom_carrera` varchar(20) NOT NULL,
`num_depto` int(11) NOT NULL, PRIMARY KEY
(`clave_carrera`), KEY `num_depto` (`num_depto`) )
ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `departamento`
( `num_departamento` int(11) NOT NULL,
`nombre_dept` varchar(20) NOT NULL,
`jefe_num_tarjet` int(11) NOT NULL, PRIMARY KEY
(`num_departamento`), KEY `jefe_num_tarjet` (`jefe_num_tarjet`) )
ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS `maestros` (
`num_tarjeta` int(11) NOT NULL DEFAULT ’0′,
`nombre` varchar(50) DEFAULT NULL, PRIMARY KEY
(`num_tarjeta`)) ENGINE=InnoDB DEFAULT CHARSET=latin1;
La estructura de la tabla bitácora sería la siguiente:
CREATE TABLE IF NOT EXISTS `bitacora` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`operacion` varchar(10) DEFAULT NULL,
`usuario` varchar(40) DEFAULT NULL,
`host` varchar(30) NOT NULL,
`modificado` datetime DEFAULT NULL,
`tabla` varchar(40) NOT NULL, PRIMARY KEY (`id`) )
ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
La bitácora debe registrar todos los movimientos (insertar, eliminar y modificar) que se realicen en las tablas de la base de datos. Para lograr lo anterior es necesario crear un trigger para que se ejecute después de la operación de insertar, otro para después de eliminar y el último para después de modificar para cada una de las 3 tablas de la base de datos.
Esta información la tome de la siguiente fuentes bibliograficas:
- http://yoalo.wikispaces.com/2.4.1+Dise%C3%B1o+Creacion+Bitacora
- irigoyenarredondo.files.wordpress.com/2012/11/unidad3.docx
Jenesis Reyes Saucedo- Mensajes : 16
Fecha de inscripción : 03/02/2013
Reactivo No. 3) Investigar la definición del esquema de seguridad, los conceptos de seguridad y recuperación y la importancia de la creación de usuarios de una base de datos
3) Investigar la definición del esquema de seguridad, los conceptos de seguridad y
recuperación y la importancia de la creación de usuarios de una base de datos
recuperación y la importancia de la creación de usuarios de una base de datos
ESQUEMA DE SEGURIDAD: Existen múltiples riesgos para la seguridad de la información durante la operación, implantación y tiempos muertos en el sistema.
RIESGOS EN LA IMPLANTACIÓN : Cuando se esta instalando o actualizando un sistema, los principales factores de riesgo son aquellos relacionados con el ajuste de formatos, dominios y otros parámetros que pueden verse afectados por la conversión del sistema; ya sea manual-automatizado o automatizado-automatizado. Cuando el sistema que se implanta ha de recibir nueva información, es importante el establecimiento de códigos que permitan validar la captura para minimizar los riesgos de información no confiable.
RIESGOS EN LA OPERACIÓN: Mientras el sistema se encuentra en uso, se dice que las operaciones se realizan en línea; es decir, la información se afecta por medio de los procedimientos definidos en el sistema. La protección más común para reducir estos riesgos consiste en el establecimientos de claves de operación (Password) tanto para accesar a la aplicación como a las diversas operaciones que esta desempeña.
Las claves pueden asignarse:
- Genérico.
- Por niveles de seguridad.
- Por tipos de acceso a los datos.
La selección de las claves de acceso debe llevarse a cabo utilizando los siguientes criterios:
- No información que pueda asociarse al usuario.
- Fácil de recordar, difícil de adivinar.
- utilizar un parámetro variable o algoritmo.
RIESGOS EN TIEMPOS MUERTOS: Cuando el sistema cuando el sistema no se encuentra en operación la información esta expuesta a ser alterada fuera de línea; es decir, sin utilizar los programas de aplicación diseñados para este fin.
Algunas de las técnicas más utilizadas para evitar y en algunos casos solo para ejecutar modificaciones fuera de línea son:
- ENCRIPTAMIENTO.- Consiste en convertir la información de la BD a un formato que resulte ilegible sino se dispone del algoritmo de conversión.
- APLICACIÓN DE TOTALES DE CONTROL.- Consiste en generar registros ficticios que son agregados a la BD y que permitirán detectar la inserción, eliminación o modificación de datos en la gran mayoría de los casos.
CONCEPTO SEGURIDAD: [/i]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 los mismos sin necesidad de modificar o alterar el diseño del modelo de datos; definido de acuerdo a los requisitos del sistema o aplicación software. El objetivo es proteger la Base de Datos contra accesos no autorizados. Se llama también privacidad.
RECUPERACIÓN : Es una de las tareas más importantes de los DBA’s. Ya que por medio de esta si se da algún error en los datos, hay un bug de programa ó de hardware, el DBA (Administrador de base de datos) puede traer de vuelta la base de datos al tiempo y estado en que se encontraba en estado consistente antes de que el daño se causara.
Las recuperación incluyen :
El hacer respaldos de la base de datos y almacenar esos respaldos de manera que se minimice el riesgo de daño ó pérdida de los mismos, tales como hacer diversas copias en medios de almacenamiento re movibles.
Almacenarlos fuera del área en antelación a un desastre anticipado.
LA IMPORTANCIA DE LA CREACIÓN DE USUARIOS: Es importante la creación de usuarios ya que se le pueden asignar solo algunas operaciones que queramos que tenga así como conceder privilegios según el usuario que intente ingresar a la base de datos los derecho que estos pueden tener son : crear, borrar y modificar objetos ,insertar... otros son : derecho a consultar, o actualizar.
Información basada en :
- revista.seguridad.unam.mx/.../principios-básicos-de-seguridad-en-bases
- http://tutorialdeadministraciondebasededatos.blogspot.mx/2009/08/23-esquema-de-seguridad-y-autorizacion.html
Jenesis Reyes Saucedo- Mensajes : 16
Fecha de inscripción : 03/02/2013
Re: 3.- Administración De Bases De Datos
ISAI RENDON QUITERIO1 escribió:1.- INVESTIGAR CONCEPTOS BÁSICOS Y TAREAS RELACIONADAS CON LA ADMINISTRACIÓN DE BASES DE DATOS.
CONCEPTO:
- Un administrador de bases de datos es el técnico responsable de la información para garantizar la funcionalidad actual del funcionamiento y la eficiencia de las bases de datos de una organización y las aplicaciones que acceden a las bases de datos.
- Un administrador de bases de datos (o DBA) tiene la responsabilidad de mantener y operar las bases de datos que conforman el sistema de información de una compañía.
Las tareas que realiza el administrador de bases de datos son:
Garantizar que los datos de una organización y bases de datos sean útiles, utilizables, disponibles y correctos para que el administrador de bases de datos realice una variedad de tareas en una variedad de datos.
Estas áreas incluyen:
- El diseño de base de datos
- Monitoreo y optimización del desempeño
- La disponibilidad de bases de datos
- Seguridad
- Backup y recuperación
- Integridad de datos
En forma resumida el administrador de bases de datos es responsable de diseñar y mantener bases de datos de una empresa o una organización.
Muy buena información isa esta muy acertada , concreta y clara, también puedo decir que es lo mas importante de la información que existe sobre el tema y se entiende muy bien lo que son las tareas que se relacionan con la administracion de la base de datos.
Jenesi Reyes Saucedo.
Jenesis Reyes Saucedo- Mensajes : 16
Fecha de inscripción : 03/02/2013
Página 5 de 7. • 1, 2, 3, 4, 5, 6, 7
Temas similares
» 1.- El SGBD y El Lenguaje De Definición De Datos
» 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos
» Administracion de base de datos
» 5.- Tecnologías De Conectividad De Bases De Datos
» Tema 4 (2021) DesAppDisMoviles
» 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos
» Administracion de base de datos
» 5.- Tecnologías De Conectividad De Bases De Datos
» Tema 4 (2021) DesAppDisMoviles
Permisos de este foro:
No puedes responder a temas en este foro.