Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Un novato pregunta!

Estas en el tema de Un novato pregunta! en el foro de SQL Server en Foros del Web. Buenos dias a todos y a todas: La cuestión es la siguiente, tengo una BD y me solicitaron registrar todas las actividades de la BD ...
  #1 (permalink)  
Antiguo 06/12/2005, 09:49
 
Fecha de Ingreso: diciembre-2005
Mensajes: 24
Antigüedad: 18 años, 4 meses
Puntos: 0
Un novato pregunta!

Buenos dias a todos y a todas:

La cuestión es la siguiente, tengo una BD y me solicitaron registrar todas las actividades de la BD es decir:

• quien entra
• a donde entra
• a que hora entra
• que hace mientras esta adentro
• a que hora sale

Entre otras consultas, les agradecería inmensamente me pudieran guiar.


De antemano Muchas gracias, recuerden que soy un novato!

que pena si la pregunta es muy obvia
  #2 (permalink)  
Antiguo 06/12/2005, 15:19
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Mi recomendación sería levantar triggers sobre las tablas que interese. Documéntate sobre los triggers e intenta hacer algo en tu servidor.

La idea general es tener una (o varias) tabla de bitácora donde se almacenan los movimientos hechos. La tabla se va poblando con la ejecución de los triggers.

CREATE TRIGGER TRi_mitrigger ON mitabla
FOR INSERT
AS

INSERT INTO bitacora
SELECT 'insercion', 'mitabla', SUSER_SNAME() AS usuario, valor
FROM Inserted
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche

Última edición por Mithrandir; 07/12/2005 a las 15:38
  #3 (permalink)  
Antiguo 06/12/2005, 15:25
 
Fecha de Ingreso: diciembre-2005
Mensajes: 24
Antigüedad: 18 años, 4 meses
Puntos: 0
Te agradezco inmensamente tu guía me es de mucha ayuda, la verdad lo de los triggers me parece muy buena idea pero mi pregunta es: también es posible con un sp??
Y si es así me podrías guiar..


Muchas gracias
  #4 (permalink)  
Antiguo 06/12/2005, 18:20
Avatar de Developer9
(Desactivado)
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.196
Antigüedad: 19 años
Puntos: 47
Disparar un trigger, invocar un sp o creando tablas donde desde el codigo de la aplicacion se hagan los insert respectivos cuando un usuario entra a la aplicacion, cuando realiza consultas, etc. La seguridad es un modulo completo de una aplicacion incluye reportes de las actividades de los usuarios, aunque lo que me he podido dar cuenta las tablas de seguridad siempre crecen enormemente, mas aun si son muchos los usuarios que se conectan a la base
  #5 (permalink)  
Antiguo 07/12/2005, 15:38
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Para un SP dependes de tu aplicación que llame el SP en el momento oportuno, un trigger funcionará independientemente de la aplicación.

Usar el SP depende de como mandes llamar las sentencias desde tu aplicación, si es desde otro SP simplemente agrega la llamada al SP de auditoría (EXEC mispdeaudit).

El SP básico es similar al trigger, pero necesitas importar los datos que se insertaron (probablemente en una tabla temporal)

CREATE PROCEDURE dbo.usp_miaudit
AS

INSERT INTO bitacora
SELECT 'insercion', 'mitabla', SUSER_SNAME() AS usuario, valor
FROM #temporal
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:15.