【问题标题】:Azure Resource Group AccessAzure 资源组访问
【发布时间】:2023-04-10 18:20:01
【问题描述】:

如何限制用户访问特定资源组?

例如,我在订阅中有 10 个资源组,用户应该只能访问其中的 3 个资源组,用户可以在其中进行操作。

【问题讨论】:

    标签: azure azure-resource-manager azure-rbac


    【解决方案1】:

    当您为 Azure 创建新用户时,他们对任何订阅都没有任何权限,登录到门户将显示一个没有资源的空视图。

    如果您为该用户添加阅读权限,他们将能够阅读订阅中的任何资源,但不能修改任何内容。正如预期的那样。在订阅的读者许可下,他们不能创建任何东西、资源组或其他内容。

    如果该用户仅被授予资源组的权限,而没有订阅权限,那么他们将只能看到他们拥有权限的资源组。然后他们将拥有在该组中被授予的任何权限。

    在表面之下,每个贡献者和读者角色都有"Microsoft.Resources/subscriptions/resourceGroups/read" 操作,这意味着任何具有任何贡献者或读者角色的人都可以看到所有资源组。

    没有明确定义resourceGroups/writeresourceGroups/* 权限的内置角色。

    唯一隐式应用该权限的组是贡献者和所有者,它们应用了"*"

    这意味着只有贡献者和所有者才能在订阅中创建资源组。

    可以创建拒绝resourceGroup/write 的自定义角色

    因此,为了回答您的问题,将用户限制为只能查看特定资源组,请确保他们在订阅级别没有任何访问权限(此级别的任何访问权限都将允许他们查看资源组),并且仅将权限应用于您希望他们看到的资源组。

    【讨论】:

      【解决方案2】:

      将用户添加到这些资源组中的参与者角色。

      转到资源组,然后打开访问控制 (IAM),并将用户添加到贡献者角色。对每个资源组重复此操作。

      【讨论】:

      • 添加读者角色无济于事。因为我想限制用户创建 RG 并希望他们完成分配的组中的所有任务。
      • 哎呀,我的意思是贡献者。如果他们只是 RG 级别的贡献者,他们将无法创建新的 RG。如果您想让他们也为其他人添加访问权限,您可以让他们成为所有者。
      • 场景如下:我想创建一个具有细粒度访问权限的用户,该用户可以导航到指定的组,例如 ABC-RG。一旦我将 RG 分配给用户,用户不应该有权创建另一个 RG,但是用户可以在该 RG 中执行他们的任何任务,例如创建 VM、DB、CDN。所以在这种情况下,我可以为他们分配一个IAM 中的“用户”和 RBAC 中的贡献者角色,这可行吗?
      • 您可以将它们分配给 RG 中的 Contributor。它完全符合您的要求。
      • 谢谢,我会尽快回复您。
      【解决方案3】:

      例如,我的订阅中有 10 个资源组,其中 用户应该只能访问 3 个资源组,其中 用户可以进行操作。

      以上步骤可以通过以下步骤实现

      1. 将用户添加到订阅。不要为此用户分配订阅级别的任何角色。

      2. 通过角色分配将用户添加为选定的三个资源组(在访问控制 (IAM) 中)属性的参与者。

      以上两种配置,用户只能对显式的三个资源组进行查看和操作,其他资源组不会出现在Azure门户中。

      最佳做法是将用户添加到安全组并将安全组分配给角色。

      【讨论】:

        猜你喜欢
        • 2019-10-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多