【问题标题】:Restricting Tag Editing, while being Owner of Resource Group限制标签编辑,同时是资源组的所有者
【发布时间】:2021-07-29 21:16:33
【问题描述】:

大家好,我有一个订阅,我想为人们创建“沙盒”环境。我的目标是给人们一个资源组,并让他们成为资源组的所有者。他们可以在这个小资源组中做任何他们想做的事情,但不能在订阅中触及它之外的任何东西。当然,他们可以部署的资源有一些限制,但就我而言,这是一个可以接受的解决方案。

我的自动化流程会创建一个 RG,然后向其中添加一些标签。谁拥有它(电子邮件)以及它的创建时间(创建日期)。 30 天后,我想通过并祝酒任何 30 天前的资源组。进入这个环境是有时间限制的。我想我可以根据标签日期读取标签并删除。

我需要一种方法来阻止 RG 的所有者以任何方式编辑标签。

输入自定义角色 - 资源组所有者

{
    "id": "/subscriptions/<sub-guid>/providers/Microsoft.Authorization/roleDefinitions/1cae04e5-3bd2-4d8d-9c3b-ef5bd8e58408",
    "properties": {
        "roleName": "Resource Group Owner",
        "description": "Assigned at the RG level owns everything within the RG, with the exception of editing tags.",
        "assignableScopes": [
            "/subscriptions/<sub-guid>"
        ],
        "permissions": [
            {
                "actions": [
                    "*"
                ],
                "notActions": [
                    "Microsoft.Resources/tags/write",
                    "Microsoft.Resources/tags/delete"
                ],
                "dataActions": [],
                "notDataActions": []
            }
        ]
    }
}

根据文档,这是正确的。我已经指定了允许的操作,然后在分配的范围(在本例中为资源组)添加了应从允许的操作中减去的排除操作。我不在乎他们是否可以在 RG 内的资源上添加或删除标签,我只是不希望他们弄乱 RG 标签。

将此角色分配给用户后,他们只能看到分配给他们的订阅中的 RG,但他们仍然可以编辑分配给它的标签。

我做错了什么?

我研究了 Azure 蓝图的拒绝分配,但没有任何示例说明如何在任何地方创建拒绝分配。有关于属性的文档,但没有显示它在蓝图中的样子。

感谢您的帮助。

【问题讨论】:

    标签: azure azure-policy azure-rbac azure-blueprints


    【解决方案1】:

    虽然您将Microsoft.Resources/tags/writeMicrosoft.Resources/tags/delete 放在notActions 中,但还有另一个资源提供者操作Microsoft.Resources/subscriptions/resourceGroups/write 允许用户编辑标签。

    您也需要将其放入notActions

    虽然document 声明:Microsoft.Resources/subscriptions/resourceGroups/write 用于创建或更新资源组,但我可以在此资源组中创建任何其他 Azure 资源。

    从我的测试结果来看,我认为受限的部分只是更新资源组本身。

    你可以试试看是否符合你的要求。

    【讨论】:

    • 谢谢,我特别避开了这条规则,因为我想让用户能够在 RG 内编写和创建资源。感觉像添加那个动作会阻止它。我会在这里试一试。使用可分配范围,我是否必须为每个 RG 创建一个新角色?那将是不幸的,而且是一个障碍。
    • @Chief 我以前的想法和你一样。但是经过测试,发现用户可以在这个资源组中创建资源。请从你身边试一试。对于“可分配范围”,没有必要将其设置为特定的资源组(我已经测试过)。所以我删除了答案中的内容。
    猜你喜欢
    • 1970-01-01
    • 2013-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-21
    • 2020-03-23
    • 2014-08-11
    • 1970-01-01
    相关资源
    最近更新 更多