groupingKey エレメント

通常、各アクティブ・ルールには、Active Correlation Technology エンジン内で 実行中の 1 つのルール・インスタンス (またはコピー) が存在します。ただし、 多くの場合異なるリソースのグループに関連している異なるイベントのグループに、 同じルールが必要な場合があります。グループ化キーは、選択されたイベントを、 グループとして固有の処理を行う目的で別々のグループに分離するために使用できる、 1 つ以上のイベント属性またはイベント属性の一部です。<groupingKey> エレメントは、 ルールに対してグループ化キーを定義します。<groupingKey> エレメントの目的は、 ルールに対して、(グループ化キーを構成するイベント属性の値によって 定義されているように) 共通の特性を共有するイベントの各グループについて、 別個のルール・インスタンス (または自身のコピー) を作成するよう指示することです。

詳細

以下の 2 つのシナリオで、グループ化キーの重要性について 説明します。

シナリオ 1:
2 つの イベント、DB2down イベントおよび DB2up イベントが発生します。DB2® プログラムは、A、B、および C という 3 つのコンピューター上で実行されています。DB2down イベントを DB2up イベントと相関させ、DB2 プログラムが停止し、再始動しないときにオペレーターにアラートを出すために、シーケンス・ルールが定義されています。

このシーケンス・ルールがグループ化キー なしで定義されており、コンピューター A から DB2down イベントが受信された場合、 いずれかのコンピューターから DB2up イベントが受信されるとシーケンスは完了しますが、 これにより意図した結果は得られません。しかし、グループ化キーが hostname 属性として定義されていた場合、ルールの固有のコピー (またはインスタンス) が、 選択されたイベントの hostname 属性の各固有値に対して 作成されます。Active Correlation Technology エンジンは、各イベントを、正しいルール・ インスタンス (そのイベントの hostname 値に対するルール・インスタンス) に送信します。 このため、コンピューター A から DB2down イベントを受信すると、Active Correlation Technology エンジンは、コンピューター A のルール・インスタンスを作成します。 コンピューター B から DB2down イベントを受信すると、Active Correlation Technology エンジンは、 コンピューター B に対して 2 番目のルール・インスタンスを作成します。コンピューター B から DB2up イベントを受信すると、Active Correlation Technology エンジンは、そのイベントを 2 番目のルール・インスタンス内で処理します。シーケンスは完了し、 コンピューター B からの DB2down イベントおよび DB2up イベントが正しく相関されているため、オペレーターに アラートが出されます。

シナリオ 2:
Incorrect login attempted」メッセージに対するイベントが、 特定の環境内のすべてのコンピューター上で発生します。イベントには、ユーザー ID が含まれています。 このイベントが 5 分間で 10 回より多く発生した場合にオペレーターに警告が発行されるよう、 しきい値ルールが定義されています。

グループ化キーをユーザー ID として 定義することもできます。その場合、各固有ユーザー ID に対して新規のルール・インスタンスが 作成されます。各ユーザーのログイン試行は、固有のしきい値ルール・インスタンス内で 追跡され、各インスタンスでは、そのユーザーによるログイン試行回数を個別にカウントします。 5 分間で不正ログイン試行が 10 回を超えるユーザー ID があれば、 オペレーターは警告を受け取ります。

他にも、以下に示すようなさまざまな方法が考えられます。
  • グループ化キーを、ユーザー ID ではなくホスト名として定義することも できます。このオプションでは、単一のコンピューターに対する多数の不正ログイン試行を 検出できます。
  • グループ化キーを、ホスト名とユーザー ID の組み合わせとして定義することも できます。このオプションでは、特定のユーザー ID による特定のコンピューターに対するハッキング試行の可能性を検出できます。

ルールに対して指定されたすべてのイベント・タイプで同じ属性が 指定されている場合、グループ化キーを定義するための最も単純かつ一般的な方法として、 <attributeName> エレメントを使用します。

属性

<groupingKey> には、以下の属性があります。

表 1. <groupingKey> エレメントの属性
名前 説明 データ・タイプ 必須?
missingAttributeHandling 以下の条件のいずれかに該当する場合に、ルールが実行する 必要のあるアクションを定義します。
  • 選択されたイベントに、グループ化キーを構成する属性が指定されているものの、その属性の 値が欠落している場合。
  • <computedValue> エレメント内の式が、ヌル値を戻す 場合。ルールは、このヌル値を欠落した属性値として処理します。
missingAttributeHandling 属性の有効値は以下のとおりです。
  • ignoreEvent (デフォルト値)。ルールがイベントを 無視し、何のアクションも実行しないことを意味します。
  • ignoreAttribute。ルールはイベントを受け入れるものの、 値が欠落している属性を無視することを意味します。その後 Active Correlation Technology エンジンは、 その属性に代替値を組み込みます。
xsd:string いいえ

このエレメントを含むエレメント

<groupingKey> は、以下のエレメントに 含まれます。

このエレメントに含まれるエレメント

<groupingKey> には、以下のエレメントが 含まれます。

表 2. <groupingKey> エレメントに含まれる エレメント
エレメント 必須/オプション
<attributeAlias> これらのエレメントのうち 1 つは指定する必要があります。これらのエレメントを複数コーディングするかどうかはオプションです。 3 つすべてのエレメントを複数回指定することができます。これらのエレメントは、任意の順序でコーディングできます。
<attributeName>
<computedValue>