次の方法で共有


データ コネクタ エージェント コンテナーを配置して SAP システムを接続する

SAP アプリケーション向け Microsoft Sentinel ソリューションが正しく動作するには、最初に SAP データを Microsoft Sentinel に取り込む必要があります。 これを達成するために、ソリューションの SAP データ コネクタ エージェントをデプロイする必要があります。

この記事では、SAP データ コネクタ エージェントをホストし、SAP システムに接続するコンテナーを配置する方法について説明します。これは、SAP アプリケーション向け Microsoft Sentinel ソリューションを配置するための 3 番目の手順です。 この記事の手順は、必ず示された順序で実行してください。

SAP ソリューションの配置フローの図。[データ エージェント コンテナーの配置] ステップが強調表示されています。

この記事の内容は、セキュリティインフラストラクチャSAP BASIS チームに関係します。

前提条件

データ コネクタ エージェントを配置する前に、次を実行します。

デモ ビデオを見る

この記事で説明されている配置プロセスを説明した次のビデオ デモのいずれかをご覧ください。

ポータルのオプションについての詳細:

Azure KeyVault の使用に関する詳細が含まれています。 音声なし、キャプション付きのデモのみ:

仮想マシンを作成し、資格情報へのアクセスを構成する

最適なパフォーマンスを確保し、潜在的な競合を回避するために、データ コネクタ エージェント コンテナー用の専用の仮想マシンを作成することをお勧めします。 詳細については、「システムの前提条件」を参照してください。

SAP シークレットと認証シークレットは、Azure Key Vault に保存することをお勧めします。 キー コンテナーへのアクセス方法は、仮想マシン (VM) が配置されている場所によって異なります。

デプロイ方法 アクセス方法
Azure VM 上のコンテナー Azure Key Vault にアクセスするには、Azure のシステム割り当てマネージド ID を使用することをお勧めします。

システム割り当てマネージド ID を使用できない場合は、Microsoft Entra ID 登録済みアプリケーション サービス プリンシパルを使って、または最後の手段としては構成ファイルを使って、Azure Key Vault に対するコンテナーの認証を行うこともできます。
オンプレミスの VM 上のコンテナー、またはサード パーティのクラウド環境上の VM Microsoft Entra ID 登録済みアプリケーション サービス プリンシパルを使用して Azure Key Vault に対して認証します。

登録済みアプリケーションまたはサービス プリンシパルを使用できない場合は、構成ファイルを使用して資格情報を管理しますが、この方法は推奨されません。 詳細については、「構成ファイルを使用してデータ コネクタを配置する」を参照してください。

詳細については、以下を参照してください:

通常、仮想マシンはインフラストラクチャ チームによって作成されます。 資格情報へのアクセスの構成とキー コンテナーの管理は、通常、セキュリティ チームによって行われます。

Azure VM でマネージド ID を作成する

  1. 次のコマンドを実行して Azure に VM を作成します (<placeholders> はお使いの環境での実際の名前に置き換えてください)。

    az vm create --resource-group <resource group name> --name <VM Name> --image Canonical:0001-com-ubuntu-server-focal:20_04-lts-gen2:latest --admin-username <azureuser> --public-ip-address "" --size  Standard_D2as_v5 --generate-ssh-keys --assign-identity --role <role name> --scope <subscription Id>
    
    

    詳細については、「クイック スタート: Azure CLI を使用して Linux 仮想マシンを作成する」を参照してください。

    重要

    VM を作成したら、必ず、組織に適切なセキュリティ要件とセキュリティ強化手順を適用してください。

    このコマンドにより VM リソースが作成され、次のような出力が生成されます。

    {
      "fqdns": "",
      "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/resourcegroupname/providers/Microsoft.Compute/virtualMachines/vmname",
      "identity": {
        "systemAssignedIdentity": "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy",
        "userAssignedIdentities": {}
      },
      "location": "westeurope",
      "macAddress": "00-11-22-33-44-55",
      "powerState": "VM running",
      "privateIpAddress": "192.168.136.5",
      "publicIpAddress": "",
      "resourceGroup": "resourcegroupname",
      "zones": ""
    }
    
  2. systemAssignedIdentity GUID をコピーします。これは後の手順で使用します。 これは、ご自分のマネージド ID です。

Key Vault を作成します

この手順では、SAP 認証シークレットなどのエージェント構成情報を格納するキー コンテナーを作成する方法について説明します。 既存のキー コンテナーを使う場合は、手順 2 に直接進んでください。

キー コンテナーを作成するには:

  1. <placeholder> の値を実際の名前に置き換えて、次のコマンドを実行します。

    az keyvault create \
      --name <KeyVaultName> \
      --resource-group <KeyVaultResourceGroupName>
    
  2. キー コンテナーの名前と、そのリソース グループの名前をコピーしておきます。 次の手順でキー コンテナーのアクセス許可を割り当て、デプロイ スクリプトを実行するときに、これらが必要になります。

キー コンテナーのアクセス許可を割り当てる

  1. キー コンテナーで、前に作成してコピーしたID に、次の Azure ロールベースのアクセス制御またはコンテナー アクセス ポリシーのアクセス許可を、シークレットのスコープで割り当てます。

    権限モデル 必要なアクセス許可
    Azure ロールベースのアクセス制御 Key Vault Secrets User
    コンテナー アクセス ポリシー getlist

    ポータルのオプションを使ってアクセス許可を割り当てるか、次のいずれかのコマンドを実行してキー コンテナー シークレットのアクセス許可を ID に割り当てます (<placeholder> の値を実際の名前に置き換えます)。 作成した ID の種類のタブを選んでください。

    コマンドで指定されたポリシーを使って、VM はキー コンテナーのシークレットの一覧を取得して読み取ることができます。

    • Azure ロールベースのアクセス制御アクセス許可モデル:

      az role assignment create --assignee-object-id <ManagedIdentityId> --role "Key Vault Secrets User" --scope /subscriptions/<KeyVaultSubscriptionId>/resourceGroups/<KeyVaultResourceGroupName> /providers/Microsoft.KeyVault/vaults/<KeyVaultName>
      
    • コンテナー アクセス ポリシー アクセス許可モデル:

      az keyvault set-policy -n <KeyVaultName> -g <KeyVaultResourceGroupName> --object-id <ManagedIdentityId> --secret-permissions get list
      
  2. 同じキー コンテナーで、データ コネクタ エージェントを構成しているユーザーに、次の Azure ロールベースのアクセス制御またはコンテナー アクセス ポリシーのアクセス許可を、シークレットのスコープで割り当てます。

    権限モデル 必要なアクセス許可
    Azure ロールベースのアクセス制御 Key Vault Secrets Officer
    コンテナー アクセス ポリシー getlistset, delete

    ポータルのオプションを使ってアクセス許可を割り当てるか、次のいずれかのコマンドを実行してキー コンテナー シークレットのアクセス許可をユーザーに割り当てます (<placeholder> の値を実際の名前に置き換えます)。

    • Azure ロールベースのアクセス制御アクセス許可モデル:

      az role assignment create --role "Key Vault Secrets Officer" --assignee <UserPrincipalName> --scope /subscriptions/<KeyVaultSubscriptionId>/resourceGroups/<KeyVaultResourceGroupName>/providers/Microsoft.KeyVault/vaults/<KeyVaultName>
      
    • コンテナー アクセス ポリシー アクセス許可モデル:

      az keyvault set-policy -n <KeyVaultName> -g <KeyVaultResourceGroupName> --upn <UserPrincipalName>--secret-permissions get list set delete
      

ポータルからデータ コネクタ エージェントを配置する (プレビュー)

VM とキー コンテナーの作成が済んだので、次の手順は、新しいエージェントを作成し、いずれかの SAP システムに接続することです。 1 つのマシン上で複数のデータ コネクタ エージェントを実行できますが、まずは 1 つだけ実行し、パフォーマンスを監視してから、コネクタ数を段階的に増やすことをお勧めします。

この手順では、新しいエージェントを作成し、Azure ポータルまたは Defender ポータルを使用して SAP システムに接続する方法について説明します。 この手順は、セキュリティチームが SAP BASIS チームの支援を得ながら実行することをお勧めします。

ポータルからのデータ コネクタ エージェントの配置は、Azure portal と、ワークスペースを統合セキュリティ運用プラットフォームにオンボードした場合には Defender ポータルの両方からサポートされます。

配置はコマンド ラインからもサポートされていますが、一般的な配置にはポータルを使用することをお勧めします。 コマンド ラインを使用して配置されたデータ コネクタ エージェントは、ポータル経由ではなく、コマンド ライン経由でのみ管理できます。 詳細については、「コマンド ラインから SAP データ コネクタ エージェントを配置する」を参照してください。

重要

コンテナーの配置と SAP システムへの接続の作成を Azure ポータルから行う機能は、現在プレビュー段階です。 Azure プレビューの追加使用条件には、ベータ版、プレビュー版、またはまだ一般提供されていない Azure 機能に適用される追加の法律条項が含まれています。

前提条件:

  • ポータルを使用してデータ コネクタ エージェントを配置するには、次が必要です。

    • マネージド ID または登録済みアプリケーションを使用した認証
    • Azure Key Vault に格納された資格情報

    これらの前提条件が満たされていない場合は、代わりにコマンド ラインから SAP データ コネクタ エージェントを配置します

  • データ コネクタ エージェントを配置するには、データ コネクタ エージェント マシンに対する sudo 権限またはルート権限も必要です。

  • Secure Network Communications (SNC) を使って、セキュリティ保護された接続経由で NetWeaver/ABAP ログを取り込みたい場合には、次のものが必要です。

    • sapgenpse バイナリと libsapcrypto.so ライブラリへのパス
    • クライアント証明書の詳細

    詳細については、「セキュリティで保護された接続に SNC を使用するようにシステムを構成する」を参照してください。

データ コネクタ エージェントを配置するには次を行います。

  1. エージェントをインストールする予定の新しく作成した VM に、sudo 特権を持つユーザーとしてサインインします。

  2. マシンに SAP NetWeaver SDK をダウンロードまたは転送します。

  3. Microsoft Sentinel 上で、[構成]>[データ コネクタ] の順に選択します。

  4. 検索バーに「SAP」と入力します。 検索結果から SAP 向け Microsoft Sentinel を選んで、[コネクタ ページを開く] を選びます。

  5. [Configuration] 領域で、[Add new agent (Preview)] を選択します。

    SAP API ベースのコレクター エージェントを追加する手順のスクリーンショット。

  6. [コレクター エージェントの作成] ウィンドウで、次のエージェントの詳細を入力します。

    名前 説明
    エージェント名 組織用に、わかりやすいエージェント名を入力します。 名前に含めることができるのは次の種類の文字のみという点を除き、特定の名前付け規則は推奨していません。
    • a-z
    • A-Z
    • 0-9
    • _ (アンダースコア)
    • 。 (ピリオド)
    • - (ダッシュ)
    サブスクリプション / キー コンテナー それぞれのドロップダウンから [サブスクリプション][キー コンテナー] を選びます。
    エージェント VM 上の NWRFC SDK zip ファイル パス SAP NetWeaver リモート関数呼び出し (RFC) ソフトウェア開発キット (SDK) アーカイブ (.zip ファイル) が含まれる VM 内のパスを入力します。

    このパスに、構文 <path>/NWRFC<version number>.zip の SDK バージョン番号が含まれていることを確認します。 (例: /src/test/nwrfc750P_12-70002726.zip)。
    SNC 接続サポートを有効にする SNC を使用してセキュリティで保護された接続経由で NetWeaver/ABAP ログを取り込むことを選択します。

    このオプションを選ぶ場合は、sapgenpse バイナリと libsapcrypto.so ライブラリが含まれるパスを、[エージェント VM 上の SAP 暗号化ライブラリ パス] に入力します。

    SNC 接続を使う場合は、エージェントのデプロイを終えた後で戻って SNC 接続を有効にすることはできないため、この段階で [SNC 接続サポートを有効にする] を選んでください。 後でこの設定を変更する場合は、代わりに新しいエージェントを作成することをお勧めします。
    Azure Key Vault に対する認証 マネージド ID を使ってキー コンテナーに対する認証を行うには、既定で選ばれる [マネージド ID] オプションのままにします。 登録済みアプリケーションを使ってキー コンテナーの認証を行うには、[アプリケーション ID] を選びます。

    事前にマネージド ID または登録済みアプリケーションを設定しておく必要があります。 詳しくは、「仮想マシンを作成し、資格情報へのアクセスを構成する」をご覧ください。

    次に例を示します。

    [Create a collector agent] 領域のスクリーンショット。

  7. [Create] を選択し、デプロイを完了する前にレコメンデーションを確認します。

    エージェントをデプロイする最終段階のスクリーンショット

  8. SAP データ コネクタ エージェントをデプロイするには、Microsoft Sentinel Business Applications エージェント オペレーター閲覧者のロールを使って、Microsoft Sentinel ワークスペースへの特定のアクセス許可を、エージェントの VM ID に付与する必要があります。

    このステップでコマンドを実行するには、Microsoft Sentinel ワークスペースのリソース グループ所有者である必要があります。 ワークスペースのリソース グループ所有者でない場合は、エージェントのデプロイが完了した後でこの手順を実行することもできます。

    あと数ステップで完了ですの下にある手順 1 の "ロール割り当てコマンド" をコピー し、エージェント VM 上で実行し、[Object_ID] プレースホルダーを VM ID のオブジェクト ID に置き換えます。 次に例を示します。

    ステップ 1 のコマンドの [コピー] アイコンのスクリーンショット。

    Azure 上では、VM ID のオブジェクト ID は次のようにして見つけます。

    • マネージド ID の場合、オブジェクト ID は VM の [ID] ページに一覧表示されます。

    • サービス プリンシパルの場合は、Azure の [エンタープライズ アプリケーション] に移動します。 [すべてのアプリケーション] を選択し、VM を選択します。 オブジェクト ID が [概要] ページに表示されます。

    このコマンドは、Microsoft Sentinel Business Applications エージェント オペレーター閲覧者の Azure ロールを、VM のマネージド ID またはアプリケーション ID に割り当てます。これには、ワークスペース内の指定されたエージェントのデータのスコープのみが含まれます。

    重要

    CLI 経由で Microsoft Sentinel Business Applications エージェント オペレーター ロールと閲覧者ロールを割り当てると、ワークスペース内の指定されたエージェントのデータのスコープに対してのみ、ロールが割り当てられます。 これは最も安全であるため、推奨されるオプションです。

    Azure portal 経由でロールを割り当てる必要がある場合は、Microsoft Sentinel ワークスペースのみなどの小さなスコープでロールを割り当てることをお勧めします。

  9. ステップ 2 のエージェント デプロイ コマンドの横にある [コピー] エージェントの配置コマンドの横にある [コピー] アイコンのスクリーンショット。 を選びます。 次に例を示します。

    ステップ 2 でコピーするエージェント コマンドのスクリーンショット。

  10. コマンド ラインを別の場所にコピーし、[閉じる] を選択します。

    関連するエージェント情報が Azure Key Vault に展開され、新しいエージェントが [Add an API based collector agent] の下の表に表示されます。

    この段階では、エージェントの [正常性] 状態は、[インストールが完了していません。指示に従ってください] です。 エージェントが正常にインストールされると、状態が [エージェントは正常] に変わります。 更新には最大で 10 分かかります。 次に例を示します。

    SAP データ コネクタ ページでの API ベースのコレクター エージェントの正常性状態のスクリーンショット。

    Note

    この表には、Azure portal を使ってデプロイしたエージェントのエージェント名と正常性状態のみが表示されます。 コマンド ラインを使ってデプロイされたエージェントは、ここには表示されません。 詳細については、代わりに [コマンド ライン] タブを参照してください。

  11. エージェントをインストールする VM でターミナルを開き、前のステップでコピーしたエージェント配置コマンドを実行します。 この手順には、データ コネクタ エージェント マシンに対する sudo 権限またはルート権限が必要です。

    このスクリプトは、OS のコンポーネントを更新し、Azure CLI、Docker ソフトウェア、その他の必要なユーティリティ (jq、netcat、curl など) をインストールします。

    必要に応じてスクリプトに追加のパラメーターを指定し、コンテナーの配置をカスタマイズします。 使用可能なコマンド ライン オプションの詳細については、「Kickstart スクリプト リファレンス」を参照してください。

    コマンドをもう一度コピーする必要がある場合は、[正常性] 列の右にある [表示] [正常性] 列の横にある [表示] アイコンのスクリーンショット。 を選択し、右下のエージェント デプロイ コマンドの横にあるコマンドをコピーします。

  12. SAP アプリケーション向け Microsoft Sentinel ソリューションの [データ コネクタ] ページ上の [構成] 領域で [新しいシステムの追加 (プレビュー)] を選択し、次の詳細を入力します。

    • [エージェントの選択] では、前に作成したエージェントを選択します。

    • [システム識別子] では、サーバーの種類を選択します。

      • ABAP サーバー
      • ABAP SAP セントラル サービス (ASCS) の一部としてメッセージ サーバーを使用する場合はメッセージ サーバー
    • 続いて、サーバーの種類に関連する詳細を定義します。

      • ABAP サーバーの場合は、ABAP アプリケーション サーバーの IP アドレス/FQDN、システム ID と番号、およびクライアント ID を入力します。
      • メッセージ サーバーの場合は、メッセージ サーバーの IP アドレス/FQDN、ポート番号またはサービス名、ログオン グループを入力します

    完了したら、[次へ: 認証] を選択します。

    次に例を示します。

    [新しいシステムの追加] 領域の [システム設定] タブのスクリーンショット。

  13. [認証] タブで、次の詳細を入力します。

    • 基本認証の場合は、ユーザーとパスワードを入力します。
    • エージェントの設定時に SNC 接続を選択した場合は、[SNC] を選択し、証明書の詳細を入力します。

    完了したら、[次へ: ログ] を選びます。

  14. [ログ] タブでは、SAP から取り込むログを選択し、さらに [次へ: 確認して作成] を選択します。 次に例を示します。

    [新しいシステムの追加] サイド ウィンドウの [ログ] タブのスクリーンショット。

  15. (省略可能) SAP PAHI テーブルを監視する際に最適な結果を得るには、[構成履歴] を選択します。 詳細については、「PAHI テーブルが定期的に更新されていることを確認する」を参照してください。

  16. 指定した設定を確認します。 [戻る] を選んで設定を変更するか、[デプロイ] を選んでシステムをデプロイします。

定義したシステム構成は、デプロイ時に定義した Azure Key Vault にデプロイされます。 システムの詳細が [Configure an SAP system and assign it to a collector agent] の下の表に表示されます。 この表には、ポータルまたは別の方法を使って追加したシステムの関連エージェント名、SAP システム ID (SID)、および正常性状態が表示されます。

この段階では、システムの [Health] 状態は [Pending] になっています。 エージェントが正常に更新されると、Azure Key Vault から構成がプルされ、状態が [System healthy] に変わります。 更新には最大で 10 分かかります。

接続と正常性を確認する

SAP データ コネクタ エージェントを配置したら、エージェントの正常性と接続性を確認します。 詳細については、「SAP システムの正常性とロールを監視する」を参照してください。

次のステップ

コネクタが配置されたら、SAP アプリケーション向け Microsoft Sentinel ソリューションのコンテンツの配置に進みます。 具体的には、ウォッチリストの詳細を構成することは、検出と脅威保護を有効にする上で不可欠な手順です。