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

更新 Microsoft Sentinel 的 SAP 数据连接器代理

本文介绍如何将现有的适用于 SAP 的 Microsoft Sentinel 数据连接器更新到其最新版本。

若要获取最新功能,可以为 SAP 数据连接器代理启用自动更新,或手动更新代理

本文中介绍的自动或手动更新仅与 SAP 连接器代理相关,与适用于 SAP 的 Microsoft Sentinel 解决方案无关。 代理需要是最新的才能成功更新解决方案。 解决方案为单独更新。

重要

Microsoft Sentinel 现已在 Microsoft Defender 门户的 Microsoft 统一安全运营平台中正式发布。 有关详细信息,请参阅 Microsoft Defender 门户中的 Microsoft Sentinel

先决条件

开始之前,请确保已具备部署适用于 SAP 应用程序的 Microsoft Sentinel 解决方案所需的全部必备项。

有关详细信息,请参阅部署适用于 SAP® 应用程序的 Microsoft Sentinel 解决方案的先决条件

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

可以选择在所有现有容器特定容器上为连接器代理启用自动更新。

重要

自动更新 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 作业后添加容器,不会自动更新新容器。 若要更新这些容器,请在 /opt/sapcon/[SID 或代理 GUID]/settings.json 文件中,将每个容器的 auto_update 参数定义为 true

此更新的日志位于 var/log/sapcon-sentinel-register-autoupdate.log/ 下。

在特定容器上启用自动更新

若要在特定容器上启用自动更新,请运行以下命令:

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>]...

此更新的日志位于 /var/log/sapcon-sentinel-register-autoupdate.log 下。

禁用自动更新

若要禁用容器或容器的自动更新,请将每个容器的 auto_update 参数定义为 false

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

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

运行:

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 的自动攻击中断功能通过 Microsoft Defender 门户中的统一安全运营平台得到支持,并且需要:

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

要验证当前代理版本,请从 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 工作区的特定权限。

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

  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 工作区的资源组所有者。

  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 工作区上。

将 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 用户帐户。 有关详细信息,请参阅部署 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 授权

后续步骤

详细了解适用于 SAP® 的 Microsoft Sentinel 解决方案应用程序:

疑难解答:

参考文件:

要了解详情,请参阅 Microsoft Sentinel 解决方案