Microsoft.GuestConfiguration guestConfigurationAssignments 2018-11-20

Bicep resource definition

The guestConfigurationAssignments resource type is an extension resource, which means you can apply it to another resource.

Use the scope property on this resource to set the scope for this resource. See Set scope on extension resources in Bicep.

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.GuestConfiguration/guestConfigurationAssignments resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.GuestConfiguration/guestConfigurationAssignments@2018-11-20' = {
  name: 'string'
  location: 'string'
  scope: resourceSymbolicName
  properties: {
    context: 'string'
    guestConfiguration: {
      assignmentType: 'string'
      configurationParameter: [
        {
          name: 'string'
          value: 'string'
        }
      ]
      configurationProtectedParameter: [
        {
          name: 'string'
          value: 'string'
        }
      ]
      configurationSetting: {
        actionAfterReboot: 'string'
        allowModuleOverwrite: bool
        configurationMode: 'string'
        configurationModeFrequencyMins: int
        rebootIfNeeded: bool
        refreshFrequencyMins: int
      }
      contentHash: 'string'
      contentUri: 'string'
      kind: 'DSC'
      name: 'string'
      version: 'string'
    }
    vmssVMList: [
      {
      }
    ]
  }
}

Property values

guestConfigurationAssignments

Name Description Value
name The resource name string (required)
location Region where the VM is located. string
scope Use when creating an extension resource at a scope that is different than the deployment scope. Target resource

For Bicep, set this property to the symbolic name of the resource to apply the extension resource.
properties Properties of the Guest configuration assignment. GuestConfigurationAssignmentProperties

GuestConfigurationAssignmentProperties

Name Description Value
context The source which initiated the guest configuration assignment. Ex: Azure Policy string
guestConfiguration The guest configuration to assign. GuestConfigurationNavigation
vmssVMList The list of VM Compliance data for VMSS VmssvmInfo[]

GuestConfigurationNavigation

Name Description Value
assignmentType Specifies the assignment type and execution of the configuration. Possible values are Audit, DeployAndAutoCorrect, ApplyAndAutoCorrect and ApplyAndMonitor. 'ApplyAndAutoCorrect'
'ApplyAndMonitor'
'Audit'
'DeployAndAutoCorrect'
configurationParameter The configuration parameters for the guest configuration. ConfigurationParameter[]
configurationProtectedParameter The protected configuration parameters for the guest configuration. ConfigurationParameter[]
configurationSetting The configuration setting for the guest configuration. ConfigurationSetting
contentHash Combined hash of the guest configuration package and configuration parameters. string
contentUri Uri of the storage where guest configuration package is uploaded. string
kind Kind of the guest configuration. For example:DSC 'DSC'
name Name of the guest configuration. string
version Version of the guest configuration. string

ConfigurationParameter

Name Description Value
name Name of the configuration parameter. string
value Value of the configuration parameter. string

ConfigurationSetting

Name Description Value
actionAfterReboot Specifies what happens after a reboot during the application of a configuration. The possible values are ContinueConfiguration and StopConfiguration 'ContinueConfiguration'
'StopConfiguration'
allowModuleOverwrite If true - new configurations downloaded from the pull service are allowed to overwrite the old ones on the target node. Otherwise, false bool
configurationMode Specifies how the LCM(Local Configuration Manager) actually applies the configuration to the target nodes. Possible values are ApplyOnly, ApplyAndMonitor, and ApplyAndAutoCorrect. 'ApplyAndAutoCorrect'
'ApplyAndMonitor'
'ApplyOnly'
configurationModeFrequencyMins How often, in minutes, the current configuration is checked and applied. This property is ignored if the ConfigurationMode property is set to ApplyOnly. The default value is 15. int
rebootIfNeeded Set this to true to automatically reboot the node after a configuration that requires reboot is applied. Otherwise, you will have to manually reboot the node for any configuration that requires it. The default value is false. To use this setting when a reboot condition is enacted by something other than DSC (such as Windows Installer), combine this setting with the xPendingReboot module. bool
refreshFrequencyMins The time interval, in minutes, at which the LCM checks a pull service to get updated configurations. This value is ignored if the LCM is not configured in pull mode. The default value is 30. int

VmssvmInfo

This object doesn't contain any properties to set during deployment. All properties are ReadOnly.

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Windows VM with Azure secure baseline

Deploy to Azure
The template creates a virtual machine running Windows Server in a new virtual network, with a public IP address. Once the machine has deployed, the guest configuration extension is installed and the Azure secure baseline for Windows Server is applied. If the configuration of the machines drifts, you can re-apply the settings by deploying the template again.

ARM template resource definition

The guestConfigurationAssignments resource type is an extension resource, which means you can apply it to another resource.

Use the scope property on this resource to set the scope for this resource. See Set scope on extension resources in ARM templates.

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.GuestConfiguration/guestConfigurationAssignments resource, add the following JSON to your template.

{
  "type": "Microsoft.GuestConfiguration/guestConfigurationAssignments",
  "apiVersion": "2018-11-20",
  "name": "string",
  "location": "string",
  "scope": "string",
  "properties": {
    "context": "string",
    "guestConfiguration": {
      "assignmentType": "string",
      "configurationParameter": [
        {
          "name": "string",
          "value": "string"
        }
      ],
      "configurationProtectedParameter": [
        {
          "name": "string",
          "value": "string"
        }
      ],
      "configurationSetting": {
        "actionAfterReboot": "string",
        "allowModuleOverwrite": "bool",
        "configurationMode": "string",
        "configurationModeFrequencyMins": "int",
        "rebootIfNeeded": "bool",
        "refreshFrequencyMins": "int"
      },
      "contentHash": "string",
      "contentUri": "string",
      "kind": "DSC",
      "name": "string",
      "version": "string"
    },
    "vmssVMList": [
      {
      }
    ]
  }
}

Property values

guestConfigurationAssignments

Name Description Value
type The resource type 'Microsoft.GuestConfiguration/guestConfigurationAssignments'
apiVersion The resource api version '2018-11-20'
name The resource name string (required)
location Region where the VM is located. string
scope Use when creating an extension resource at a scope that is different than the deployment scope. Target resource

For JSON, set the value to the full name of the resource to apply the extension resource to.
properties Properties of the Guest configuration assignment. GuestConfigurationAssignmentProperties

GuestConfigurationAssignmentProperties

Name Description Value
context The source which initiated the guest configuration assignment. Ex: Azure Policy string
guestConfiguration The guest configuration to assign. GuestConfigurationNavigation
vmssVMList The list of VM Compliance data for VMSS VmssvmInfo[]

GuestConfigurationNavigation

Name Description Value
assignmentType Specifies the assignment type and execution of the configuration. Possible values are Audit, DeployAndAutoCorrect, ApplyAndAutoCorrect and ApplyAndMonitor. 'ApplyAndAutoCorrect'
'ApplyAndMonitor'
'Audit'
'DeployAndAutoCorrect'
configurationParameter The configuration parameters for the guest configuration. ConfigurationParameter[]
configurationProtectedParameter The protected configuration parameters for the guest configuration. ConfigurationParameter[]
configurationSetting The configuration setting for the guest configuration. ConfigurationSetting
contentHash Combined hash of the guest configuration package and configuration parameters. string
contentUri Uri of the storage where guest configuration package is uploaded. string
kind Kind of the guest configuration. For example:DSC 'DSC'
name Name of the guest configuration. string
version Version of the guest configuration. string

ConfigurationParameter

Name Description Value
name Name of the configuration parameter. string
value Value of the configuration parameter. string

ConfigurationSetting

Name Description Value
actionAfterReboot Specifies what happens after a reboot during the application of a configuration. The possible values are ContinueConfiguration and StopConfiguration 'ContinueConfiguration'
'StopConfiguration'
allowModuleOverwrite If true - new configurations downloaded from the pull service are allowed to overwrite the old ones on the target node. Otherwise, false bool
configurationMode Specifies how the LCM(Local Configuration Manager) actually applies the configuration to the target nodes. Possible values are ApplyOnly, ApplyAndMonitor, and ApplyAndAutoCorrect. 'ApplyAndAutoCorrect'
'ApplyAndMonitor'
'ApplyOnly'
configurationModeFrequencyMins How often, in minutes, the current configuration is checked and applied. This property is ignored if the ConfigurationMode property is set to ApplyOnly. The default value is 15. int
rebootIfNeeded Set this to true to automatically reboot the node after a configuration that requires reboot is applied. Otherwise, you will have to manually reboot the node for any configuration that requires it. The default value is false. To use this setting when a reboot condition is enacted by something other than DSC (such as Windows Installer), combine this setting with the xPendingReboot module. bool
refreshFrequencyMins The time interval, in minutes, at which the LCM checks a pull service to get updated configurations. This value is ignored if the LCM is not configured in pull mode. The default value is 30. int

VmssvmInfo

This object doesn't contain any properties to set during deployment. All properties are ReadOnly.

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Windows VM with Azure secure baseline

Deploy to Azure
The template creates a virtual machine running Windows Server in a new virtual network, with a public IP address. Once the machine has deployed, the guest configuration extension is installed and the Azure secure baseline for Windows Server is applied. If the configuration of the machines drifts, you can re-apply the settings by deploying the template again.

Terraform (AzAPI provider) resource definition

The guestConfigurationAssignments resource type is an extension resource, which means you can apply it to another resource.

Use the parent_id property on this resource to set the scope for this resource.

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.GuestConfiguration/guestConfigurationAssignments resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.GuestConfiguration/guestConfigurationAssignments@2018-11-20"
  name = "string"
  location = "string"
  parent_id = "string"
  body = jsonencode({
    properties = {
      context = "string"
      guestConfiguration = {
        assignmentType = "string"
        configurationParameter = [
          {
            name = "string"
            value = "string"
          }
        ]
        configurationProtectedParameter = [
          {
            name = "string"
            value = "string"
          }
        ]
        configurationSetting = {
          actionAfterReboot = "string"
          allowModuleOverwrite = bool
          configurationMode = "string"
          configurationModeFrequencyMins = int
          rebootIfNeeded = bool
          refreshFrequencyMins = int
        }
        contentHash = "string"
        contentUri = "string"
        kind = "DSC"
        name = "string"
        version = "string"
      }
      vmssVMList = [
        {
        }
      ]
    }
  })
}

Property values

guestConfigurationAssignments

Name Description Value
type The resource type "Microsoft.GuestConfiguration/guestConfigurationAssignments@2018-11-20"
name The resource name string (required)
location Region where the VM is located. string
parent_id The ID of the resource to apply this extension resource to. string (required)
properties Properties of the Guest configuration assignment. GuestConfigurationAssignmentProperties

GuestConfigurationAssignmentProperties

Name Description Value
context The source which initiated the guest configuration assignment. Ex: Azure Policy string
guestConfiguration The guest configuration to assign. GuestConfigurationNavigation
vmssVMList The list of VM Compliance data for VMSS VmssvmInfo[]

GuestConfigurationNavigation

Name Description Value
assignmentType Specifies the assignment type and execution of the configuration. Possible values are Audit, DeployAndAutoCorrect, ApplyAndAutoCorrect and ApplyAndMonitor. "ApplyAndAutoCorrect"
"ApplyAndMonitor"
"Audit"
"DeployAndAutoCorrect"
configurationParameter The configuration parameters for the guest configuration. ConfigurationParameter[]
configurationProtectedParameter The protected configuration parameters for the guest configuration. ConfigurationParameter[]
configurationSetting The configuration setting for the guest configuration. ConfigurationSetting
contentHash Combined hash of the guest configuration package and configuration parameters. string
contentUri Uri of the storage where guest configuration package is uploaded. string
kind Kind of the guest configuration. For example:DSC "DSC"
name Name of the guest configuration. string
version Version of the guest configuration. string

ConfigurationParameter

Name Description Value
name Name of the configuration parameter. string
value Value of the configuration parameter. string

ConfigurationSetting

Name Description Value
actionAfterReboot Specifies what happens after a reboot during the application of a configuration. The possible values are ContinueConfiguration and StopConfiguration "ContinueConfiguration"
"StopConfiguration"
allowModuleOverwrite If true - new configurations downloaded from the pull service are allowed to overwrite the old ones on the target node. Otherwise, false bool
configurationMode Specifies how the LCM(Local Configuration Manager) actually applies the configuration to the target nodes. Possible values are ApplyOnly, ApplyAndMonitor, and ApplyAndAutoCorrect. "ApplyAndAutoCorrect"
"ApplyAndMonitor"
"ApplyOnly"
configurationModeFrequencyMins How often, in minutes, the current configuration is checked and applied. This property is ignored if the ConfigurationMode property is set to ApplyOnly. The default value is 15. int
rebootIfNeeded Set this to true to automatically reboot the node after a configuration that requires reboot is applied. Otherwise, you will have to manually reboot the node for any configuration that requires it. The default value is false. To use this setting when a reboot condition is enacted by something other than DSC (such as Windows Installer), combine this setting with the xPendingReboot module. bool
refreshFrequencyMins The time interval, in minutes, at which the LCM checks a pull service to get updated configurations. This value is ignored if the LCM is not configured in pull mode. The default value is 30. int

VmssvmInfo

This object doesn't contain any properties to set during deployment. All properties are ReadOnly.