你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

更新适用于 SAP 的 Microsoft Sentinel 应用程序数据连接器代理

本文介绍如何将已存在的适用于 SAP 的 Microsoft Sentinel 数据连接器更新到其最新版本,以便可以使用最新的功能和改进。

在数据连接器代理更新过程中,可能会短暂停机约 10 秒。 为了确保数据完整性,数据库条目会存储上次提取的日志的时间戳。 更新完成后,数据提取过程将从上次提取的日志恢复,防止重复项并确保无缝数据流。

本文中介绍的自动或手动更新仅与 SAP 连接器代理相关,与适用于 SAP 的 Microsoft Sentinel 解决方案应用程序无关。 代理需要是最新的才能成功更新解决方案。 解决方案会单独更新,就像任何其他 Microsoft Sentinel 解决方案一样。

本文中的内容与安全性、基础结构和 SAP BASIS 团队相关。

先决条件

开始之前:

为 SAP 数据连接器代理配置自动更新(预览版)

所有现有容器特定容器的连接器代理配置自动更新。

本节中所述的命令会创建一个 cron 作业,该作业会每天运行,检查更新,并将代理更新到最新 GA 版本。 运行比最新 GA 版本更加新的代理预览版的容器不会更新。 自动更新的日志文件位于收集器计算机上,位于 /var/log/sapcon-sentinel-register-autoupdate.log

为代理配置一次自动更新后,它始终会配置自动更新。

重要

自动更新 SAP 数据连接器代理目前处于预览版阶段。 Azure 预览版补充条款包含适用于 beta 版、预览版或其他尚未正式发布的 Azure 功能的其他法律条款。

为所有现有容器配置自动更新

若要为具有已连接的 SAP 代理的所有现有容器启用自动更新,请在收集器机器上运行以下命令:

wget -O sapcon-sentinel-auto-update.sh https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-auto-update.sh && bash ./sapcon-sentinel-auto-update.sh 

如果你处理的是多个容器,则 cron 作业会更新在你运行原始命令时就存在的所有容器上的代理。 如果在创建初始 cron 作业后添加容器,则不会自动更新新的容器。 若要更新这些容器,请运行额外的命令来添加它们

在特定容器上配置自动更新

若要为特定容器配置自动更新(例如,如果你在运行原始自动化命令后添加了容器),请在收集器计算机上运行以下命令:

wget -O sapcon-sentinel-auto-update.sh https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-auto-update.sh && bash ./sapcon-sentinel-auto-update.sh --containername <containername> [--containername <containername>]...

或者,请在 /opt/sapcon/[SID 或代理 GUID]/settings.json 文件中,将每个容器的 auto_update 参数定义为 true

关闭自动更新

若要关闭容器的自动更新,请打开 /opt/sapcon/[SID 或代理 GUID]/settings.json 文件进行编辑,然后将每个容器的 auto_update 参数定义为 false

手动更新 SAP 数据连接器代理

若要手动更新连接器代理,请确保你拥有来自 Microsoft Sentinel GitHub 存储库的最新版本的相关部署脚本。

有关详细信息,请参阅适用于 SAP 的 Microsoft Sentinel 解决方案应用程序数据连接器代理更新文件参考

在数据连接器代理计算机上,运行

wget -O sapcon-instance-update.sh https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-instance-update.sh && bash ./sapcon-instance-update.sh

已更新计算机上的 SAP 数据连接器 Docker 容器。

请务必检查任何其他可用的更新,例如 SAP 更改请求。

更新系统以中断攻击

SAP 的自动攻击中断功能通过 Microsoft Defender 门户中的统一安全运营平台得到支持,并且需要:

  • 一个已加入统一安全运营平台的工作区

  • Microsoft Sentinel SAP 数据连接器代理,版本 90847355 或更高。 如果需要,请检查当前的代理版本并更新它。

  • Azure 和 SAP 中的以下角色:

    • Azure 角色要求:必须将你的数据连接器代理 VM 的标识分配给 Microsoft Sentinel Business Applications 代理操作员 Azure 角色。 如果需要,请验证此分配并手动分配此角色

    • SAP 角色要求/MSFTSEN/SENTINEL_RESPONDER SAP 角色必须应用于你的 SAP 系统,并分配给数据连接器代理使用的 SAP 用户帐户。 如果需要,请验证此分配并应用和分配角色

以下过程描述了如何满足这些要求(如果尚未满足)。

验证当前数据连接器代理版本

要验证当前代理版本,请从 Microsoft Sentinel 的“日志”页运行以下查询:

SAP_HeartBeat_CL
| where sap_client_category_s !contains "AH"
| summarize arg_max(TimeGenerated, agent_ver_s), make_set(system_id_s) by agent_id_g
| project
    TimeGenerated,
    SAP_Data_Connector_Agent_guid = agent_id_g,
    Connected_SAP_Systems_Ids = set_system_id_s,
    Current_Agent_Version = agent_ver_s

检查所需的 Azure 角色

SAP 的攻击中断要求你使用 Microsoft Sentinel Business Applications 代理操作员读者角色向你的代理的 VM 标识授予对启用了 Microsoft Sentinel 的 Log Analytics 工作区的特定权限。

首先检查是否已分配角色:

  1. 在 Azure 中查找 VM 标识对象 ID:

    1. 转到“企业应用程序”>“所有应用程序”,然后选择 VM 或已注册的应用程序名称,具体取决于用于访问密钥保管库的标识类型。
    2. 复制“对象 ID”字段的值以与复制的命令一起使用。
  2. 运行以下命令并根据需要替换占位符值,以验证是否已分配这些角色。

    az role assignment list --assignee <Object_ID> --query "[].roleDefinitionName" --scope <scope>
    

    输出显示了分配给对象 ID 的角色列表。

手动分配所需的 Azure 角色

如果尚未将 Microsoft Sentinel Business Applications 代理操作员和读者角色分配给代理的 VM 标识,请使用以下步骤手动分配它们。 根据代理的部署方式,选择 Azure 门户或命令行的选项卡。 从命令行部署的代理不会显示在 Azure 门户中,并且必须使用命令行来分配角色。

若要执行此过程,你必须是启用了 Microsoft Sentinel 的 Log Analytics 工作区的资源组所有者。

  1. 在 Microsoft Sentinel 的“配置 > 数据连接器”页上,转到“Microsoft Sentinel for SAP”数据连接器,然后选择“打开连接器页面”

  2. 在“配置”区域中的“步骤 1.添加基于 API 的收集器代理”下,找到要更新的代理,然后选择“显示命令”按钮。

  3. 复制显示的角色分配命令。 在代理 VM 上运行它们,并将 Object_ID 占位符替换为 VM 标识对象 ID。

    这些命令可将“Microsoft Sentinel Business Applications 代理操作员”和“读者”Azure 角色分配给 VM 托管标识,仅包括工作区中指定代理数据的范围。

重要

通过 CLI 分配“Microsoft Sentinel Business Applications 代理操作员”和“读者”角色只会在工作区中指定代理数据的范围内分配该角色。 这是最安全的,因此也是推荐的选项。

如果你必须通过 Azure 门户分配角色,我们建议在较小范围内分配角色,例如仅在启用了 Microsoft Sentinel 的 Log Analytics 工作区中。

将 SENTINEL_RESPONDER SAP 角色应用并分配到 SAP 系统

将 /MSFTSEN/SENTINEL_RESPONDER SAP 角色应用于你的 SAP 系统,并将其分配给 Microsoft Sentinel 的 SAP 数据连接器代理使用的 SAP 用户帐户。

要应用和分配 /MSFTSEN/SENTINEL_RESPONDER SAP 角色:

  1. 从 GitHub 中的 /MSFTSEN/SENTINEL_RESPONDER 文件上传角色定义。

  2. /MSFTSEN/SENTINEL_RESPONDER 角色分配给 Microsoft Sentinel 的 SAP 数据连接器代理使用的 SAP 用户帐户。 有关详细信息,请参阅为 Microsoft Sentinel 解决方案配置 SAP 系统

    或者,将以下授权手动分配给 Microsoft Sentinel 的 SAP 数据连接器使用的 SAP 用户帐户当前已被分配的角色。 这些授权包含在 /MSFTSEN/SENTINEL_RESPONDER SAP 角色中,专门用于攻击中断响应操作。

    授权对象 字段
    S_RFC RFC_TYPE 函数模块
    S_RFC RFC_NAME BAPI_USER_LOCK
    S_RFC RFC_NAME BAPI_USER_UNLOCK
    S_RFC RFC_NAME TH_DELETE_USER
    与其名称相反,此函数不会删除用户,而是会结束活动的用户会话。
    S_USER_GRP CLASS *
    建议将 S_USER_GRP CLASS 替换为组织中表示对话用户的相关类。
    S_USER_GRP ACTVT 03
    S_USER_GRP ACTVT 05

有关详细信息,请参阅所需的 ABAP 授权

有关详细信息,请参阅: