Por favor si pueden ayudarme en este caso.
Fortisiem no recopila eventos que ocurren dentro del administrador de base de datos, sino eventos relacionados con Windows.
Configuramos todo del lado de SQL Server: creamos el usuario, las tablas, los triggers, las audorias. Y podemos visualizar los eventos relacionados con la auditoría desde el gestor de base de datos pero no desde Fortisiem. ¿Qué podría faltar?
Anexo parte de la configuración:
1. Configuración de la auditoría de inicio de sesión mediante SQL Server Management Studio:
Habilitar el seguimiento de auditoría C2.
2. Creación de la base de datos PH_Events y las tablas dbo.DDLEvents y dbo.LogonEvents con los siguientes Scripts:
CREAR TABLA PH_Events.dbo.DDLEvents
(
Evento XML XML,
Nombre de la base de datos VARCHAR(MAX),
EventTime FECHA Y HORA PREDETERMINADA (GETDATE()),
Tipo de evento VARCHAR(MAX),
SPID VARCHAR(MÁXIMO),
Nombre del servidor VARCHAR(MAX),
Nombre de inicio de sesión VARCHAR(MAX),
NombreObjeto VARCHAR(MAX),
Tipo de objeto VARCHAR(MAX),
Nombre del esquema VARCHAR(MAX),
Texto de comando NVARCHAR(MAX)
)
IR
CREAR TABLA PH_Events.dbo.LogonEvents
(
Evento XML XML,
Fecha y hora del evento,
Tipo de evento VARCHAR(MAX),
SPID VARCHAR(MÁXIMO),
Nombre del servidor VARCHAR(MAX),
Nombre de inicio de sesión VARCHAR(MAX),
Tipo de inicio de sesión VARCHAR(MAX),
SID VARCHAR(MÁXIMO),
Nombre de host VARCHAR(MAX),
Se agrupa VARCHAR(MAX),
Nombre de la aplicación VARCHAR(MAX)
)
3. Creación del usuario y su rol con el siguiente Script:
UTILIZAR PH_Events
IR
CREAR USUARIO [AOPerfLogin] PARA INICIAR SESIÓN [AOPerfLogin]
IR
ALTERAR ROL [db_owner] AGREGAR MIEMBRO [AOPerfLogin]
IR
4. Creación de los triggers con los siguientes Scripts:
Gatillo I.-
USO maestro;
IR
CREAR DISPARADOR PH_Database_Level_Events en BASE DE DATOS
PARA EVENTOS DE NIVEL DE BASE DE DATOS DDL
COMO
DECLARA @eventData COMO XML;
ESTABLECER @eventData = EVENTDATA();
INSERTAR EN PH_Events.dbo.DDLEvents(EventTime, EventType, SPID, ServerName, LoginName, ObjectName, ObjectType, SchemaName, DatabaseName, CommandText, XMLEvent)
VALORES(cast(@eventData.query('data(//PostTime)') como varchar(MAX)),
cast(@eventData.query('data(//EventType)') como varchar(MAX)),
convertir(@eventData.query('data(//SPID)') como varchar(MAX)),
cast(@eventData.query('data(//ServerName)') como varchar(MAX)),
cast(@eventData.query('data(//NombreDeInicioDeSesión)') como varchar(MAX)),
cast(@eventData.query('data(//ObjectName)') como varchar(MAX)),
convertir(@eventData.query('data(//ObjectType)') como varchar(MAX)),
cast(@eventData.query('data(//SchemaName)') como varchar(MAX)),
cast(@eventData.query('data(//NombreDeBaseDeDatos)') como varchar(MAX)),
cast(@eventData.query('datos(//TSQLCommand/CommandText)') COMO NVARCHAR(MAX)),
@datosdeeventos
);
IR
Gatillo II.-
USO maestro;
IR
CREAR DISPARADOR PH_DDL_Eventos_de_Nivel_de_Servidor
EN TODOS LOS SERVIDORES
PARA EVENTOS DE PUNTO FINAL DDL, EVENTOS DE INICIO DE SESIÓN DDL, EVENTOS DE SERVIDOR GDR DDL, EVENTOS DE SERVIDOR DE AUTORIZACIÓN DDL,
CREAR_BASE_DE_DATOS, MODIFICAR_BASE_DE_DATOS, ELIMINAR_BASE_DE_DATOS, CONCEDER_BASE_DE_DATOS, DENEGAR_BASE_DE_DATOS, REVOCAR_BASE_DE_DATOS
COMO
DECLARA @eventData COMO XML;
ESTABLECER @eventData = EVENTDATA();
insertar en PH_Events.dbo.DDLEvents(EventTime, EventType, SPID, ServerName, LoginName, ObjectName, ObjectType, SchemaName, DatabaseName, CommandText, XMLEvent)
valores(cast(@eventData.query('data(//PostTime)') como varchar(MAX)),
cast(@eventData.query('data(//EventType)') como varchar(MAX)),
convertir(@eventData.query('data(//SPID)') como varchar(MAX)),
cast(@eventData.query('data(//ServerName)') como varchar(MAX)),
cast(@eventData.query('data(//NombreDeInicioDeSesión)') como varchar(MAX)),
cast(@eventData.query('data(//ObjectName)') como varchar(MAX)),
convertir(@eventData.query('data(//ObjectType)') como varchar(MAX)),
cast(@eventData.query('data(//SchemaName)') como varchar(MAX)),
cast(@eventData.query('data(//NombreDeBaseDeDatos)') como varchar(MAX)),
cast(@eventData.query('datos(//TSQLCommand/CommandText)') COMO NVARCHAR(MAX)),
/** NOMBRE_BD(),**/
@eventData);
IR
Gatillo III.-
Utilice master;
IR
CREAR DISPARADOR PH_LoginEvents EN TODOS LOS SERVIDORES
CON EJECUTAR COMO YO PARA INICIAR SESIÓN
COMO
COMENZAR
DECLARAR @evento XML
ESTABLECER @evento = EVENTDATA()
INSERTAR EN PH_Events.dbo.LogonEvents(HoraDeEvento,TipoDeEvento,SPID,NombreDeServidor,NombreDeInicioDeSesión,TipoDeInicioDeSesión,SID,NombreDeHost,IsPooled,NombreDeAplicación,XMLEvent)
VALORES(CAST(CAST(@event.query('/EVENT_INSTANCE/PostTime/text()') COMO VARCHAR(64)) COMO FECHAHORA),
CONVERTIR(@event.query('/EVENT_INSTANCE/EventType/text()') COMO VARCHAR(128)),
CONVERTIR(@event.query('/EVENT_INSTANCE/SPID/text()') COMO VARCHAR(128)),
CAST(@event.query('/EVENT_INSTANCE/ServerName/text()') COMO VARCHAR(128)),
CAST(@event.query('/EVENT_INSTANCE/NombreDeInicioDeSesión/texto()') COMO VARCHAR(128)),
CAST(@event.query('/EVENT_INSTANCE/TipoDeInicioDeSesión/texto()') COMO VARCHAR(128)),
CONVERTIR(@event.query('/EVENT_INSTANCE/SID/text()') COMO VARCHAR(128)),
CONVERTIR(@event.query('/EVENT_INSTANCE/ClientHost/text()') COMO VARCHAR(128)),
CONVERTIR(@event.query('/EVENT_INSTANCE/IsPooled/text()') COMO VARCHAR(128)),
NOMBRE_DE_LA_APLICACIÓN(),
@evento)
FIN;
5. Creación de auditorías y propiedades de especificación de auditorías de servidor dentro de SQL Server Management Studio.
Agradecería mucho su ayuda.
Nominating a forum post submits a request to create a new Knowledge Article based on the forum post topic. Please ensure your nomination includes a solution within the reply.
I fail to see the connection to FortiGate here. How is this related?
We want to view the events in the Fortisiem related to the databases, not the FortiGate.
Hi Rebeca. You posted in FortiGate support forum. There is no database in FortiGate that can be accessed, or produce events. So let me ask to move this to FortiSiem forum
Welcome to your new Fortinet Community!
You'll find your previous forum posts under "Forums"
The Fortinet Security Fabric brings together the concepts of convergence and consolidation to provide comprehensive cybersecurity protection for all users, devices, and applications and across all network edges.
Copyright 2024 Fortinet, Inc. All Rights Reserved.