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

创建和管理 Microsoft Sentinel playbook

playbook 是可在 Microsoft Sentinel 中运行以响应整个事件、单个警报或特定实体的一个流程集合。 playbook 可以帮助自动处理和编排响应,并且可以附加到自动化规则,以便在生成特定警报或者创建或更新事件时自动运行。 还可以针对特定事件、警报或实体手动运行 Playbook。

本文介绍如何创建和管理 Microsoft Sentinel playbook。 稍后可将这些 playbook 附加到分析规则或自动化规则,或者对特定事件、警报或实体手动运行它们。

注意

Microsoft Sentinel 中的 playbook 基于 Azure 逻辑应用内置的工作流,这意味着你可获得逻辑应用的所有功能、自定义能力和内置模板。 可能会收取额外费用。 有关更多详细信息,请访问 Azure 逻辑应用定价页。

重要

Microsoft Sentinel 作为 Microsoft Defender 门户中统一安全运营平台的一部分提供。 现支持在 Defender 门户中将 Microsoft Sentinel 用于生产。 有关详细信息,请参阅 Microsoft Defender 门户中的 Microsoft Sentinel

先决条件

若要创建和管理 playbook,需要使用以下 Azure 角色之一访问 Microsoft Sentinel:

  • 逻辑应用参与者,用于编辑和管理逻辑应用
  • 逻辑应用操作员,用于读取、启用和禁用逻辑应用

有关详细信息,请参阅 Microsoft Sentinel playbook 先决条件

建议在创建 playbook 之前阅读适用于 Microsoft Sentinel playbook 的 Azure 逻辑应用

创建 playbook

按照以下步骤在 Microsoft Sentinel 中创建新的 playbook:

  1. 对于 Azure 门户中的 Microsoft Sentinel,请选择“配置”>“自动化”页面。 对于 Defender 门户中的 Microsoft Sentinel,请选择“Microsoft Sentinel”>“配置”>“自动化”。

  2. 从顶部菜单中选择“创建”,然后选择以下选项之一:

    1. 如果要创建“标准”playbook,请选择“空白 playbook”,然后按照“标准”逻辑应用类型的步骤进行操作

    2. 如果要创建“消耗”playbook,请选择以下选项之一,具体取决于要使用的触发器,然后按照下面的“逻辑应用消耗”选项卡中的步骤进行操作:

      • 带有事件触发器的 Playbook
      • 带有警报触发器的 Playbook
      • 带有实体触发器的 Playbook

    有关详细信息,请参阅支持的逻辑应用类型Microsoft Sentinel playbook 中支持的触发器和操作

准备 playbook 的逻辑应用

选择以下选项卡之一,详细了解如何为 playbook 创建逻辑应用,具体取决于使用的是“消耗”还是“标准”工作流。 有关详细信息,请参阅支持的逻辑应用类型

选择要使用的触发器(包括事件、警报或实体触发器)后,将显示“创建 playbook”向导。 例如:

创建逻辑应用的屏幕截图。

请执行以下操作以创建 playbook:

  1. 在“基本信息”选项卡中:

    1. 从相应的下拉列表中选择“订阅”、“资源组”和“区域”。 所选区域是逻辑应用信息的存储位置。

    2. 在“Playbook 名称”下输入你的 playbook 名称。

    3. 如果要出于诊断目的监视此 playbook 的活动,请选中“在 Log Analytics 中启用诊断日志”复选框,然后从下拉列表中选择“Log Analytics 工作区”。

    4. 如果 playbook 需要访问 Azure 虚拟网络内部或连接到 Azure 虚拟网络的受保护资源,可能需要使用集成服务环境 (ISE)。 如果是这样,请选中“与集成服务环境关联”复选框,然后从下拉列表中选择相关的 ISE。

    5. 选择“下一步: 连接 >”。

  2. 在“连接”选项卡中,建议保留默认值,将逻辑应用配置为使用托管标识连接到 Microsoft Sentinel。 有关详细信息,请参阅向 Microsoft Sentinel 验证 playbook

    选择“下一步: 审阅并创建 >”以继续。

  3. 在“审阅并创建”选项卡中,查看所做的配置选择,然后选择“创建并继续前往设计器”。

    创建和部署 playbook 需要几分钟时间,然后你会看到“部署已完成”消息,并且会转到新 playbook 的逻辑应用设计器。 最初选择的触发器将自动添加为第一个步骤,从中可以继续设计工作流。

    逻辑应用设计器的屏幕截图,其中显示了打开触发器。

  4. 如果选择了“Microsoft Sentinel 实体”触发器,请选择希望此 playbook 作为输入接收的实体类型。

    要从中选择以设置 playbook 架构的实体类型的下拉列表屏幕截图。

向 playbook 添加操作

现在,你有了一个逻辑应用,请定义调用 playbook 时会发生什么情况。 通过选择“新建步骤”,添加操作、逻辑条件、循环或 switch case 条件。 此选择会在设计器中打开新框架,可在此处选择要交互的系统或应用程序或要设置的条件。 在框架顶部的搜索栏中输入系统或应用程序的名称,然后从可用结果中选择。

在上述每个步骤中,单击任何字段将显示具有以下菜单的面板:

有关详细信息,请参阅 Microsoft Sentinel playbook 中支持的触发器和操作

身份验证提示

选择触发器或任何后续操作时,系统会提示你对要与其交互的任何资源提供程序进行身份验证。 在这种情况下,提供程序是 Microsoft Sentinel,并且有几个身份验证选项。 有关详细信息,请参阅:

动态内容:使用没有事件 ID 的实体 playbook

使用实体触发器创建的 Playbook 通常使用“事件 ARM ID”字段,例如在对实体执行操作后更新事件。

如果在与事件无关的上下文(例如,在搜寻威胁时)中触发此类 playbook,则没有任何事件的 ID 可以填充此字段。 在这种情况下,将使用 null 值填充该字段。

因此,playbook 可能无法运行到完成。 为防止此失败,建议创建一个条件,在对事件 ID 字段执行任何操作之前检查该字段中的值,如果字段具有 null 值(即,如果 playbook 未从事件中运行),则指定一组不同的操作。

执行以下步骤:

  1. 在引用“事件 ARM ID”字段的第一个操作之前,添加一个“条件”步骤。

  2. 在侧边选择“选择值”字段,进入“添加动态内容”对话框

  3. 选择 事件 ARM ID(可选),以及不等于运算符。

  4. 再次选择“选择值”,进入“添加动态内容”对话框

  5. 选择“表达式”选项卡和 null 函数。

例如:

“事件 ARM ID”字段之前要添加的附加条件的屏幕截图。

动态内容:处理自定义详细信息

“事件触发器”中提供的“警报自定义详细信息”动态字段是 JSON 对象的数组,其中每个对象表示一个警报的自定义详细信息。 自定义详细信息是键值对,可用于从警报中的事件呈现信息,以便可以作为事件的一部分来表示、跟踪和分析。

由于警报中的此字段是可自定义的,因此其架构取决于要呈现的事件的类型。 提供此事件实例的数据,以生成用于确定如何分析自定义详细信息字段的架构。

例如:

分析规则中定义的自定义详细信息的屏幕截图。

在这些键值对中:

  • 左列中的键表示创建的自定义字段。
  • 右列中的值表示填充自定义字段的事件数据中的字段。

提供以下 JSON 代码来生成架构。 代码将键名称显示为数组,并将值显示为数组中的项。 值显示为实际值,而不是包含值的列。

{ "FirstCustomField": [ "1", "2" ], "SecondCustomField": [ "a", "b" ] }

若要对事件触发器使用自定义字段,请执行以下操作:

  1. 使用“分析 JSON”内置操作添加新步骤。 如果需要,请在“搜索”字段中输入“parse json”。

  2. 在事件触发器下的“动态内容”列表中查找并选择“警报自定义详细信息”。 例如:

    从“动态内容”中选择“警报自定义详细信息”的屏幕截图。

    这将创建“For each”循环,因为事件包含一组警报。

  3. 选择“使用示例有效负载生成架构”链接。 例如:

    选择“使用示例有效负载”以从“动态内容”选项生成架构链接的屏幕截图。

  4. 提供示例有效负载。 例如,可以通过在日志分析中查找此警报的另一个实例并复制自定义详细信息对象(位于“扩展属性”下),来查找示例有效负载。 在 Azure 门户的“日志”页或在 Defender 门户的“高级搜寻”页中访问 Log Analytics 数据。 在下面的屏幕截图中,我们使用了上面所示的 JSON 代码。

    输入示例 JSON 有效负载的屏幕截图。

自定义字段已准备好用作“数组”类型的动态字段。 例如,以下屏幕截图显示了一个数组及其项,其位于“动态内容”下显示的架构和列表中,我们在本部分中进行了介绍:

架构中可供使用的字段的屏幕截图。

管理 playbook

选择“自动化”>“活动 playbook”选项卡以查看你有权访问的所有 playbook(按订阅视图筛选)。

加入统一安全运营平台后,“活动 playbook”选项卡默认显示具有已加入工作区订阅的预定义筛选器。 在 Microsoft Azure 门户中,编辑从全局 Azure 页标题中的“目录 + 订阅”菜单显示的订阅。

虽然“活动 playbook”选项卡显示任何所选订阅提供的所有活动 playbook,但默认情况下,playbook 只能在其所属的订阅中使用,除非专门向 playbook 的资源组授予 Microsoft Sentinel 权限。

活动 playbook”选项卡显示具有以下详细信息的 playbook:

列名称 说明
Status 指示 playbook 已启用还是禁用。
计划 指示 playbook 是使用“标准”还是“消耗”Azure 逻辑应用资源类型。

标准”类型的 Playbook 使用 LogicApp/Workflow 命名约定,其反映了标准 playbook 如何表示单个逻辑应用中与其他工作流共存的工作流。

有关详细信息,请参阅适用于 Microsoft Sentinel playbook 的 Azure 逻辑应用
触发器种类 指示启动此 playbook 的 Azure 逻辑应用触发器:

- Microsoft Sentinel 事件/警报/实体:playbook 使用其中一个 Sentinel 触发器(包括事件、警报或实体)启动
- 使用 Microsoft Sentinel 操作:playbook 使用非 Microsoft Sentinel 触发器启动,但使用 Microsoft Sentinel 操作
- 其他:playbook 不包含任何 Microsoft Sentinel 组件
- 未初始化:已创建 playbook,但不包含任何组件,也不触发任何操作。

选择一个 playbook 以打开其 Azure 逻辑应用页,其中显示了有关 playbook 的更多详细信息。 在 Azure 逻辑应用页上:

  • 查看运行 playbook 的所有时间的日志
  • 查看运行结果,包括成功和失败以及其他详细信息
  • 如果具有相关权限,请在 Azure 逻辑应用中打开工作流设计器以直接编辑 playbook

创建 playbook 后,将其附加到由环境中的事件触发的规则,或针对特定事件、警报或实体手动运行 playbook。

有关详细信息,请参阅: