次の方法で共有


コマンド ラインから SAP データ コネクタ エージェントをデプロイする

この記事では、SAP データ コネクタ エージェントをデプロイするためのコマンド ライン オプションについて説明します。 一般的なデプロイの場合、コマンド ラインではなくポータルを使用することをお勧めします。これは、コマンド ラインを使用してインストールされたデータ コネクタ エージェントを管理するには、コマンド ラインを使用する必要があるからです。

ただし、Azure Key Vault ではなく構成ファイルを使用して資格情報を保存している場合、または Kubernetes クラスターなど、データ コネクタを手動でデプロイする上級ユーザーの場合は、そうではなくこの記事の手順を使用してください。

1 つのマシン上で複数のデータ コネクタ エージェントを実行できますが、まずは 1 つだけ実行し、パフォーマンスを監視してから、コネクタ数を段階的に増やすことをお勧めします。 また、セキュリティ チームは、SAP BASIS チームの支援を受けてこの手順を実行することをお勧めします。

Note

この記事の対象はデータ コネクタ エージェントだけであり、SAP エージェントレス ソリューション (限定プレビュー) は対象ではありません。

前提条件

マネージド ID または登録済みアプリケーションを使用してデータ コネクタ エージェントをデプロイする

この手順では、新しいエージェントを作成し、コマンド ラインを使用して SAP システムに接続し、マネージド ID または Microsoft Entra ID 登録アプリケーションで認証する方法について説明します。

データ コネクタ エージェントをデプロイするには:

  1. デプロイ kickstart スクリプトをダウンロードして実行します。

    • マネージド ID の場合は、次のコマンド オプションのいずれかを使用します。

      • Azure パブリック商用クラウドの場合:

        wget -O sapcon-sentinel-kickstart.sh https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh && bash ./sapcon-sentinel-kickstart.sh
        
      • 21Vianet が運用する Microsoft Azure の場合は、コピーしたコマンドの末尾に --cloud mooncake を追加します。

      • Azure Government - US の場合は、コピーしたコマンドの末尾に --cloud fairfax を追加します。

    • 登録済みアプリケーションの場合は、次のコマンドを実行して、Microsoft Sentinel GitHub リポジトリからデプロイ kickstart スクリプトをダウンロードし、実行可能としてマークします。

      wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh
      chmod +x ./sapcon-sentinel-kickstart.sh
      

      前の手順でコピーしたアプリケーション ID、シークレット ("password")、テナント ID、キー コンテナー名を指定して、スクリプトを実行します。 次に例を示します。

      ./sapcon-sentinel-kickstart.sh --keymode kvsi --appid aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa --appsecret ssssssssssssssssssssssssssssssssss -tenantid bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb -kvaultname <key vault name>
      
    • 安全な SNC 構成を設定するには、次の基本パラメーターを指定します。

      • --use-snc
      • --cryptolib <path to sapcryptolib.so>
      • --sapgenpse <path to sapgenpse>
      • --server-cert <path to server certificate public key>

      クライアント証明書が .crt または .key 形式の場合は、次のスイッチを使用します:

      • --client-cert <path to client certificate public key>
      • --client-key <path to client certificate private key>

      クライアント証明書が .pfx または .p12 形式の場合は、次のスイッチを使用します。

      • --client-pfx <pfx filename>
      • --client-pfx-passwd <password>

      クライアント証明書がエンタープライズ CA によって発行された場合は、信頼チェーン内の各 CA に次のスイッチを追加します。

      • --cacert <path to ca certificate>

      次に例を示します。

      wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh
      chmod +x ./sapcon-sentinel-kickstart.sh    --use-snc     --cryptolib /home/azureuser/libsapcrypto.so     --sapgenpse /home/azureuser/sapgenpse     --client-cert /home/azureuser/client.crt --client-key /home/azureuser/client.key --cacert /home/azureuser/issuingca.crt    --cacert /home/azureuser/rootca.crt --server-cert /home/azureuser/server.crt
      

    このスクリプトを使用して、OS コンポーネントを更新し、Azure CLI と Docker ソフトウェアおよびその他の必要なユーティリティ (jq、netcat、curl) をインストールし、構成パラメーター値のプロンプトが表示されるようにします。 プロンプトの数を最小限に抑える場合、またはコンテナーのデプロイをカスタマイズする場合は、スクリプトに追加のパラメーターを指定します。 使用可能なコマンド ライン オプションの詳細については、「Kickstart スクリプト リファレンス」を参照してください。

  2. 画面の指示に従って SAP とキー コンテナーの詳細を入力し、デプロイを完了します。 デプロイが完了すると、次の確認メッセージが表示されます。

    The process has been successfully completed, thank you!
    

    スクリプト出力の Docker コンテナー名を書き留めます。 VM 上の Docker コンテナーの一覧を表示するには、次を実行します。

    docker ps -a
    

    次のステップでは、Docker コンテナーの名前を使います。

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

    この手順のコマンドを実行するには、Microsoft Sentinel に対して有効になっている Log Analytics ワークスペースのリソース グループ所有者である必要があります。 ワークスペースのリソース グループ所有者でない場合は、後でこの手順を実行することもできます。

    Microsoft Sentinel Business Applications エージェント オペレーター閲覧者のロールを VM の ID に割り当てます。

    1. 次のコマンドを実行してエージェント ID を取得します。<container_name> プレースホルダーは、kickstart スクリプトで作成した Docker コンテナーの名前に置き換えます。

      docker inspect <container_name> | grep -oP '"SENTINEL_AGENT_GUID=\K[^"]+
      

      たとえば、234fba02-3b34-4c55-8c0e-e6423ceb405b のようなエージェント ID が返されます。

    2. 次のコマンドを実行して、Microsoft Sentinel Business Applications エージェント オペレーター ロールと閲覧者ロールを割り当てます。

    az role assignment create --assignee-object-id <Object_ID> --role --assignee-principal-type ServicePrincipal "Microsoft Sentinel Business Applications Agent Operator" --scope /subscriptions/<SUB_ID>/resourcegroups/<RESOURCE_GROUP_NAME>/providers/microsoft.operationalinsights/workspaces/<WS_NAME>/providers/Microsoft.SecurityInsights/BusinessApplicationAgents/<AGENT_IDENTIFIER>
    
    az role assignment create --assignee-object-id <Object_ID> --role --assignee-principal-type ServicePrincipal "Reader" --scope /subscriptions/<SUB_ID>/resourcegroups/<RESOURCE_GROUP_NAME>/providers/microsoft.operationalinsights/workspaces/<WS_NAME>/providers/Microsoft.SecurityInsights/BusinessApplicationAgents/<AGENT_IDENTIFIER>
    

    プレースホルダーの値を次のように置き換えます。

    プレースホルダー Value
    <OBJ_ID> VM ID のオブジェクト ID。

    Azure で VM ID オブジェクト ID を見つけるには:
    - マネージド ID の場合、オブジェクト ID は VM の [ID] ページに表示されます。
    - サービス プリンシパルの場合は、Azure の [エンタープライズ アプリケーション] に移動します。 [すべてのアプリケーション] を選択し、VM を選択します。 オブジェクト ID が [概要] ページに表示されます。
    <SUB_ID> Microsoft Sentinel に対して有効になっている Log Analytics ワークスペースのサブスクリプション ID
    <RESOURCE_GROUP_NAME> Microsoft Sentinel に対して有効になっている Log Analytics ワークスペースのリソース グループ名
    <WS_NAME> Microsoft Sentinel に対して有効になっている Log Analytics ワークスペースの名前
    <AGENT_IDENTIFIER> 前のステップでコマンドを実行した後に表示されたエージェント ID。
  4. Docker コンテナーが自動的に起動するように構成するには、次のコマンドを実行します。<container-name> プレースホルダーは、コンテナーの名前に置き換えます。

    docker update --restart unless-stopped <container-name>
    

このデプロイ手順により、SAP データ コネクタ エージェントの構成の詳細を含む systemconfig.json ファイルが生成されます。 このファイルは、VM 上の /sapcon-app/sapcon/config/system ディレクトリ内にあります。

構成ファイルを使用してデータ コネクタをデプロイする

認証資格情報と構成データを格納する方法としては、Azure Key Vault をお勧めします。 この手順では、Azure Key Vault を使用できない場合に、代わりに構成ファイルを使用してデータ コネクタ エージェント コンテナーをデプロイする方法について説明します。

データ コネクタ エージェントをデプロイするには:

  1. エージェントをデプロイする仮想マシンを作成します。

  2. エージェントをインストールするマシンに SAP NetWeaver SDK を転送します。

  3. 次のコマンドを実行して、Microsoft Sentinel GitHub リポジトリからデプロイの Kickstart スクリプトをダウンロードし、実行可能としてマークします。

    wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh
    chmod +x ./sapcon-sentinel-kickstart.sh
    
  4. 次のスクリプトを実行します

    ./sapcon-sentinel-kickstart.sh --keymode cfgf
    

    このスクリプトを使用して、OS コンポーネントを更新し、Azure CLI と Docker ソフトウェアおよびその他の必要なユーティリティ (jq、netcat、curl) をインストールし、構成パラメーター値のプロンプトが表示されるようにします。 プロンプトの数を最小限に抑える場合、またはコンテナーのデプロイをカスタマイズする場合、必要に応じてスクリプトに追加のパラメーターを指定します。 詳細については、「Kickstart スクリプトのリファレンス」を参照してください。

  5. 画面の指示に従って、要求された詳細を入力し、デプロイを完了します。 デプロイが完了すると、次の確認メッセージが表示されます。

    The process has been successfully completed, thank you!
    

    スクリプト出力の Docker コンテナー名を書き留めます。 VM 上の Docker コンテナーの一覧を表示するには、次を実行します。

    docker ps -a
    

    次のステップでは、Docker コンテナーの名前を使います。

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

    この手順のコマンドを実行するには、ワークスペースのリソース グループ所有者である必要があります。 ワークスペースのリソース グループ所有者でない場合は、後でこのステップを実行することもできます。

    Microsoft Sentinel Business Applications エージェント オペレーター閲覧者のロールを VM の ID に割り当てます。

    1. 次のコマンドを実行してエージェント ID を取得します。<container_name> プレースホルダーは、Kickstart スクリプトで作成した Docker コンテナーの名前に置き換えます。

      docker inspect <container_name> | grep -oP '"SENTINEL_AGENT_GUID=\K[^"]+'
      

      たとえば、234fba02-3b34-4c55-8c0e-e6423ceb405b のようなエージェント ID が返されます。

    2. 次のコマンドを実行して、Microsoft Sentinel Business Applications エージェント オペレーター ロールと閲覧者ロールを割り当てます。

      az role assignment create --assignee-object-id <Object_ID> --role --assignee-principal-type ServicePrincipal "Microsoft Sentinel Business Applications Agent Operator" --scope /subscriptions/<SUB_ID>/resourcegroups/<RESOURCE_GROUP_NAME>/providers/microsoft.operationalinsights/workspaces/<WS_NAME>/providers/Microsoft.SecurityInsights/BusinessApplicationAgents/<AGENT_IDENTIFIER>
      
      az role assignment create --assignee-object-id <Object_ID> --role --assignee-principal-type ServicePrincipal "Reader" --scope /subscriptions/<SUB_ID>/resourcegroups/<RESOURCE_GROUP_NAME>/providers/microsoft.operationalinsights/workspaces/<WS_NAME>/providers/Microsoft.SecurityInsights/BusinessApplicationAgents/<AGENT_IDENTIFIER>
      

      プレースホルダーの値を次のように置き換えます。

      プレースホルダー Value
      <OBJ_ID> VM ID のオブジェクト ID。

      Azure で VM ID オブジェクト ID を確認するには: マネージド ID の場合、オブジェクト ID は VM の [ID] ページに表示されます。 サービス プリンシパルの場合は、Azure の [エンタープライズ アプリケーション] に移動します。 [すべてのアプリケーション] を選択し、VM を選択します。 オブジェクト ID が [概要] ページに表示されます。
      <SUB_ID> Microsoft Sentinel に対して有効になっている Log Analytics ワークスペースのサブスクリプション ID
      <RESOURCE_GROUP_NAME> Microsoft Sentinel に対して有効になっている Log Analytics ワークスペースのリソース グループ名
      <WS_NAME> Microsoft Sentinel に対して有効になっている Log Analytics ワークスペースの名前
      <AGENT_IDENTIFIER> 前のステップでコマンドを実行した後に表示されたエージェント ID。
  7. 次のコマンドを実行して、自動的に起動するように Docker コンテナーを構成します。

    docker update --restart unless-stopped <container-name>
    

このデプロイ手順により、SAP データ コネクタ エージェントの構成の詳細を含む systemconfig.json ファイルが生成されます。 このファイルは、VM 上の /sapcon-app/sapcon/config/system ディレクトリ内にあります。

SNC との安全な通信のために kickstart スクリプトを準備する

この手順では、SNC を使用して SAP システムとの安全な通信の設定を構成するデプロイ スクリプトを準備する方法について説明します。 SNC を使用している場合は、データ コネクタ エージェントをデプロイする前に、この手順を実行する必要があります。

SNC との安全な通信用にコンテナーを構成するには:

  1. libsapcrypto.sosapgenpse の各ファイルを、コンテナーを作成しているシステムに転送します。

  2. 秘密キーと公開キーの両方を含むクライアント証明書を、コンテナーを作成しているシステムに転送します。

    クライアント証明書とキーの可能な形式は、.p12.pfx、または Base-64 .crt および .key です。

  3. サーバー証明書 (公開キーのみ) を、コンテナーを作成しているシステムに転送します。

    サーバー証明書は Base-64 .crt 形式でなければなりません。

  4. クライアント証明書がエンタープライズ証明機関によって発行された場合は、発行元の CA 証明書とルート CA 証明書を、コンテナーを作成しているシステムに転送します。

  5. Microsoft Sentinel GitHub リポジトリから Kickstart スクリプトを取得します:

    wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh
    
  6. スクリプトのアクセス許可を変更して実行可能になるようにします。

    chmod +x ./sapcon-sentinel-kickstart.sh
    

詳細については、「Microsoft Sentinel for SAP アプリケーション データ コネクタ エージェントの Kickstart デプロイ スクリプト リファレンス」を参照してください。

SAP PAHI テーブルを監視する際に最適な結果を得るには、編集のために systemconfig.json ファイルを開き、[ABAP Table Selector](reference-systemconfig-json.md#abap-table-selector) セクションで、PAHI_FULLPAHI_INCREMENTAL パラメーターを両方とも有効にします。

詳細については、「Systemconfig.json ファイルのリファレンス」と「PAHI テーブルが定期的に更新されていることを確認する」を参照してください。

接続と正常性を確認する

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

次のステップ

コネクタがデプロイされたら、SAP アプリケーション向け Microsoft Sentinel ソリューションのコンテンツのデプロイに進みます。