Adding IBM Guardium via Syslog

Purpose

This guide explains how to forward IBM Guardium Data Protection events to Logsign USO over syslog and what Logsign does with them. The integration reads the LEEF messages that Guardium collectors send through syslog. It covers two kinds of messages: policy alerts (for example SQL errors or repeated failed logins) and SQL audit records written by a policy rule with the Log with details action.

Prerequisites

  • A Guardium administrator account that can configure remote syslog and message templates on each collector.
  • Network connectivity from every Guardium collector to the Logsign USO collector on your syslog port (TCP or UDP 514 by default).
  • The Logsign user account that will add the data source needs access to Settings > Data Collection.

Step 1: Forward Guardium events to Logsign

Guardium sends policy alerts and audit records to a remote syslog server from each collector. Use the IBM Guardium documentation for your version to add the IP address of the Logsign USO collector as a remote syslog destination (on most versions this is done from the Guardium CLI with the store remotelog command). Configure this on every collector that should send events.

Select the LEEF message template for the events you forward. In the policy rules whose events you want in Logsign, use an action that sends the event to syslog, such as an alert action for policy violations or Log with details for SQL audit records. Keep the default Guardium LEEF fields. Logsign recognizes messages from the guard_sender process.

Step 2: Add the data source in Logsign USO

Open the Logsign USO web interface and click + Device under Settings > Data Collection. Choose Syslog as the collection method, select IBM as the vendor and Guardium as the product, and enter the IP address of the Guardium collector as the host. Repeat this for every collector that sends logs. Click Save. Once Guardium starts sending, events appear under Search.

Supported message formats

Every message starts with a syslog header that carries the Guardium collector name and the guard_sender process, followed by a LEEF header and a list of Key=Value pairs separated by the | character. Two typical events look like this (anonymized, query shortened):

Mar 31 14:45:57 guardcol01 guard_sender[15472]: LEEF:1.0|IBM|Guardium|9.0|SQL Error - Alert on Risk Indicative errors|ruleID=20548|ruleDesc=SQL Error - Alert on Risk Indicative errors|severity=MED|devTime=2017-3-31 14:45:27|serverType=ORACLE|classification=SQL Error|dbUser=APPUSER|dst=10.0.0.20|dstPort=1521|src=10.0.0.10|srcPort=54949|protocol=TCP|type=SQL_ERROR|sql=select ...|error=ORA-00942

Nov 11 14:28:35 guardcol01 guard_sender[2444156]: LEEF:1.0|IBM|Guardium Data Protection|12.1|21803|devTime=2026-11-11 14:28:25|sev=1|name=Log with details|usrName=APPS|src=10.0.0.10|dst=10.0.0.20|spt=24722|dpt=1521|proto=TNS|cat=Audit|ServiceName=ORCLPRD|RawQuery=update ...|ObjectsName=FND_CONC_RELEASE_DISJS|HostName=DBCLIENT01|EventType=BIND_DATA|UserAuthenticated=0|ApplicationName=STANDARD|ParsedQuery=update ...|SQLError=|EventId=901779000000122146|Operation=update

A value runs until the next |Key= separator, so SQL text that contains =, ( or ) is kept as one value. Keys with an empty value are not written.

Field mapping

The alert template and the Log with details template use different key names for the same information. Logsign reads the alert key first and the Log with details key second.

Logsign fieldAlert template keyLog with details key
Time.GenerateddevTimedevTime
Source.IPsrcsrc
Source.PortsrcPortspt
Source.UserNamedbUserusrName
Source.HostName-HostName (database client)
Destination.IPdstdst
Destination.PortdstPortdpt
Protocol.Nameprotocolproto
Event.InfoLEEF header event namename
Event.Categoryclassificationcat
Event.SubCategorycategory-
Event.TypetypeEventType
Event.ID-EventId
Rule.IDruleID-
Database.QuerysqlRawQuery
Database.ParsedQuery-ParsedQuery
Object.Name-ObjectsName
Operation.Name-Operation
Service.Name-ServiceName
Application.Name-ApplicationName
Account.ConnectState-UserAuthenticated
Error.MessageerrorSQLError
EventSource.VersionLEEF header versionLEEF header version

EventSource.HostName always shows the Guardium collector from the syslog header. The database client host name from the LEEF HostName key goes to Source.HostName.

Event classification

Logsign classifies each event with the value of type (alert template) or EventType (Log with details). For example, SQL_ERROR maps to Object / Database / Error and LOGIN_FAILED maps to Identity / User / Deny. The Log with details event types BIND_DATA, RAW_STATEMENT and SQL_LANG map to Object / Database / Info (Database Object Info Query).

Notes and limits

  • For alert messages, the severity comes from the severity key (INFO, LOW, MED, HIGH). Log with details messages carry a sev key that Logsign does not read; their severity comes from the syslog priority of the incoming message.
  • Some Log with details keys repeat information that is already mapped (externalId, requestMethod, ResponseTime, SourceApplication, requestClientApplication) and are not mapped to separate fields. OSUser is also not mapped.
  • If Log with details events arrive without Source.Port, Database.Query or Object.Name, or if SQL queries appear cut at the first = character, the appliance is running an older version of the IBM Guardium plugin. Contact Logsign support to confirm the version you need.

Verification

  • In Logsign USO, open Settings > Data Collection and confirm that the Guardium source is receiving data.
  • In Search, look for events with Vendor IBM and Product Guardium. EventSource.HostName should show the Guardium collector name.
  • Run a query on a database that a Log with details rule monitors. The event should show the query in Database.Query, the table in Object.Name and the database client in Source.HostName, with EventMap Object / Database / Info.
  • If the source is receiving data but no events show Vendor IBM, the messages are not in a format this integration recognizes. Check that Guardium uses the LEEF template and that nothing on the way rewrites the syslog header.
Was this article helpful?
0 out of 0 found this helpful

Articles in this section

See more
Become a Certified Logsign User/Administrator
Sign-up for Logsign Academy and take the courses to learn about Logsign USO Platform in detail. Enjoy the courses, and get your badges and certificates. In these courses, you'll learn how to use Logsign in your work and add value to your career.
Visit Our Blog
Our Logsign USO Platform illustrate our expertise. So do the blog. Through our blog posts, deepen your knowledge on various SecOps topics or get updated about important news & modern approaches for cybersecurity. Get into the habit of reading valuable information provided by Logsign. Be a step ahead.