【问题标题】:How ignore/hide/deactivate my policy non-compliance state and get 100% compliance?如何忽略/隐藏/停用我的政策不合规状态并获得 100% 合规?
【发布时间】:2020-01-30 11:26:53
【问题描述】:

以下是我的策略定义并且正常工作(策略负责将标签从资源组分配给资源):

{
  "properties": {
    "displayName": "inheritTags",
    "policyType": "Custom",
    "mode": "Indexed",
    "metadata": {
      "createdBy": "3332dc03-2402-46e3-9098-c7350b0bc8dd",
      "createdOn": "2019-11-25T14:49:57.8136557Z",
      "updatedBy": "3332dc03-2402-46e3-9098-c7350b0bc8dd",
      "updatedOn": "2019-11-26T19:43:48.752452Z"
    },
    "parameters": {},
    "policyRule": {
      "if": {
        "allOf": [
          {
            "value": "[resourceGroup().tags]",
            "exists": "true"
          },
          {
            "value": "[resourceGroup().tags]",
            "notEquals": ""
          }
        ]
      },
      "then": {
        "effect": "modify",
        "details": {
          "operations": [
            {
              "operation": "addOrReplace",
              "field": "tags",
              "value": "[resourceGroup().tags]"
            }
          ],
          "roleDefinitionIds": [
            "/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c"
          ]
        }
      }
    }
  },
  "id": "/subscriptions/78afced4-1c58-4e66-8242-c042890d34c3/providers/Microsoft.Authorization/policyDefinitions/9f2a0e94-5ada-47b0-8125-42464f93cf37",
  "type": "Microsoft.Authorization/policyDefinitions",
  "name": "9f2a0e94-5ada-47b0-8125-42464f93cf37"
}

尽管如此,在 Policy 页面的 Overview 选项卡中,我知道分配的策略定义处于 Non-compliant 状态:

原因是什么? 不同值由于将先前状态与预期状态进行比较,我知道“问题”的来源是 exists、notEquals 等关键字:https://docs.microsoft.com/en-us/azure/governance/policy/how-to/determine-non-compliance#compliance-reasons

如何忽略这些合规性消息并获得资源合规性,您知道标签已正确分配,那么问题出在哪里?还是我对 azure 政策的理解有误?

【问题讨论】:

    标签: azure azure-policy


    【解决方案1】:

    出现不合规的资源是因为它们没有与 RG 相同的标签。对于某些资源,修改不会,因为它们不支持标签或不支持更新/添加标签。我不知道它是什么类型的资源,所以我不能确定这是问题所在。如果这些资源不支持标签,那么您可以从分配中排除该资源以查看不包括这些的合规性百分比。 (编辑作业并添加排除项)

    【讨论】:

    • 当然,我可以通过例如排除分配选项卡中的一些资源。 “资源组”,但我想通过策略更动态地做到这一点,这可能吗?如果是,那么如何排除这些特定资源?另一件事是,对于具有与 RG 完全相同的 相同标签 的资源,我有非投诉状态,所以我可以在这里做什么? (我添加了截图)
    • 排除特定资源的更动态方法是将其包含在策略定义的 if 语句中。 (如果不是资源类型 x & 有这些标签然后修改)。此外,在内置(如果缺少则从资源组继承标签)中,它首先确定资源中是否存在标签,但是如果资源有标签,则检查资源组是否有标签。我建议实施内置函数,看看你是否能得到想要的结果
    猜你喜欢
    • 2022-07-22
    • 2023-03-18
    • 1970-01-01
    • 1970-01-01
    • 2022-12-24
    • 1970-01-01
    • 1970-01-01
    • 2017-06-14
    • 2018-09-08
    相关资源
    最近更新 更多