選択したサービスからの監査データのストリーミング
選択した IBM Cloud® サービスによって生成された監査データを、IBM Cloud Logs インスタンスから、IBM® Cloud Logs と Event Streams を統合することで、セキュリティ情報とイベント管理 (SIEM) ツールなどの他の企業ツールに接続できます。
前提条件
-
IBM® Event Streams for IBM Cloud®インスタンスは、データをストリームする予定のIBM Cloud Logsインスタンスと同じアカウントにプロビジョニングされます。
サービス・プランの制限事項を確認します。 詳しくは、制限と割り当て量を参照してください。
-
IBM® Event Streams for IBM Cloud®インスタンスにトピックを作成する権限があります。
Event Streams でトピックを作成するには、 Event Streams インスタンスのマネージャ・ ロールが必要です。 このロールには messagehub.topic.manage このロールには、アプリまたはユーザーがトピックを作成または削除できるようにする IAM アクション・ロールが含まれます。
-
ストリームしたい監査イベントをIBM® Cloud Logsインスタンスにルーティングします。
-
IBM® Cloud Logsインスタンスでストリーミングを設定する権限があります。
manager サービス・ロールを持つ必要があります。
サービス名でフィルタリングしたい場合は、logSourceCRN からサービス名などの特定の値を抽出する解析ルールが必要になるかもしれません。
ストリーミング・ルールの定義
IBM® Event Streams for IBM Cloud®にストリームする監査イベントをフィルタリングするルールを定義できます。
次の表に、設定可能なルールをいくつか示します:
| ルールの説明 | ルール |
|---|---|
| すべての監査イベントをストリームする | <v1> $l.applicationname =='ibm-audit-event' |
| 1サービスからのストリーム監査イベント | <v1> $l.applicationname =='ibm-audit-event' && $d.serviceName =='REPLACE_WITH_CRN_SERVICE_NAME' |
| 2つのサービスからのストリーム監査イベント | <v1> $l.applicationname =='ibm-audit-event' && ( $d.serviceName =='REPLACE_WITH_CRN_SERVICE_NAME_1' || $d.serviceName =='REPLACE_WITH_CRN_SERVICE_NAME_2' ) |
| 重要度の高いストリーム監査イベント | <v1> $l.applicationname =='ibm-audit-event' && $d.severity =='REPLACE_WITH_SEVERITY_VALUE'
有効な深刻度の値は以下の通りです: |
| 選択したサービスからの異なる重大度値を持つストリーム監査イベント | <v1> ( ( $l.applicationname =='ibm-audit-event' && ( $d.serviceName =='REPLACE_WITH_CRN_SERVICE_NAME_1' || $d.serviceName =='REPLACE_WITH_CRN_SERVICE_NAME_2' ) && $d.severity =='REPLACE_WITH_SEVERITY_VALUE') ) || ( $l.applicationname =='ibm-audit-event' && $d.serviceName =='iam-identity' && $d.severity =='REPLACE_WITH_SEVERITY_VALUE')
有効な深刻度の値は以下の通りです: |
requestData または responseData セクションのデータに基づくストリーム監査イベント |
$d.requestData.REPLACE_WITH_FIELD_NAME
例えば、フィールド |
詳細については、ストリーミング・データ・ルールの設定 を参照してください。
これらの例には <v1> 接頭辞が含まれていることに注意してください。 この接頭辞は、UIを使うときに自動的に含まれるので、指定する必要はない。 しかし、APIで使われるDPXL式は、<v1> という接頭辞で始まらなければなりません。
例えば、選択したサービスから異なる重大度値を持つ監査イベントをフィルターするには、次のようにクエリーを定義します:
<v1> ( ( $l.applicationname =='ibm-audit-event' && ( $d.serviceName =='iam-am' || $d.serviceName =='cloud-object-storage' ) && $d.severity =='critical') )
|| ( $l.applicationname =='ibm-audit-event' && $d.serviceName =='iam-identity' && $d.severity =='normal')
ストリーミング・ルールを検証する
ストリーミング・ルールを確認するには、左側のナビゲーションでログを検索をクリックします。 DataPrime クエリーを選択し、クエリーを以下のように変更する:
filter 'PASTE_YOUR_CONDITION'
クエリの出力は、ストリーミング設定を有効にすると、ストリーミ ングされるログレコードのリストを与えるはずである。
例えば、<v1> $l.applicationname =='ibm-audit-event' を次のように変更する:
filter $l.applicationname =='ibm-audit-event'
監査イベントのストリーミング設定
ストリーミングを設定するには、IBM Cloud LogsとEvent Streams の統合を参照してください。