使用 Microsoft Purview DevOps 策略可以完成哪些任务?

本文介绍如何使用 Microsoft Purview 治理门户管理对数据资产中数据源的访问。 它侧重于 DevOps 策略的基本概念。 也就是说,它提供有关 DevOps 策略的背景信息,在遵循其他文章获取配置步骤之前,应了解这些信息。

对系统元数据的访问对于 IT 和 DevOps 人员来说至关重要,可确保关键数据库系统正常运行、按预期执行且安全。 可以通过 Microsoft Purview DevOps 策略高效、大规模地授予和撤销该访问权限。

在 Microsoft Purview 的根集合级别拥有策略作者角色的任何用户都可以创建、更新和删除 DevOps 策略。 保存 DevOps 策略后,会自动发布这些策略。

访问策略与 DevOps 策略

Microsoft Purview 访问策略使客户能够管理对其整个数据资产中的数据系统的访问,所有这些访问都是从云中的中心位置。 可以将这些策略视为可以通过 Microsoft Purview Studio 创建的访问权限授予,从而避免对代码的需求。 它们规定是否应允许或拒绝 Azure Active Directory (Azure AD) 主体(例如用户和组)对数据源或其中资产的特定类型的访问。 Microsoft Purview 将这些策略传达给数据源,这些策略在数据源中以本机方式强制实施。

DevOps 策略是 Microsoft Purview 访问策略的特殊类型。 它们授予对数据库系统元数据(而不是用户数据)的访问权限。 它们简化了 IT 运营和安全审核人员的访问预配。 DevOps 策略仅授予访问权限。 它们不会拒绝访问。

DevOps 策略的元素

三个元素定义 DevOps 策略:

  • 主题

    这是已授予访问权限的 Azure AD 用户、组或服务主体的列表。

  • 数据资源

    这是强制实施策略的范围。 数据资源路径是订阅 > 资源组 > 数据源的组成。

    Microsoft Purview DevOps 策略当前支持 SQL 类型的数据源。 可以在单个数据源以及整个资源组和订阅上配置它们。 只有在 Microsoft Purview 中注册数据资源并启用 “数据使用管理 ”选项后,才能创建 DevOps 策略。

  • 角色

    角色映射到策略允许对数据资源执行的操作集。 DevOps 策略支持 SQL 性能监视器和 SQL 安全审核员角色。 这两个角色都提供对 SQL 系统元数据的访问权限,更具体地说,可以访问动态管理视图 (DMV) 和动态管理功能 (DMF) 。 但是,这些角色授予的 DMV 和 DMF 集是不同的。 本文稍后提供了一些常用示例。

    创建、列出、更新和删除 Microsoft Purview DevOps 策略一文详细介绍了每种数据源类型的角色定义。 也就是说,它提供 Microsoft Purview 中的角色与该数据源类型中允许的操作的映射。 例如,SQL 性能监视器和 SQL 安全审核器的角色定义包括数据源端的服务器和数据库级别的连接操作。

实质上,DevOps 策略将角色的相关权限分配给主题,并在数据资源的路径范围内强制实施。

分层实施策略

对数据资源本身及其包含的所有子资源强制实施数据资源上的 DevOps 策略。 例如,Azure 订阅上的 DevOps 策略适用于所有资源组、每个资源组中的所有已启用策略的数据源,以及每个数据源中的所有数据库。

演示概念和优势的示例方案

Bob 和 Alice 参与其公司的 DevOps 流程。 他们需要登录到数十个本地SQL Server实例,并Azure SQL逻辑服务器来监视其性能,以便关键 DevOps 进程不会中断。 其经理 Mateo 将所有 SQL 数据源放入资源组 1。 然后,他创建了一个 Azure AD 组,其中包括 Alice 和 Bob。 接下来,他使用下图中的 Microsoft Purview DevOps 策略 (策略 1) 授予此 Azure AD 组对托管逻辑服务器的资源组 1 的访问权限。

显示资源组上的 DevOps 策略示例的关系图

以下优势如下:

  • Mateo 不必在每个服务器中创建本地登录名。
  • Microsoft Purview 的策略通过限制本地特权访问来提高安全性。 它们支持最小特权原则。 在此方案中,Mateo 仅授予 Bob 和 Alice 执行监视系统运行状况和性能任务所需的最低访问权限。
  • 将新服务器添加到资源组后,Mateo 无需更新 Microsoft Purview 中的策略,就可以在新服务器上强制实施该策略。
  • 如果 Alice 或 Bob 离开组织并且作业已回填,则 Mateo 只会更新 Azure AD 组。 他不必对在 Microsoft Purview 中创建的服务器或策略进行任何更改。
  • 在任何时间点,Mateo 或公司的审核员都可以看到在 Microsoft Purview Studio 中直接授予的所有权限。
原则 效益
简化 角色定义 SQL 性能监视器 和 SQL 安全审核员捕获典型的 IT 和 DevOps 角色执行其作业所需的权限。
对每种数据源类型的权限专业知识的需求较少。
减少工作量 图形界面使你可以快速在数据对象层次结构中移动。
Microsoft Purview 支持针对整个 Azure 资源组和订阅的策略。
增强安全性 访问权限是集中授予的,可以轻松查看和撤销。
特权帐户无需直接在数据源上配置访问权限。
DevOps 策略通过数据资源范围和角色定义支持最低特权原则。

DevOps 策略 API

许多老练的客户更喜欢通过脚本而不是 UI 与 Microsoft Purview 交互。 Microsoft Purview DevOps 策略现在支持 REST API,该 API 提供完整的创建、读取、更新和删除 (CRUD) 功能。 此功能包括列表、SQL 性能监视器策略和 SQL 安全审核器策略。 有关详细信息,请参阅 API 规范

显示在 Azure REST API 菜单上查找 DevOps API 的位置的屏幕截图

SQL 动态元数据包含 700 多个 DMV 和 DMF 的列表。 下表说明了一些最常用的方法。 该表将 DMV 和 DMF 映射到它们在 Microsoft Purview DevOps 策略中的角色定义。 它还提供引用内容的链接。

DevOps 角色 类别 示例 DMV 或 DMF
SQL 性能监视器 查询系统参数以了解系统 sys.configurations
sys.dm_os_sys_info
识别性能瓶颈 sys.dm_os_wait_stats
分析当前正在运行的查询 sys.dm_exec_query_stats
分析阻止问题 sys.dm_tran_locks
sys.dm_exec_requests
sys.dm_os_waiting_tasks
分析内存使用情况 sys.dm_os_memory_clerks
分析文件使用情况和性能 sys.master_files
sys.dm_io_virtual_file_stats
分析索引使用情况和碎片 sys.indexes
sys.dm_db_index_usage_stats
sys.dm_db_index_physical_stats
管理活动用户连接和内部任务 sys.dm_exec_sessions
获取过程执行统计信息 sys.dm_exec_procedure_stats
使用查询存储 sys.query_store_plan
sys.query_store_query
sys.query_store_query_text
获取尚不支持的错误日志 () sys.sp_readerrorlog
SQL 安全审核员 获取审核详细信息 sys.dm_server_audit_status
SQL 性能监视器和 SQL 安全审核器 sys.dm_audit_actions
sys.dm_audit_class_type_map

有关通过 Microsoft Purview 角色授予 IT 支持人员访问权限时可以执行的操作的详细信息,请参阅以下资源:

后续步骤

若要开始使用 DevOps 策略,请参阅以下资源: