Auditoria de Usuarios en MySQL
Publicado por Edison Solórzano (1 intervención) el 28/12/2014 01:20:24
Hola, necesito ayuda en una tarea, la cual consiste en desarrollar un control que permita registrar los usuarios con su
respectivo historial de claves utilizadas (usuarios de MySQL). intente usar un Trigger, pero no puedo crearlos sobre las tablas de MySQL... aqui dejo lo que estaba utilizando
DROP TABLE IF EXISTS AuditoriaUsuarios;
CREATE TABLE AuditoriaUsuarios(
Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
Fecha datetime, -- fecha del proceso
Usuario varchar(40), -- usuario implicado
Proceso varchar(10), -- agregado, editado, eliminado
Datos varchar(255) NOT NULL -- observacion del proceso
);
DROP TRIGGER IF EXISTS MonitoreoPersonas;
Delimiter //
CREATE TRIGGER MonitoreoPersonas AFTER INSERT ON User FOR EACH ROW
BEGIN
DECLARE contenido Varchar(200);
SET contenido = CONCAT(NEW.User,' ',NEW.Password);
INSERT INTO AuditoriaUsuarios(Fecha,Usuario,Proceso,Datos)
VALUES (NOW(),USER(),'Agregado',contenido);
END //
Delimiter ;
DROP TRIGGER IF EXISTS MonitoreoActualizacion;
DELIMITER //
CREATE TRIGGER MonitoreoActualizacion BEFORE UPDATE ON Personas FOR EACH ROW
BEGIN
DECLARE act varchar(200);
SET act=CONCAT(OLD.User,' por ',NEW.User,', ',OLD.Password,' por',NEW.Password);
INSERT INTO AuditoriaUsuarios(Fecha,Usuario,Proceso,Datos) VALUES
(NOW(),USER(),'Actualizado',act);
END//
DELIMITER ;
respectivo historial de claves utilizadas (usuarios de MySQL). intente usar un Trigger, pero no puedo crearlos sobre las tablas de MySQL... aqui dejo lo que estaba utilizando
DROP TABLE IF EXISTS AuditoriaUsuarios;
CREATE TABLE AuditoriaUsuarios(
Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
Fecha datetime, -- fecha del proceso
Usuario varchar(40), -- usuario implicado
Proceso varchar(10), -- agregado, editado, eliminado
Datos varchar(255) NOT NULL -- observacion del proceso
);
DROP TRIGGER IF EXISTS MonitoreoPersonas;
Delimiter //
CREATE TRIGGER MonitoreoPersonas AFTER INSERT ON User FOR EACH ROW
BEGIN
DECLARE contenido Varchar(200);
SET contenido = CONCAT(NEW.User,' ',NEW.Password);
INSERT INTO AuditoriaUsuarios(Fecha,Usuario,Proceso,Datos)
VALUES (NOW(),USER(),'Agregado',contenido);
END //
Delimiter ;
DROP TRIGGER IF EXISTS MonitoreoActualizacion;
DELIMITER //
CREATE TRIGGER MonitoreoActualizacion BEFORE UPDATE ON Personas FOR EACH ROW
BEGIN
DECLARE act varchar(200);
SET act=CONCAT(OLD.User,' por ',NEW.User,', ',OLD.Password,' por',NEW.Password);
INSERT INTO AuditoriaUsuarios(Fecha,Usuario,Proceso,Datos) VALUES
(NOW(),USER(),'Actualizado',act);
END//
DELIMITER ;
Valora esta pregunta
0