创建、列出、更新和删除Microsoft Purview DevOps 策略

DevOps 策略 是一种Microsoft Purview 访问策略。 可以使用它们来管理对已在 Microsoft Purview 中为 数据策略强制 注册的数据源上的系统元数据的访问。

可以直接从 Microsoft Purview 治理门户配置 DevOps 策略。 保存后,它们会自动发布,然后由数据源强制实施。 Microsoft Purview 策略仅管理Microsoft Entra主体的访问权限。

本指南介绍 Microsoft Purview 中的配置步骤,这些步骤通过使用 SQL 性能监视器 和 SQL 安全审核员角色的 DevOps 策略操作来预配对数据库系统元数据的访问。 它演示如何创建、列出、更新和删除 DevOps 策略。

先决条件

配置

在 Microsoft Purview 策略门户中创作策略之前,需要配置数据源,以便它们可以强制实施这些策略:

  1. 请遵循源的任何特定于策略的先决条件。 检查 Microsoft Purview 支持的数据源表 ,并选择访问策略可用源的 “访问 策略”列中的链接。 按照“访问策略”和“先决条件”部分中列出的任何步骤进行操作。
  2. 在 Microsoft Purview 中注册数据源。 按照 资源源页 的“先决条件”和“注册”部分进行操作。
  3. 在数据源注册中打开“ 数据策略强制 ”切换。 有关详细信息,包括此步骤所需的其他权限,请参阅 在 Microsoft Purview 源上启用数据策略强制实施

创建新的 DevOps 策略

若要创建 DevOps 策略,首先请确保在根集合级别具有 Microsoft Purview 策略作者角色。 查看 本指南中有关管理 Microsoft Purview 角色分配的部分。 然后,按照以下步骤操作:

  1. 登录到 Microsoft Purview 治理门户

  2. 在左窗格中,选择“ 数据策略”。 然后选择“ DevOps 策略”。

  3. 选择“ 新建策略 ”按钮。

    显示用于创建新的 SQL DevOps 策略的按钮的屏幕截图。

    策略详细信息面板随即打开。

  4. 对于 “数据源类型”,请选择一个数据源。 在 “数据源名称”下,选择列出的数据源之一。 然后单击“ 选择” 返回到“ 新建策略 ”窗格。

    显示用于选择策略数据源的面板的屏幕截图。

  5. 选择两个角色之一: 性能监视安全审核。 然后选择“ 添加/删除主题 ”以打开“ 主题” 面板。

    “选择主题”框中,输入 (用户、组或服务主体) Microsoft Entra主体的名称。 Microsoft支持 365 个组,但组成员身份更新最多需要一小时才能反映在Microsoft Entra ID中。 继续添加或删除主题,直到满意为止,然后选择“ 保存”。

    显示策略的角色和主题选择的屏幕截图。

  6. 选择“ 保存” 以保存策略。 策略会自动发布。 在五分钟内从数据源开始强制实施。

列出 DevOps 策略

若要列出 DevOps 策略,首先请确保在根集合级别具有以下Microsoft Purview 角色之一:策略作者、数据源管理员、数据策展人或数据读取者。 查看 本指南中有关管理 Microsoft Purview 角色分配的部分。 然后,按照以下步骤操作:

  1. 登录到 Microsoft Purview 治理门户

  2. 在左窗格中,选择“ 数据策略”。 然后选择“ DevOps 策略”。

    DevOps 策略 ”窗格列出了已创建的任何策略。

    显示用于打开 SQL DevOps 策略列表的选项的屏幕截图。

更新 DevOps 策略

若要更新 DevOps 策略,请先确保在根集合级别具有 Microsoft Purview 策略作者角色。 查看 本指南中有关管理 Microsoft Purview 角色分配的部分。 然后,按照以下步骤操作:

  1. 登录到 Microsoft Purview 治理门户

  2. 在左窗格中,选择“ 数据策略”。 然后选择“ DevOps 策略”。

  3. 在“ DevOps 策略 ”窗格中,从其中一个策略的数据资源路径中选择策略,打开其中一个策略的策略详细信息。

    显示用于打开 SQL DevOps 策略的选项的屏幕截图。

  4. 在策略详细信息窗格上,选择 “编辑”。

  5. 进行更改,然后选择“ 保存”。

删除 DevOps 策略

若要删除 DevOps 策略,首先请确保在根集合级别具有 Microsoft Purview 策略作者角色。 查看 本指南中有关管理 Microsoft Purview 角色分配的部分。 然后,按照以下步骤操作:

  1. 登录到 Microsoft Purview 治理门户

  2. 在左窗格中,选择“ 数据策略”。 然后选择“ DevOps 策略”。

  3. 选中其中一个策略的复选框,然后选择“ 删除”。

    显示用于删除 SQL DevOps 策略的选项的屏幕截图。

测试 DevOps 策略

创建策略后,选择作为主题的任何Microsoft Entra用户现在都可以连接到策略范围内的数据源。 若要进行测试,请使用SQL Server Management Studio (SSMS) 或任何 SQL 客户端,并尝试查询一些动态管理视图, (DMV) 和动态管理功能 (DMF) 。 以下部分列出了一些示例。 有关更多示例,请参阅常用 DMV 和 DMF 的映射,请参阅 使用 Microsoft Purview DevOps 策略实现什么?

如果需要更多故障排除,请参阅本指南中的 后续步骤 部分。

测试 SQL 性能监视器访问

如果为 SQL 性能监视器 角色提供了策略的主题,则可以发出以下命令:

-- Returns I/O statistics for data and log files
SELECT * FROM sys.dm_io_virtual_file_stats(DB_ID(N'testdb'), 2)
-- Waits encountered by threads that executed. Used to diagnose performance issues
SELECT wait_type, wait_time_ms FROM sys.dm_os_wait_stats

显示 SQL 性能监视器测试的屏幕截图。

测试 SQL 安全审核员访问权限

如果为 SQL 安全审核员角色提供了策略的主题,则可以从 SSMS 或任何 SQL 客户端发出以下命令:

-- Returns the current state of the audit
SELECT * FROM sys.dm_server_audit_status
-- Returns information about the encryption state of a database and its associated database encryption keys
SELECT * FROM sys.dm_database_encryption_keys

确保无法访问用户数据

尝试使用以下命令访问其中一个数据库中的表:

-- Test access to user data
SELECT * FROM [databaseName].schemaName.tableName

应拒绝用于测试的Microsoft Entra主体,这意味着数据受到保护,免受内部威胁。

显示访问用户数据的测试的屏幕截图。

角色定义详细信息

下表将 Purview 数据策略角色Microsoft映射到 SQL 数据源中的特定操作。

Microsoft Purview 策略角色 数据源中的操作
SQL 性能监视器 Microsoft.Sql/Sqlservers/Connect
Microsoft.Sql/Sqlservers/Databases/Connect
Microsoft.Sql/Sqlservers/Databases/SystemViewsAndFunctions/DatabasePerformanceState/Rows/Select
Microsoft.Sql/Sqlservers/SystemViewsAndFunctions/ServerPerformanceState/Rows/Select
Microsoft.Sql/Sqlservers/Databases/SystemViewsAndFunctions/DatabaseGeneralMetadata/Rows/Select
Microsoft.Sql/Sqlservers/SystemViewsAndFunctions/ServerGeneralMetadata/Rows/Select
Microsoft.Sql/Sqlservers/Databases/DBC/ViewDatabasePerformanceState/Execute
Microsoft.Sql/Sqlservers/DBC/ViewServerPerformanceState/Execute
Microsoft.Sql/Sqlservers/Databases/ExtendedEventSessions/Create
Microsoft.Sql/Sqlservers/Databases/ExtendedEventSessions/Options/Alter
Microsoft.Sql/Sqlservers/Databases/ExtendedEventSessions/Events/Add
Microsoft.Sql/Sqlservers/Databases/ExtendedEventSessions/Events/Drop
Microsoft.Sql/Sqlservers/Databases/ExtendedEventSessions/state/Enable
Microsoft.Sql/Sqlservers/Databases/ExtendedEventSessions/State/Disable
Microsoft.Sql/Sqlservers/Databases/ExtendedEventSessions/Drop
Microsoft.Sql/Sqlservers/Databases/ExtendedEventSessions/Target/Add
Microsoft.Sql/Sqlservers/Databases/ExtendedEventSessions/Target/Drop
Microsoft.Sql/Sqlservers/ExtendedEventSessions/Create
Microsoft.Sql/Sqlservers/ExtendedEventSessions/Options/Alter
Microsoft.Sql/Sqlservers/ExtendedEventSessions/Events/Add
Microsoft.Sql/Sqlservers/ExtendedEventSessions/Events/Drop
Microsoft.Sql/Sqlservers/ExtendedEventSessions/state/Enable
Microsoft.Sql/Sqlservers/ExtendedEventSessions/State/Disable
Microsoft.Sql/Sqlservers/ExtendedEventSessions/Drop
Microsoft.Sql/Sqlservers/ExtendedEventSessions/Target/Add
Microsoft.Sql/Sqlservers/ExtendedEventSessions/Target/Drop
SQL 安全审核员 Microsoft.Sql/Sqlservers/Connect
Microsoft.Sql/Sqlservers/Databases/Connect
Microsoft.Sql/sqlservers/SystemViewsAndFunctions/ServerSecurityState/rows/select
Microsoft.Sql/Sqlservers/Databases/SystemViewsAndFunctions/DatabaseSecurityState/rows/select
Microsoft.Sql/sqlservers/SystemViewsAndFunctions/ServerSecurityMetadata/rows/select
Microsoft.Sql/Sqlservers/Databases/SystemViewsAndFunctions/DatabaseSecurityMetadata/rows/select

后续步骤

查看以下博客、视频和相关文章: