【问题标题】:Azure SQL Permissions: How to allow using Query Performance Insight, but not changing settings such as the pricing tier?Azure SQL 权限:如何允许使用 Query Performance Insight,但不更改定价层等设置?
【发布时间】:2021-06-03 08:10:43
【问题描述】:

我想授予我们的团队成员必要的权限,以便为 Azure SQL 数据库使用 Query Performance Insight 功能,包括查看长时间运行查询的查询文本的可能性。

他们已经拥有“Reader”和“Monitoring Contributor”角色,因此他们可以访问 Azure 门户中的 Query Performance Insight 功能并查看长时间运行的查询的 ID。但是,当他们单击长时间运行的查询时,他们看不到查询文本。显示错误,指示“运行查询时连接超时”。

如果我为他们分配“SQL DB Contributor”角色,他们将能够使用该功能,但他们也可以更改数据库设置,例如定价层,这是我不想要的。

是否有我需要的角色分配?

【问题讨论】:

    标签: azure azure-sql-database azure-rbac


    【解决方案1】:

    我认为您需要创建一个 Azure 自定义角色,如 https://docs.microsoft.com/en-us/azure/role-based-access-control/custom-roles 中所述。

    您可以从 Reader 开始,然后包含您想要的权限,或者从 SQL DB Contributor 开始,然后删除您不想要的权限。 这需要试验

    从您的订阅中,创建一个新的自定义角色:

    然后,您将从该角色中添加或排除权限:

    我感兴趣的权限是:

    列出查询存储文本 - 用于添加到阅读器

    和更新数据库 - 用于从数据库贡献者中排除

    完成后,您将转到包含您的数据库的服务器 的访问控制刀片,然后添加具有该新自定义角色的用户。测试、调整、重复,直到您拥有所需的安全配置文件。您使用哪个角色作为基础取决于您希望采用的最低权限安全模型有多接近。

    编辑: 找出分配权限的一种可能方法是:

    1. 向上扩展数据库
    2. 缩小比例
    3. 转到资源组,选择您的数据库,然后导出模板
    4. 检查 JSON,这将是在操作期间应用的 ARM(您可能需要查看多个部署才能弄清楚这一点)
    5. 找到该操作后,JSON 中的提供程序应该会为您提供线索,让您知道要从您创建的任何角色中排除哪些内容。

    【讨论】:

    • 感谢您的精彩解释。由于相关用户已经在各自的 Azure SQL 资源上拥有 Reader 内置角色,并且角色是附加的,我只需要在自定义角色中包含 additional 权限,对吗?即,我首先尝试查询存储权限,测试 Query Performance Insights 是否比以前更好,然后重复 - 对吗?
    • 这正是我要采取的方法。
    【解决方案2】:

    添加到@WaitingForGuacamole 的答案:我们最终创建了一个包含Microsoft.Sql/servers/databases/queryStore/writeMicrosoft.Sql/servers/databases/topQueries/queryText/action 的自定义角色定义。将此自定义角色定义分配给已在 Azure SQL Server 上拥有 Reader 角色的团队成员,然后允许他们在 Query Performance Insight 中查看查询文本。

    实际的两个权限是由一位非常有帮助的 Azure 支持工程师提供给我们的。 YMMV,它也可能只与Microsoft.Sql/servers/databases/topQueries/queryText/action 一起工作(除了读取权限),如Azure Docs Github issue 所示。但是,支持工程师肯定我们还需要 Microsoft.Sql/servers/databases/queryStore/write 一个,我们没有跟进研究原因。

    【讨论】:

      猜你喜欢
      • 2019-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-07
      • 1970-01-01
      • 2015-07-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多