重要
注意:根据世纪互联发布的公告,所有Microsoft Sentinel功能将在2026年8月18日正式停止在中国地区的Azure上的服务。
Jupyter 笔记本将完整的可编程性与用于机器学习、可视化效果和数据分析的大量库集合组合在一起。 这些属性使 Jupyter 成为安全调查和搜寻的引人注目的工具。
Microsoft Sentinel的基础是数据存储,它结合了高性能查询、动态架构,并能扩展至海量数据。 Azure门户和所有Microsoft Sentinel工具都使用通用 API 来访问此数据存储。 同一 API 也适用于外部工具,例如 Jupyter 笔记本和Python。
何时使用 Jupyter 笔记本
虽然可以在门户中执行许多常见任务,但 Jupyter 扩展了可对此数据执行的操作范围。
例如,使用笔记本可以进行以下操作:
- 执行分析这些分析在Microsoft Sentinel中并非开箱即用,例如某些Python机器学习功能
- 创建Microsoft Sentinel 不提供的自定义数据可视化,例如自定义时间线和进程树
- 集成微软 Sentinel 外部的数据源,例如本地数据集。
我们已将 Jupyter 体验集成到 Azure 门户中,使你可以轻松地创建和运行笔记本来分析数据。 Kqlmagic 库提供了粘附,使你可以从Microsoft Sentinel获取 Kusto 查询语言(KQL)查询,并直接在笔记本中运行它们。
一些由Microsoft安全分析师开发的笔记被包含在Microsoft Sentinel中:
- 其中一些笔记本专门用于特定方案,可以按原样使用。
- 其他示例意图作为样本,以展示可以复制或修改以用于自己笔记本的技术和功能。
从 Microsoft Sentinel GitHub 存储库导入其他笔记本。
Jupyter 笔记本的工作原理
笔记本包括两个组件:
- 基于浏览器的界面,你可以在其中输入和运行查询和代码,执行结果也显示在此处。
- 内核,负责分析和执行代码本身。
Microsoft Sentinel笔记本的内核在Azure虚拟机(VM)上运行。 VM 实例支持同时运行多个笔记本。 如果你的笔记本包含复杂的机器学习模型,则可以使用几种许可选项来使用功能更强大的虚拟机。
了解Python包
Microsoft Sentinel笔记本使用许多常用的Python库,例如 pandas、matplotlib、bokeh 等。 你可以选择许多其他Python包,涵盖以下方面:
- 可视化效果和图形
- 数据处理和分析
- 统计和数字计算
- 机器学习和深度学习
为了避免将复杂且重复的代码键入或粘贴到笔记本单元格中,大多数Python笔记本依赖于名为 packages 的第三方库。 若要使用笔记本中的包,需要安装和导入包。 Azure Machine Learning Compute 预安装了最常见的包。 请确保导入包或包的相关部分,如模块、文件、函数或类。
Microsoft Sentinel笔记本使用名为 MSTICPy 的Python包,这是用于数据检索、分析、扩充和可视化的网络安全工具集合。
MSTICPy 工具专为帮助创建用于搜寻和调查的笔记本而设计,我们正在积极地致力于提供新功能和改进。 有关详细信息,请参阅:
- MSTIC Jupyter 和 Python 安全工具文档
- 在 Microsoft Sentinel 中开始使用 Jupyter 笔记本和 MSTICPy
- Microsoft Sentinel 中 Jupyter 笔记本和 MSTICPy 的高级配置
查找笔记本
在Microsoft Sentinel中,选择Notebooks以查看Microsoft Sentinel提供的笔记本。 通过浏览笔记本模板(如 Credential Scan on Azure Log Analytics 和 Guided Investigation - Process Alerts,详细了解如何在威胁搜寻和调查中使用笔记本。
有关由Microsoft构建或由社区贡献的更多笔记本,请访问Microsoft Sentinel GitHub 存储库。 将Microsoft Sentinel GitHub存储库中共享的笔记本用作开发自己的笔记本时可以使用的工具、插图和代码示例。
Sample-Notebooks目录包含与可用于显示预期输出的数据一起保存的示例笔记本。HowTos目录包括描述概念的笔记本,例如设置默认Python版本、从笔记本创建Microsoft Sentinel书签等。
管理对Microsoft Sentinel笔记本的访问权限
若要在 Microsoft Sentinel 中使用 Jupyter 笔记本,必须首先拥有正确的权限,具体取决于用户角色。
虽然可以在 JupyterLab 或 Jupyter 经典版中运行Microsoft Sentinel笔记本,但在 Microsoft Sentinel 中,笔记本在 Azure Machine Learning 平台上运行。 若要在 Microsoft Sentinel 中运行笔记本,必须具有对Microsoft Sentinel工作区和 Azure Machine Learning 工作区的适当访问权限。
| 权限 | 说明 |
|---|---|
| Microsoft Sentinel权限 | 与其他Microsoft Sentinel资源一样,若要访问Microsoft Sentinel笔记本边栏选项卡上的笔记本、Microsoft Sentinel读取者、Microsoft Sentinel响应者或Microsoft Sentinel参与者角色为必填。 有关详细信息,请参阅 Microsoft Sentinel 中的权限。 |
| Azure Machine Learning权限 | Azure Machine Learning工作区是Azure资源。 与其他Azure资源一样,在创建新的Azure Machine Learning工作区时,它附带默认角色。 可以将用户添加到工作区,并将他们分配给这些内置角色之一。 有关详细信息,请参阅Azure Machine Learning默认角色和Azure内置角色。 Important:角色访问的范围可以限定为Azure中的多个级别。 例如,对工作区具有所有者访问权限的人可能没有对包含工作区的资源组的所有者访问权限。 有关详细信息,请参阅 Azure RBAC 工作原理。 如果你是 Azure ML 工作区的所有者,则可以为工作区添加和删除角色,并向用户分配角色。 有关详细信息,请参阅: - Azure portal - PowerShell - Azure CLI - REST API - Azure 资源管理器模板 - Azure Machine Learning CLI 如果内置角色不足,还可以创建自定义角色。 自定义角色可能具有该工作区中的读取、写入、删除和计算资源权限。 可以使角色在特定工作区级别、特定资源组级别或特定订阅级别可用。 有关详细信息,请参阅创建自定义角色。 |