none
Trigger logon audita múltiples conexiones con un usuario RRS feed

  • Pregunta

  • Hola.

    Tengo el siguiente trigger logon que pretende insertar una fila con información de cada conexión que se produce en el servidor:

    CREATE TRIGGER tr_auditoria_logins
    ON ALL SERVER WITH EXECUTE AS 'sa'
    FOR LOGON
    AS
    declare @nombre_login varchar(128),
    @hora_dia_conexion datetime;

    set @nombre_login=ORIGINAL_LOGIN();
    set @hora_dia_conexion=EVENTDATA().value('(/EVENT_INSTANCE/PostTime)[1]','datetime');

    INSERT INTO PRUEBAS_TRIGGER.dbo.DATOS_LOGIN (nombre_login,hora_dia_conexion)
    VALUES(@nombre_login,@hora_dia_conexion);
    GO

    El problema es que cuando me conecto con cualquier usuario no inserta una única fila en la tabla DATOS_LOGIN, sino varias. He probado a detener todos los servicios excepto el del motor de BD, pero sigue generando múltiples filas, es decir, el trigger se está ejecutando varias veces por login que accede. ¿Por qué ocurre esto?

    Gracias.


    viernes, 18 de noviembre de 2016 15:41

Respuestas

Todas las respuestas