次の方法で共有


SAP アプリケーション向け Microsoft Sentinel ソリューションのデプロイのトラブルシューティング

この記事には、Microsoft Sentinel を使用して SAP 環境に関する正確かつタイムリーなデータ インジェストと監視を確実に行うために役立つトラブルシューティング手順が含まれています。

この記事では、2023 年 6 月 22 日以降にリリースされたエージェント バージョンに使用される systemconfig.json ファイルを参照します。 これより以前のバージョンのエージェントを使用している場合は、代わりに systemconfig.ini ファイルを参照してください。

便利な Docker コマンド

SAP 向け Microsoft Sentinel データ コネクタのトラブルシューティングを行う場合、次のコマンドが役に立つ可能性があります。

機能 コマンド
Docker コンテナーを停止する docker stop sapcon-[SID]
Docker コンテナーを起動する docker start sapcon-[SID]
Docker システム ログを表示する docker logs -f sapcon-[SID]
Docker コンテナーを入力する docker exec -it sapcon-[SID] bash

詳細については、Docker CLI のドキュメントをご覧ください。

システム ログを確認する

データ コネクタをインストールまたはリセットした後に、システム ログを確認することを強くお勧めします。

次を実行します。

docker logs -f sapcon-[SID]

デバッグ モード印刷を有効/無効にする

  1. データ コレクター エージェント コンテナーの仮想マシンで、/opt/sapcon/[SID]/systemconfig.json ファイルを編集します。

  2. [General] セクションが以前に定義されていない場合は定義します。 このセクションでは、logging_debug = True を定義してデバッグ モード印刷を有効にするか、logging_debug = False を定義してそれを無効にします。

    次に例を示します。

    [General]
    logging_debug = True
    
  3. ファイルを保存します。

この変更は、ファイルを保存してから約 2 分後に有効になります。 Docker コンテナーを再起動する必要はありません。

すべてのコンテナ―実行ログを表示する

SAP アプリケーション向け Microsoft Sentinel ソリューションのデータ コネクタ デプロイのコネクタ実行ログは、VM 上の /opt/sapcon/[SID]/log/ に格納されます。 ログ ファイル名は OmniLog.log です。 ログファイルの履歴は、OmniLog.log.1OmniLog.log.2 などのように、末尾に ".[数字]" を付けて保持されます。

SAP 向け Microsoft Sentinel データ コネクタの構成ファイルを確認および更新する

ポータルを使用してエージェントをデプロイした場合は、引き続きポータルを使用して、構成設定の保守や変更を行うことができます。

コマンド ラインを使用してデプロイした場合、または構成ファイルを手動で直接更新する場合は、次の手順を行います。

  1. VM で、構成ファイル sapcon/[SID]/systemconfig.json を開きます。

  2. 必要に応じて構成を更新し、ファイルを保存します。 詳細については、SAP アプリケーション向け Microsoft Sentinel ソリューションsystemconfig.jsonのファイル リファレンスに関するページを参照してください。

この変更は、ファイルを保存してから約 2 分後に有効になります。 Docker コンテナーを再起動する必要はありません。

Microsoft Sentinel for SAP データ コネクタをリセットする

次の手順では、コネクタをリセットし、過去 30 分間の SAP ログを再取り込みします。

  1. コネクタを停止します。 次を実行します。

    docker stop sapcon-[SID]
    
  2. /opt/sapcon/[SID] ディレクトリから、metadata.db ファイルを削除します。 次を実行します。

    cd /opt/sapcon/<SID>
    rm metadata.db
    

    注意

    metadata.db ファイルには各ログの最後のタイムスタンプが含まれ、重複を防止します。

  3. コネクタを再度開始します。 次を実行します。

    docker start sapcon-[SID]
    

作業を終えたら、必ずシステム ログを確認します

一般的な問題

SAP 向け Microsoft Sentinel データ コネクタとセキュリティ コンテンツの両方をデプロイすると、次のエラーまたは問題が発生する可能性があります。

破損した、または見つからない SAP SDK ファイル

このエラーは、PyRfc でコネクタの起動に失敗した場合、または zip 関連のエラー メッセージが表示された場合に発生することがあります。

  1. SAP SDK を再インストールします。
  2. 正しい Linux 64 ビット バージョン (nwrfc750P_8-70002752.zip など) を使用していることを確認します。

データ コネクタを手動でインストールした場合は、SDK ファイルを Docker コンテナーにコピーしたことを確認してください。

次を実行します。

docker cp nwrfc750P_8-70002752.zip /sapcon-app/inst/

大規模なシステムに ABAP ランタイム エラーが表示される

大規模なシステムに ABAPランタイム エラーが表示される場合は、小さなチャンク サイズを設定してみてください。

  1. /opt/sapcon/[SID]/systemconfig.json ファイルを編集し、コネクタの構成セクションで timechunk = 5 を定義します。

    次に例を示します。

    [Connector Configuration]
    timechunk = 5
    
  2. ファイルを保存します。

この変更は、ファイルを保存してから約 2 分後に有効になります。 Docker コンテナーを再起動する必要はありません。

注意

timechunk のサイズは、分単位で定義されます。

監査ログが空か、監査ログが取得されず、特別なエラー メッセージも表示されない

  1. SAP で監査ログが有効になっているか確認します。
  2. SM19 または RSAU_CONFIG トランザクションを確認します。
  3. 必要に応じてイベントを有効にします。
  4. コネクタ ログに特別なエラーが表示されずに、SAP SM20 または RSAU_READ_LOG にメッセージが到着し、存在していることを確認します。

キー コンテナー内のワークスペース ID またはキーが正しくない

デプロイ スクリプトに間違ったワークスペース ID またはキーを入力したことに気付いた場合は、Azure Key Vault に格納されている資格情報を更新します。

Azure KeyVault で資格情報を確認した後、コンテナーを再起動します。

docker restart sapcon-[SID]

キー コンテナーの SAP ABAP ユーザー資格情報が正しくない

資格情報を確認し、必要に応じて修正して、Azure Key Vault の ABAPUSERABAPPASS の値に正しい値を適用します。

次に、コンテナーを再起動します。

docker restart sapcon-[SID]

固定構成で SAP ABAP ユーザー資格情報が正しくない

固定構成では、パスワードが systemconfig.ini 構成ファイルに直接格納されます。

資格情報が正しくない場合は、資格情報を確認します。

base64 暗号化を使用して、ユーザーとパスワードを暗号化します。 https://www.base64encode.org/ のようなオンライン暗号化ツールを使用して、資格情報を暗号化することができます。

ABAP (SAP ユーザー) アクセス許可がない

"..バックエンド RFC 承認がありません..." のようなエラー メッセージが表示される場合には、SAP の承認とロールが正しく適用されていません。

  1. 変更要求転送の一部として MSFTSEN/SENTINEL_CONNECTOR ロールがインポートされ、コネクタ ユーザーに適用されていることを確認してください。

  2. SAP トランザクション PFCG を使用して、ロールの生成とユーザー比較プロセスを実行します。

ブックまたはアラートにデータが見つからない

Microsoft Sentinel ブックまたはアラートにデータがないことがわかった場合は、Auditlog ポリシーが SAP 側で正しく有効になっており、コンテナー ログ ファイルにエラーがないことを確認します。

この手順には、RSAU_CONFIG_LOG トランザクションを使用します。

詳細については、SAP ドキュメントおよび「Microsoft Sentinel で SAP HANA 監査ログを収集する」を参照してください。

SAP 監査ログに IP アドレスまたはトランザクション コード フィールドがない

SAP BASIS 7.5 SP12 以降のバージョンを使用する SAP システムの場合、Microsoft Sentinel では、ABAPAuditLog_CL および SAPAuditLog テーブルに追加のフィールドを反映できます。

7.5 SP12 以降の SAP BASIS バージョンを使用しており、SAP 監査ログに IP アドレスまたはトランザクション コードのフィールドがない場合は、データを抽出している SAP システムに、関連する変更要求 (トランスポート) が含まれていることを確認します。 詳細については、「追加のデータ取得のサポートを構成する (推奨)」を参照してください。

SAP 変更要求が見つからない

必要な SAP 変更要求が見つからないというエラーが表示される場合は、システムに正しい SAP 変更要求がインポートされていることを確認します。 詳細については、「SAP 前提条件」および「Microsoft Sentinel ソリューション用に SAP システムを構成する」を参照してください。

SAP テーブルのデータ ログにデータが表示されない

SAP BASIS 7.5 SP12 以降のバージョンを使用する SAP システムの場合、Microsoft Sentinel では、ABAPTableDataLog_CL テーブルにテーブル データ ログの変更を反映できます。

データが ABAPTableDataLog_CL テーブルに表示されていない場合は、データを抽出する SAP システムに関連する変更要求 (トランスポート) が含まれていることをご確認ください。 詳細については、「追加のデータ取得のサポートを構成する (推奨)」を参照してください。

レコードがない/レコードが遅れている

データ コレクター エージェントが動作するには、タイム ゾーン情報が正確である必要があります。 SAP 監査ログと変更ログにレコードがないことがわかった場合、またはレコードが常に数時間遅れる場合は、SAP TZCUSTHELP レポートにエラーが表示されていないかどうかを確認します。 詳細については、SAP ノート 481835 を参照してください。

また、データ コレクター エージェント コンテナーがホストされている仮想マシンのクロックに問題がある可能性があり、VM のクロックが UTC からずれていると、データ収集に影響します。 さらに重要なのは、SAP システム マシンとデータ コレクター エージェント マシンの両方のクロックが一致している必要があることです。

ネットワーク接続の問題

SAP 環境または Microsoft Sentinel へのネットワーク接続の問題が発生している場合は、ネットワーク接続を確認し、データが予想どおり流れていることを確認します。

次のような一般的な問題があります。

  • Docker コンテナーと SAP ホストの間のファイアウォールによってトラフィックがブロックされている可能性があります。 SAP ホストでは、開いている必要がある 32xx5xx1333xx (xx は SAP インスタンス番号) の TCP ポートを介して通信を受信します。

  • SAP エージェント ホストから Microsoft Container Registry または Azure への送信通信にはプロキシ構成が必要です。 これは通常、インストールに影響を与え、HTTP_PROXY および HTTPS_PROXY 環境変数を構成する必要があります。 Docker create / run コマンドに -e フラグを追加して、コンテナーの作成時に環境変数を Docker コンテナーに取り込むこともできます。

監査ログを取得しようとすると警告が出て失敗する

必要な構成を行わないで監査ログを取得しようとして、プロセスが失敗して警告が発生した場合は、次のいずれかの方法を使用して SAP 監査ログを取得できることを確認します。

  • 古いバージョンで XAL という互換性モードを使用する
  • 最近修正プログラムが適用されていないバージョンを使用する
  • Microsoft Sentinel データ コネクタ エージェントへの接続を変更しない。 詳細については、「Microsoft Sentinel ソリューション用に SAP システムを構成する」を参照してください。

システムは必要に応じて互換性モードに自動的に切り替わりますが、手動で切り替えることが必要な場合があります。 互換性モードに手動で切り替えるには:

  1. /opt/sapcon/[SID]/systemconfig.json ファイルを編集します。

  2. [Connector Configuration] セクションで、auditlogforcexal = True を定義します。

    次に例を示します。

    [Connector Configuration]
    auditlogforcexal = True
    
  3. ファイルを保存します。

この変更は、ファイルを保存してから約 2 分後に有効になります。 Docker コンテナーを再起動する必要はありません。

SAPCONTROL または JAVA サブシステムが接続できない

OS ユーザーが有効であり、ターゲットの SAP システムで次のコマンドを実行できるかどうか確認します。

sapcontrol -nr <SID> -function GetSystemInstanceList

SAPCONTROL または JAVA サブシステムが、「SAP サーバー 'Etc/NZST' の構成とネットワーク アクセスを確認してください」のようなタイムゾーン関連のエラー メッセージが表示されて失敗する場合には、標準のタイムゾーン コードを使用しているかどうか確認します。

たとえば、javatz = GMT+12 または abaptz = GMT-3** を使用します。

初期読み込み後に監査ログ データが取り込まれない

RSAU_READ_LOAD または SM200 のいずれかのトランザクションに表示される SAP 監査ログ データが、初期読み込み後に Microsoft Sentinel に取り込まれない場合は、SAP システムと SAP ホスト オペレーティング システムの構成が間違っている可能性があります。

  • 初期読み込みは、Microsoft Sentinel for SAP データ コネクタの新規インストール後、または metadata.db ファイルが削除された後に取り込まれます。
  • 誤った構成の例として、STZAC トランザクション内で SAP システムのタイムゾーンが CET に設定されているのに、SAP ホスト オペレーティング システムのタイム ゾーンが UTC に設定されている場合があります。

構成の誤りを確認するには、トランザクション SE38RSDBTIME レポートを実行します。 SAP システムと SAP ホスト オペレーティング システムの間で不一致が見つかった場合:

  1. Docker コンテナーを停止します。 実行

    docker stop sapcon-[SID]
    
  2. /opt/sapcon/[SID] ディレクトリから、metadata.db ファイルを削除します。 実行 (Run):

    rm /opt/sapcon/[SID]/metadata.db
    
  3. SAP システムと SAP ホスト オペレーティング システムが、同じタイム ゾーンなど、一致する設定になるように更新します。 詳細については、SAP コミュニティの Wiki を参照してください。

  4. もう一度コンテナーを起動します。 実行 (Run):

    docker start sapcon-[SID]
    

その他の予期せぬ問題

この記事に記載されていない予期せぬ問題がある場合は、次のステップを試してください。

ヒント

大きな構成変更を行った後には、コネクタをリセットし、アップグレードが最新であることを確認することをお勧めします。

SAP アプリケーション向け Microsoft Sentinel ソリューションの詳細については、以下を参照してください。

参照ファイル:

詳細については、Microsoft Sentinel ソリューションに関する記事を参照してください。