Organización de las reglas

El lenguaje de reglas de Active Correlation Technology organiza las reglas en bloques de reglas que forman parte de un conjunto de reglas.

Conjunto de reglas

El conjunto de reglas contiene las reglas, organizadas en bloques de reglas, que ejecutará el motor de Active Correlation Technology. Es la unidad de ejecución de reglas. Cada motor de Active Correlation Technology actúa sólo sobre un conjunto de reglas a la vez.

Las reglas que contiene el conjunto de reglas las desencadenan unos sucesos que se envían al motor de Active Correlation Technology. Los sucesos se envían secuencialmente a las reglas adecuadas según los criterios de selección de sucesos de cada regla, y las reglas se ejecutan de una en una. El mismo suceso puede aplicarse a, y por lo tanto desencadenar, varias reglas. Estas reglas no están necesariamente relacionadas, pero podrían estarlo.

El orden de los bloques de reglas y de las reglas dentro de un conjunto de reglas determina cómo fluyen los sucesos a través del conjunto de reglas.

Pueden definirse variables e importaciones a nivel del conjunto de reglas para ser utilizadas en expresiones (código que contiene lógica personalizada) en todo el ámbito del conjunto de reglas. Una importación es una forma específica del lenguaje de programación de acceder a código externo. Un creador de reglas puede definir una importación para que se importen módulos externos (como clases Java) para utilizar en expresiones dentro de las reglas.

Bloque de reglas

El bloque de reglas es la unidad organizativa para agrupar las reglas según su función en dominios dentro del conjunto de reglas. Un dominio es la categoría a la que se aplica un conjunto de reglas según su función. Por ejemplo, un dominio puede representar una zona geográfica específica, una disciplina de gestión de TI (como detección de seguridad o correlación de sucesos en red), o una organización empresarial (como una empresa específica o una sección dentro de una empresa).

Los bloques de reglas pueden contener reglas u otros bloques de reglas. Como los bloques de reglas pueden estar anidados, se puede construir una jerarquía de reglas. Por ejemplo, un conjunto de reglas puede contener un bloque de reglas para la correlación de sucesos en la red, y el bloque de reglas para la correlación de sucesos en la red puede contener otros dos bloques de reglas: una para la correlación de capa 2 y otra para la correlación de IP.

Por tanto, un conjunto de reglas proporciona posibilidades de correlación de sucesos para distintos dominios, y un bloque de reglas proporciona la organización necesaria para estos distintos dominios que pueden necesitar acceso a un conjunto de sucesos similares.

Pueden definirse variables e importaciones a nivel de bloque de reglas para utilizarlas en expresiones en todo el ámbito del bloque de reglas. El ámbito del bloque de reglas incluye cualquier regla así como también otros bloques de reglas contenidos en el bloque de reglas .

Regla

La regla es la unidad de correlación que se utiliza para reconocer las relaciones entre sucesos y ejecutar las respuestas de regla adecuadas. Una regla es una implementación de uno de los siete siguientes patrones de reglas y se organiza, según su función, en un bloque de reglas que forma parte de un conjunto de reglas:
  • patrón de colección
  • patrón de cálculo
  • patrón de duplicación
  • patrón de filtro
  • patrón de secuencia
  • patrón de umbral
  • patrón de temporizador

Cada regla proporciona posibilidades de correlación de sucesos exclusivas según cuál sea su patrón, y se pueden encadenar reglas a través del reenvío de sucesos. A través de este encadenamiento de reglas, se pueden combinar o anidar las posibilidades de correlación de sucesos de los distintos patrones.

Pueden definirse variables a nivel de regla para utilizarlas en expresiones dentro del ámbito de la regla.

Resumen

En resumen, el conjunto de reglas es la unidad de ejecución, el bloque de reglas es la unidad de organización, y la regla es la unidad de correlación. Un conjunto de reglas contiene uno o más bloques de reglas, cada uno de los cuales puede contener otros bloques de reglas. Cada bloque de reglas contiene reglas para un dominio específico. Los bloques de regla pueden anidarse para construir una jerarquía de reglas. El orden de los bloques de reglas y de las reglas dentro de un conjunto de reglas determina cómo fluyen los sucesos a través del conjunto de reglas.

Se pueden definir variables e importaciones a nivel de conjunto de reglas o de bloque de reglas para utilizarlas en expresiones dentro de las reglas. El ámbito de la variable o de la importación es su respectivo conjunto de reglas o bloque de reglas. Las variables también se pueden definir a nivel de regla, pero esto limita su ámbito exclusivamente a dentro de la regla.