Declaring and assigning audit profiles

Audit profiles determine which policies add records to the audit log (and in which cases).

The security module forwards audit log records via the KasperskyOS kernel to the klog entity, which decodes and processes them. For more details, please refer to the klog example provided in KasperskyOS Community Edition.

Declaring audit profiles

Audit profiles are declared by using an audit profile declaration:

audit profile <profile name> =

{ <runtime level>:

{ <object name>:

{ kss: [ "granted", "denied" ]

, <object configuration ...>

}

}

}

Example audit profile declaration:

audit profile trace =

{ 0:

{ base:

{ kss: ["deny"]

}

}

, 1:

{ session:

{ kss: ["granted", "denied"]

, omit: ["closed"]

}

}

}

Assigning audit profiles

For example:

audit default = global 0 // Assign the default audit profile.

/* Configuration of requests from the "Client" entity to the "Server" entity. */

request src=Client, dst=Server {

audit parent // The parent audit profile is assigned to calls of policies in this section.

/* Configuration of requests from the "Client" entity to specific methods of the "Server" entity. */

match endpoint=pingComp.pingImpl, method=Ping {

audit child

grant () // The child audit profile is assigned to this call.

}

match endpoint=pingComp.pingImpl, method=Pong {

grant () // No audit profile is assigned to this call, so the parent profile will be used.

}

}

response src=Client, dst=Server {

grant () // No audit profile is assigned to this call, so the global profile will be used.

}

Page top