Tuples
If several groups represent a union of parameters, create a tuple group to represent an intersection of parameters. Only one tuple group is allowed per rule.
Supported
TYPE
options: - Analyzed client IP address (ANALYZED_CLIENT_IP)
- Client host name (CLIENT_HOST_NAME)
- Client IP address (CLIENT_IP)
- Client operating system (CLIENT_OS_NAME)
- Command (COMMAND)
- Database name (DB_NAME)
- Database protocol (DB_PROTOCOL)
- Database type (DB_TYPE)
- Database (DB_USER)
- Incident (INCIDENT)
- Network protocol (NET_PROTOCOL)
- Operating system user (OS_USER)
- Sender IP address (SENDER_IP)
- Server description (SERVER_DESC)
- Server host name (SERVER_HOST_NAME)
- SERVER_IP
- Server operating system (SERVER_OS_NAME)
- Server port (SERVER_PORT)
- Service name (SERVICE_NAME)
- Session (SESSION)
- Source application (SOURCE_PROGRAM)
Example:
TUPLES_GROUP_ID = 1 TYPE = (DB_USER OS_USER) SIZE = 5
{
'sys%+oracle%' 'qa+q_a’
%scott+admin' ‘guardium+guardium_%’
'system+admin'
}
This is an example of a 2-tuple group with five members.Example:
IF ( SERVER_PORT = 1521 TUPLES = (‘’,1) )
{
TRANSFORM_DB_USER WHERE SOURCE = OS_USER OUTPUT_FORMAT = 'OPS$(.*)'
}
This is an example with tuples represented as parameters where the rule refers to
tuples_group_id = 1
. The TRANSFORM_DB_USER
action takes the
OUTPUT_FORMAT
and writes it to the DB_USER
field, where
OUTPUT_FORMAT = ‘OPS$(.*)
means OPS$
plus all data from the field
OS_USER
. OUTPUT_FORMAT
is a string, and it may include plain text,
a regular expression result group, or the entire source string.Example:
SR_POLICIES
{
TUPLES_GROUP_ID = 1 TYPE = (DB_USER OS_USER) SIZE = 6
{
'%sys+oracle%' 'qa+qa' 'sc??t+syb%'
'sc??t+oracle%' 'system+admin' '%sc%+spo%'
}
TUPLES_GROUP_ID = 2 TYPE = (DB_USER OS_USER) SIZE = 4
{
'%sys+oracle%' 'qa+qa'
'%sc%+spo%' 'OPS%+spo%'
}
IF (DB_USER != ('',1) { VERDICT_ATTACH }
IF (SERVER_PORT = 1521 TUPLES = ('',1))
{
TRANSFORM_DB_USER SOURCE = OS_USER OUTPUT_FORMAT = 'OPS(.*)'
}
IF (TUPLES = ('',2))
{
TRANSFORM_CLIENT_HOST_NAME SEARCH_PREFIX = 'ENCORE' OUTPUT_FORMAT = 'PEREL'
}
GROUP_ID = 1 SIZE = 5 { 'root' 'sys' 'sa' 'admin' 'system' }
}
This is an example of tuples and groups used in the same policy. There can be multiple
tuple groups in the same policy, but one rule can use only one tuple group. Create additional rules
if you need to use additional tuple groups.