last sync: 2021-Sep-24 16:09:49 UTC

Azure Policy definition

[Deprecated]: Deploy prerequisites to enable Guest Configuration Policy on Linux VMs.

Name [Deprecated]: Deploy prerequisites to enable Guest Configuration Policy on Linux VMs.
Azure Portal
Id fb27e9e0-526e-4ae1-89f2-a2a0bf0f8a50
Version 3.0.0-deprecated
details on versioning
Category Guest Configuration
Microsoft docs
Description This policy creates a system-assigned managed identity and deploys the VM extension for Guest Configuration on Linux VMs. This is a prerequisite for Guest Configuration Policy and must be assigned to the scope before using any Guest Configuration policy. For more information on Guest Configuration policies, please visit https://aka.ms/gcpol.
Mode Indexed
Type BuiltIn
Preview FALSE
Deprecated True
Effect Fixed: deployIfNotExists
Used RBAC Role
Role Name Role Id
Contributor b24988ac-6180-42a0-ab88-20f7382dd24c
History
Date/Time (UTC ymd) (i) Change type Change detail
2020-07-17 15:57:10 change Previous DisplayName: Deploy prerequisites to enable Guest Configuration Policy on Linux VMs.
2020-06-29 05:46:45 change Previous DisplayName: [Deprecated]: Deploy prerequisites to enable Guest Configuration Policy on Linux VMs.
2020-06-23 16:03:25 change Previous DisplayName: Deploy prerequisites to enable Guest Configuration Policy on Linux VMs.
2019-10-29 23:04:36 add fb27e9e0-526e-4ae1-89f2-a2a0bf0f8a50
Used in Initiatives none
JSON
{
  "displayName": "[Deprecated]: Deploy prerequisites to enable Guest Configuration Policy on Linux VMs.",
  "policyType": "BuiltIn",
  "mode": "Indexed",
  "description": "This policy creates a system-assigned managed identity and deploys the VM extension for Guest Configuration on Linux VMs. This is a prerequisite for Guest Configuration Policy and must be assigned to the scope before using any Guest Configuration policy. For more information on Guest Configuration policies, please visit https://aka.ms/gcpol.",
  "metadata": {
    "version": "3.0.0-deprecated",
    "category": "Guest Configuration",
    "requiredProviders": [
      "Microsoft.GuestConfiguration"
    ],
    "deprecated": true
  },
  "policyRule": {
    "if": {
      "allOf": [
        {
          "field": "type",
          "equals": "Microsoft.Compute/virtualMachines"
        },
        {
          "anyOf": [
            {
              "field": "Microsoft.Compute/imagePublisher",
              "in": [
                "microsoft-aks",
                "qubole-inc",
                "datastax",
                "couchbase",
                "scalegrid",
                "checkpoint",
                "paloaltonetworks",
                "debian"
              ]
            },
            {
              "allOf": [
                {
                  "field": "Microsoft.Compute/imagePublisher",
                  "equals": "OpenLogic"
                },
                {
                  "field": "Microsoft.Compute/imageOffer",
                  "like": "CentOS*"
                },
                {
                  "field": "Microsoft.Compute/imageSKU",
                  "notLike": "6*"
                }
              ]
            },
            {
              "allOf": [
                {
                  "field": "Microsoft.Compute/imagePublisher",
                  "equals": "Oracle"
                },
                {
                  "field": "Microsoft.Compute/imageOffer",
                  "equals": "Oracle-Linux"
                },
                {
                  "field": "Microsoft.Compute/imageSKU",
                  "notLike": "6*"
                }
              ]
            },
            {
              "allOf": [
                {
                  "field": "Microsoft.Compute/imagePublisher",
                  "equals": "RedHat"
                },
                {
                  "field": "Microsoft.Compute/imageOffer",
                  "in": [
                    "RHEL",
                    "RHEL-HA",
                    "RHEL-SAP",
                    "RHEL-SAP-APPS",
                    "RHEL-SAP-HA",
                    "RHEL-SAP-HANA"
                  ]
                },
                {
                  "field": "Microsoft.Compute/imageSKU",
                  "notLike": "6*"
                }
              ]
            },
            {
              "allOf": [
                {
                  "field": "Microsoft.Compute/imagePublisher",
                  "equals": "RedHat"
                },
                {
                  "field": "Microsoft.Compute/imageOffer",
                  "in": [
                    "osa",
                    "rhel-byos"
                  ]
                }
              ]
            },
            {
              "allOf": [
                {
                  "field": "Microsoft.Compute/imagePublisher",
                  "equals": "center-for-internet-security-inc"
                },
                {
                  "field": "Microsoft.Compute/imageOffer",
                  "in": [
                    "cis-centos-7-l1",
                    "cis-centos-7-v2-1-1-l1",
                    "cis-centos-8-l1",
                    "cis-debian-linux-8-l1",
                    "cis-debian-linux-9-l1",
                    "cis-nginx-centos-7-v1-1-0-l1",
                    "cis-oracle-linux-7-v2-0-0-l1",
                    "cis-oracle-linux-8-l1",
                    "cis-postgresql-11-centos-linux-7-level-1",
                    "cis-rhel-7-l2",
                    "cis-rhel-7-v2-2-0-l1",
                    "cis-rhel-8-l1",
                    "cis-suse-linux-12-v2-0-0-l1",
                    "cis-ubuntu-linux-1604-v1-0-0-l1",
                    "cis-ubuntu-linux-1804-l1"
                  ]
                }
              ]
            },
            {
              "allOf": [
                {
                  "field": "Microsoft.Compute/imagePublisher",
                  "equals": "credativ"
                },
                {
                  "field": "Microsoft.Compute/imageOffer",
                  "equals": "Debian"
                },
                {
                  "field": "Microsoft.Compute/imageSKU",
                  "notLike": "7*"
                }
              ]
            },
            {
              "allOf": [
                {
                  "field": "Microsoft.Compute/imagePublisher",
                  "equals": "Suse"
                },
                {
                  "field": "Microsoft.Compute/imageOffer",
                  "like": "SLES*"
                },
                {
                  "field": "Microsoft.Compute/imageSKU",
                  "notLike": "11*"
                }
              ]
            },
            {
              "allOf": [
                {
                  "field": "Microsoft.Compute/imagePublisher",
                  "equals": "Canonical"
                },
                {
                  "field": "Microsoft.Compute/imageOffer",
                  "equals": "UbuntuServer"
                },
                {
                  "field": "Microsoft.Compute/imageSKU",
                  "notLike": "12*"
                }
              ]
            },
            {
              "allOf": [
                {
                  "field": "Microsoft.Compute/imagePublisher",
                  "equals": "microsoft-dsvm"
                },
                {
                  "field": "Microsoft.Compute/imageOffer",
                  "in": [
                    "linux-data-science-vm-ubuntu",
                    "azureml"
                  ]
                }
              ]
            },
            {
              "allOf": [
                {
                  "field": "Microsoft.Compute/imagePublisher",
                  "equals": "cloudera"
                },
                {
                  "field": "Microsoft.Compute/imageOffer",
                  "equals": "cloudera-centos-os"
                },
                {
                  "field": "Microsoft.Compute/imageSKU",
                  "notLike": "6*"
                }
              ]
            },
            {
              "allOf": [
                {
                  "field": "Microsoft.Compute/imagePublisher",
                  "equals": "cloudera"
                },
                {
                  "field": "Microsoft.Compute/imageOffer",
                  "equals": "cloudera-altus-centos-os"
                }
              ]
            },
            {
              "allOf": [
                {
                  "field": "Microsoft.Compute/imagePublisher",
                  "equals": "microsoft-ads"
                },
                {
                  "field": "Microsoft.Compute/imageOffer",
                  "like": "linux*"
                }
              ]
            },
            {
              "allOf": [
                {
                  "anyOf": [
                    {
                      "field": "Microsoft.Compute/virtualMachines/osProfile.linuxConfiguration",
                      "exists": "true"
                    },
                    {
                      "field": "Microsoft.Compute/virtualMachines/storageProfile.osDisk.osType",
                      "like": "Linux*"
                    }
                  ]
                },
                {
                  "anyOf": [
                    {
                      "field": "Microsoft.Compute/imagePublisher",
                      "exists": "false"
                    },
                    {
                      "field": "Microsoft.Compute/imagePublisher",
                      "notIn": [
                        "OpenLogic",
                        "RedHat",
                        "credativ",
                        "Suse",
                        "Canonical",
                        "microsoft-dsvm",
                        "cloudera",
                        "microsoft-ads",
                        "center-for-internet-security-inc",
                        "Oracle"
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      ]
    },
    "then": {
      "effect": "deployIfNotExists",
      "details": {
        "roleDefinitionIds": [
          "/providers/microsoft.authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c"
        ],
        "type": "Microsoft.Compute/virtualMachines/extensions",
        "name": "AzurePolicyforLinux",
        "existenceCondition": {
          "allOf": [
            {
              "field": "Microsoft.Compute/virtualMachines/extensions/publisher",
              "equals": "Microsoft.GuestConfiguration"
            },
            {
              "field": "Microsoft.Compute/virtualMachines/extensions/type",
              "equals": "ConfigurationforLinux"
            },
            {
              "field": "Microsoft.Compute/virtualMachines/extensions/provisioningState",
              "equals": "Succeeded"
            }
          ]
        },
        "deployment": {
          "properties": {
            "mode": "incremental",
            "parameters": {
              "vmName": {
                "value": "[field('name')]"
              },
              "location": {
                "value": "[field('location')]"
              }
            },
            "template": {
              "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
              "contentVersion": "1.0.0.0",
              "parameters": {
                "vmName": {
                  "type": "string"
                },
                "location": {
                  "type": "string"
                }
              },
              "resources": [
                {
                  "apiVersion": "2019-07-01",
                  "type": "Microsoft.Compute/virtualMachines",
                  "identity": {
                    "type": "SystemAssigned"
                  },
                  "name": "[parameters('vmName')]",
                  "location": "[parameters('location')]"
                },
                {
                  "apiVersion": "2019-07-01",
                  "name": "[concat(parameters('vmName'), '/AzurePolicyforLinux')]",
                  "type": "Microsoft.Compute/virtualMachines/extensions",
                  "location": "[parameters('location')]",
                  "properties": {
                    "publisher": "Microsoft.GuestConfiguration",
                    "type": "ConfigurationforLinux",
                    "typeHandlerVersion": "1.0",
                    "autoUpgradeMinorVersion": true,
                    "settings": {},
                    "protectedSettings": {}
                  }
                }
              ]
            }
          }
        }
      }
    }
  }
}