Event Streams ターゲットの構成

セキュリティ情報およびイベント管理(SIEM)ツールなどの他の企業ツールに監査イベントを送信するために、 Event Streams トピックを IBM Cloud Activity Tracker Event Routing ターゲットとして定義できます。

また、 Terraform IBM Modules for IBM Cloud Activity Tracker Event Routing を使って、 Event Streams ターゲットを設定することもできる。このモジュールは、 高度な例を含む、あらかじめビルドされた設定を提供する。

シナリオ

セキュリティ情報およびイベント管理(SIEM)ツールなどの他の企業ツールに監査イベントを送信するために、 Event Streams トピックを IBM Cloud Activity Tracker Event Routing ターゲットとして定義できます。 データをデータレイクやその他の分析ツール、あるいは他のSIEMツールに転送することで、 Activity Tracker Event Routing が提供する機能に加えて、さらなる機能を追加することができます:

  • オンプレミス環境とクラウドベース環境の全体にわたり、エンタープライズ・データを可視化できます。
  • 組織に影響を与える可能性のあるセキュリティーの脅威を識別し、優先順位を付けることができます。
  • 人工知能 (AI) を使用して脅威とインシデントを調査することによって、脆弱性を検出できます。

前提条件

  • Activity Tracker Event Routing について学習する。 詳しくは、製品情報を参照してください。

  • IBM Cloud CLI をインストールします。 詳しくは、『IBM CloudCLI のインストール』を参照してください。

  • ローカルシステムに、最新の Activity Tracker Event Routing CLI用 V2 プラグインをインストールしてください。 Activity Tracker Event Routing CLI のインストールを参照してください。

  • IBM Cloud アカウントのメンバーまたは所有者であるユーザー ID が必要です。 IBM Cloud のユーザーIDを取得するには、 アカウントを作成する にアクセスしてください。

  • アカウント内で Activity Tracker Event Routing の設定を管理するすべてのユーザーには、アクセスポリシーを割り当てる必要があります。 そのポリシーによって、ユーザーが実行できるアクションが決まります。 許可されるアクションは、サービス上で実行できる操作として、Activity Tracker Event Routing によってカスタマイズされて定義されます。 その後、操作は IAM ユーザー役割にマップされます。 詳細はこちらをご覧ください。

    IBM Cloud Activity Tracker Event Routing サービスを管理するには、お使いのユーザー ID にプラットフォームの管理者権限が必要です。 アカウント所有者にお問い合わせください。 アカウント所有者は、ユーザー・アクセスの管理とアカウント・リソースの管理を行う目的で、別のユーザーにアカウントへのアクセス権限を付与できます。 詳細はこちら。

Event Streams トピックの構成

アカウントで収集された監査イベントは、 Event Streams トピックにルーティングできます。

Activity Tracker Event Routing を設定する際、リージョンごとにターゲットを定義することができます。 ターゲットは、その領域内の監査イベントがルーティングされる Event Streams インスタンスおよびトピックを定義します。

以下のステップを実行します。

  1. IBM Cloud アカウントにログインします。

  2. Event Streams インスタンスを作成します。

    Event Streams のサービスプランの制限事項をご確認ください。 詳しくは、制限と割り当て量を参照してください。

    a. カタログ で Event Streams サービスにアクセスします。

    b. 「サービス・インスタンス」ページでプランを選択します。

    c. サービスの名前を入力します。 デフォルト値を使用することができます。

    d. 「作成」 をクリックします。 Event Streams **「開始」**ページが開きます。

  3. トピックを選択します。

  4. **「トピックの作成 (Create a topic)」**をクリックします。

    トピックを作成する。
    トピックを作成する

  5. トピック名を入力し、**「次へ」**をクリックします。

    「トピック名を入力してください」
    「トピック名を入力してください」

  6. パーティションの数を入力し、**「次へ」**をクリックします。

    トピックは 1 つ以上のパーティションで構成されます。 パーティションは、メッセージの番号付きリストです。 トピックのスケーラビリティーを高めるために、パーティションは複数のブローカーにわたって分散されます。 また、コンシューマー・グループのメンバー間でメッセージを分散させるためにパーティションを使用することもできます。

     ![パーティションの数を入力してください](../images/es-topic-2.png "パーティションの数を入力してください"){: caption="パーティションの数を入力してください" caption-side="bottom"}
    
  7. **「メッセージの保存 (Message retention)」を選択して「トピックの作成 (Create Topic)」**をクリックします。

**「メッセージの保存 (Message retention)」**は、メッセージが削除されるまでの保存期間を定義します。 この期間内にメッセージがコンシューマーによって読み取られない場合、それらは失われます。

Event Streams で認証するための資格情報を作成します

Activity Tracker Event Routing を Event Streams インスタンスに接続するには、以下の情報が必要です:

  • API を呼び出すエンドポイント URL
  • 認証のための資格情報

Activity Tracker Event Routing が Event Streams インスタンスと通信するために必要なサービス認証情報を作成するには、以下の手順を実行してください:

  1. IBM Cloud で、 メニュー アイコンをクリックします。 メニューアイコン > リソース一覧。

  2. 使用する予定のEvent Streams・インスタンスを見つけて選択します。

  3. Event Streamsのコンソールで**「サービス資格情報」**をクリックします。

  4. **「新規資格情報」**を選択します。

  5. 名前を入力し、**「ライター」**役割を選択します。

    認証情報を作成します。
    認証情報を作成します

  6. 追加 をクリックします。

アクセスを 1 つのトピックに制限するには、以下のステップを実行します。

2 つのポリシーを定義する必要があります。1 つはリソース・タイプ topic 用、1 つはリソース・タイプ cluster 用です。 詳しくは、Event Streams リソースへのアクセスの管理を参照してください。

  1. Event Streams サービスのポリシーを変更して、トピックへのアクセスを制限します。

    1. メニューバーから、 「管理 」>をクリックします 「 Access (IAM) 」に移動し、「 サービス ID 」を選択します。

      「サービス ID」
      「サービス ID」

    2. サービス ID を選択します。

    3. 「アクセス・ポリシー」 セクションで、ポリシーを選択し、それを変更してトピックを指定します。

      例えば、以下のイメージでは、トピック ID は demo-streamingです。

       ![「ポリシーの編集」](../images/es-credentials-2.png "「ポリシーの編集」"){: caption="「ポリシーの編集」" caption-side="bottom"}
      
       ![「役割の選択」](../images/es-credentials-3.png "「役割の選択」"){: caption="「役割の選択」" caption-side="bottom"}
      
  2. リソース・タイプが cluster に設定された Event Streams サービスのアクセス・ポリシーを追加します。

    1. メニューバーから、 「管理 」>をクリックします 「 Access (IAM) 」に移動し、「 サービス ID 」を選択します。

      「サービス ID」
      「サービス ID」

    2. サービス ID を選択します。

    3. [ アクセスポリシー ] セクションで、 [アクセス権の割り当て ] を選択します。

    4. reader 許可を持つ Event Streams サービス (リソース・タイプ クラスター ) のポリシーを追加します。

      「ポリシーの編集」
      「ポリシーの編集」

      「役割の選択」
      「役割の選択」

IBM Cloud CLI を使用した資格情報の取得して、API キーとブローカー URL の値をメモしておくことができます。

サービス間の許可の構成

Event Streams トピックに対してサービス間認証を設定することで、暗号化されたデータを Event Streams トピックに書き込む際にAPIキーを渡す必要がなくなります。

監査イベントが生成されるアカウントとは異なるアカウントに「 Event Streams 」トピックが存在する場合、サービス間認証を定義する手順は次のとおりです

これらの手順は、「 Event Streams 」トピックが利用可能なアカウントで実行する必要があります。

  1. IBM Cloud Activity Tracker Event Routing ターゲットを構成するアカウント所有者として IBM Cloud アカウントにログインします。

    ユーザー ID とパスワードを使用してログインすると、IBM Cloud ダッシュボードが開きます。

  2. [ 管理 ] をクリック > Access(IAM)。 「 アクセスとユーザーの管理 」が表示されます。

  3. 「許可」 をクリックします。

  4. 「作成」 をクリックします。

  5. ソース・アカウントを選択します。 その他のアカウントを選択します。 次に、ソース・サービスのアカウント ID を入力します。 アカウント ID は、32 文字で固有のアカウント ID です。

  6. ソース・サービスの場合は、Activity Tracker イベント・ルーティングを選択します。**どのようにアクセス権限のスコープを設定しますか?**の場合は、すべてのリソースを選択します。

  7. 「 対象サービス 」では、 Message Hub 「 アクセスの範囲をどのように設定しますか?」 では、「 選択した属性に基づくリソース 」を選択してください。

  8. 「 サービスインスタンス 」と「 文字列が等しい 」を選択し、 Event Streams インスタンスの名前を入力してください。

  9. サービスへのアクセスには、「 Writer 」を選択してください。

  10. 「許可」 をクリックします。 新しいサービス間許可が「許可の管理」ビューにリストされます。

あるいは、以下のコマンドを実行して、サービス間ポリシーを作成することもできます。

ibmcloud iam authorization-policy-create atracker messagehub Writer --source-service-account sourceAccountID

ターゲットの作成

ターゲットの作成に対して、以下のコマンドを実行します。

ibmcloud atracker target create --name <TARGET_NAME> --type event-streams --endpoint <EVENT_STREAMS_ENDPOINT> --target-crn <EVENT_STREAMS_TARGET_CRN> --topic <TOPIC> --region <REGION>

説明

--region <REGION>
イベントを処理する領域の名前 (例: us-southまたはeu-gb)。 指定しないと、ログインしたリージョン、またはターゲットのリージョンが使用されます。
--name <TARGET_NAME>
ターゲットに付ける名前。
--endpoint <EVENT_STREAMS_ENDPOINT>
トピックに関連付ける Event Streams エンドポイント。
--topic <TOPIC>
ターゲットに関連付ける「 Event Streams 」トピックの名前。
--api-key <EVENTSTREAMS_API_KEY> | @EVENTSTREAMS_API_KEY_FILE
Event Streamsサービスのクレデンシャルで見つかったパスワード値。 これはIAM APIキーである
--target-crn <EVENT_STREAMS_TARGET_CRN>
Event Streams インスタンスの CRN。
--service-to-service-enabled <true/false>
IBM Cloud Activity Tracker Event Routingがサービス間認証を有効にしているかどうかを判定します。 service to serviceが有効で、apikeyを提供しない場合、このフラグをtrueに設定する。

例えば、米国南部地域にターゲットを作成するには、以下のコマンドを実行します。

ibmcloud atracker target create --name  "My target" --type event-streams --target-crn "crn:v1:bluemix:public:messagehub:eu-de:a/11111111111111111111111111111111:22222222-2222-2222-2222-222222222222::" --brokers "broker-1:9093,broker-2:9093" --topic "topic-name" --api-key xxxxx

領域内のターゲット定義を確認するには、CLI を使用したターゲットに関する情報の取得を参照してください。

ターゲットが作成されると、ターゲット ID が返されます。 ターゲット ID をメモします。 アカウント内のターゲットにイベントをルーティングするルールを構成するには、ターゲット ID が必要です。

次へ

アカウントに 1 つ以上の経路を定義します。 詳しくは、経路の構成を参照してください。

ルートを設定する際には、ルートにターゲットを関連付け、どの種類の監査イベントをそのルートにルーティングするかを定義します。 この経路は、アカウント内で監査イベントがルーティングされる場所を決定するルールを定義します。 たとえば、2つの異なるリージョンからの監査イベントをルーティングするルートを定義し、さらにグローバルイベントもルーティングするように設定することができます。

グローバル・イベントおよびロケーション・ベースのイベントを収集できます。

  • グローバル・イベントは、すべてのリージョンでデータとリソースが広く同期されるようなアクティビティーがアカウント内で行われたことを報告するものです。
  • 位置情報に基づくイベントレポートは、 IBM のデータセンター拠点(US-SouthやUS-Eastなど)内でホストされている IBM Cloud サービスによって生成された、 アカウント内のアクティビティについて報告します。