Anatomía de una regla

Las partes más básicas de una regla son la selección de sucesos, la clave de agrupación, la ventana de tiempo para las reglas con estado, la respuesta de la regla, el intervalo de activación, y las acciones de ciclo de vida. Una regla también incluye expresiones y variables. Una expresión es código que contiene lógica personalizada y que puede añadirse a una regla.

Selección de sucesos

Los criterios para la selección de sucesos determinan qué sucesos son aceptados para ser procesados por la regla. El elemento <eventSelector> define los criterios de selección de sucesos para una regla. La selección de sucesos se aplica a todas las reglas excepto a las definidas por el patrón de temporizador. Como la regla de temporizador no procesa sucesos, no contiene criterios de selección de sucesos.

Clave de agrupación

Normalmente, cada regla activa tiene una instancia de regla, o una copia, ejecutándose en el motor de Active Correlation Technology. Sin embargo, a veces la misma regla es necesaria para distintos grupos de sucesos, que a veces están relacionados con distintos grupos de recursos. La clave de agrupación es un método para indicar a una regla que cree una instancia de regla (o una copia de sí misma) distinta para cada grupo de sucesos que compartan características comunes.

La clave de agrupación sirve como una forma adicional de selección de sucesos. Si una regla está definida con una clave de agrupación, y recibe un suceso con la característica definida por esa clave de agrupación, se envía el suceso a la instancia de regla que procesa los sucesos que comparten esa característica. Por ejemplo, usted puede definir una regla que recoja todos los sucesos de seguridad del tipo Audit Failure y definir que la clave de agrupación sea el atributo hostname de los sucesos. La regla puede utilizarse varias veces, con una copia de la regla distinta para cada valor exclusivo del atributo hostname. También puede supervisar todos los sistemas que reciben el suceso Audit Failure para determinar si ocurren más de 10 sucesos de ese tipo en un periodo de tiempo de dos minutos para cada nombre de sistema principal.

El elemento <groupingKey> define la clave de agrupación para una regla, y es válido para reglas definidas por los patrones de colección, de cálculo, de duplicación, de secuencia y de umbral.

Ventana de tiempo para reglas con estado

Dado que las reglas con estado correlacionan múltiples sucesos que tienen lugar durante un periodo de tiempo específico, una parte básica de una regla con estado es la ventana de tiempo, que define el elemento <timeWindow>. La ventana de tiempo especifica el periodo de tiempo durante el cual la regla con estado se está procesando para coincidir con su patrón.

Respuesta de regla

Las acciones de respuesta de regla definen las acciones a realizar cuando la regla completa su proceso. Cada uno de los siguientes elementos de lenguaje define un tipo distinto de acción de respuesta de regla:
  • <action> dentro de <onDetection>
  • <action> dentro de <onNextEvent>
  • <action> dentro de <onTimeOut>
  • <action> dentro de <onTimeWindowComplete>
Los tipos de acciones de respuesta de regla disponibles para cada regla dependen del patrón de la misma.

Intervalo de activación

El intervalo de activación define cuándo una regla está activa o inactiva. El elemento <activationInterval> define el intervalo de activación para una regla.

Una regla se puede activar o desactivar en una hora y una fecha determinadas o por un suceso específico.

Si usted especifica que una regla se active o se desactive en una hora y una fecha determinadas y por un suceso específico, la regla se activa o se desactiva cuando ocurre cualquiera de estas acciones, la hora y fecha determinadas o la recepción del suceso. Sin embargo, en este caso, la regla puede ser activada o desactivada por muchos sucesos a lo largo de su ciclo de vida. Por ejemplo, una regla podría ser activada por un suceso, desactivada, activada a una hora y fecha determinadas, desactivada otra vez, y activada por otro suceso.

El elemento <activationByGroupingKey> es un elemento que está contenido en el elemento <activationInterval>. El elemento <activationByGroupingKey> contiene elementos que especifican los sucesos que pueden activar y desactivar una instancia de regla definida por el elemento <groupingKey>.

Acciones de ciclo de vida

Las acciones de ciclo de vida definen las acciones a realizar en las cuatro siguientes fases principales del ciclo de vida de una regla: carga, activación, desactivación y descarga.

El elemento <lifeCycleActions> contiene los siguientes elementos que definen estas acciones:
  • <action> dentro de <onLoad>
  • <action> dentro de <onActivation>
  • <action> dentro de <onDeactivation>
  • <action> dentro de <onUnload>