Partilhar via


Como criar uma atribuição de configuração de máquina usando o Bicep

Você pode usar o Azure Bicep para implantar atribuições de configuração de máquina. Este artigo mostra exemplos de implantação de configurações personalizadas e internas.

Em cada uma das seções a seguir, o exemplo inclui uma propriedade type onde o nome começa com Microsoft.Compute/virtualMachines. O provedor de recursos de configuração de Microsoft.GuestConfiguration convidado é um recurso de extensão que deve fazer referência a um tipo pai.

Para modificar o exemplo para outros tipos de recursos, como servidores habilitados para Arc, altere o tipo pai para o nome do provedor de recursos. Para servidores habilitados para Arc, o provedor de recursos é Microsoft.HybridCompute/machines.

Substitua os seguintes campos ""<> por valores específicos do seu ambiente:

  • <vm_name>: Especifique o nome do recurso da máquina no qual aplicar a configuração.
  • <configuration_name>: Especifique o nome da configuração a ser aplicada.
  • <vm_location>: especifique a região do Azure na qual criar a atribuição de configuração da máquina.
  • <Url_to_Package.zip>: Especifique um link HTTPS para o .zip arquivo para seu pacote de conteúdo personalizado.
  • <SHA256_hash_of_package.zip>: Especifique o hash SHA256 do .zip arquivo para seu pacote de conteúdo personalizado.

Atribuir uma configuração personalizada

O exemplo a seguir atribui uma configuração personalizada.

resource myVM 'Microsoft.Compute/virtualMachines@2021-03-01' existing = {
  name: '<vm_name>'
}

resource myConfiguration 'Microsoft.GuestConfiguration/guestConfigurationAssignments@2020-06-25' = {
  name: '<configuration_name>'
  scope: myVM
  location: resourceGroup().location
  properties: {
    guestConfiguration: {
      name: '<configuration_name>'
      contentUri: '<Url_to_Package.zip>'
      contentHash: '<SHA256_hash_of_package.zip>'
      version: '1.*'
      assignmentType: 'ApplyAndMonitor'
    }
  }
}

Atribuir uma configuração interna

O exemplo a seguir atribui a AzureWindowBaseline configuração interna.

resource myWindowsVM 'Microsoft.Compute/virtualMachines@2021-03-01' existing = {
  name: '<vm_name>'
}

resource AzureWindowsBaseline 'Microsoft.GuestConfiguration/guestConfigurationAssignments@2020-06-25' = {
  name: 'AzureWindowsBaseline'
  scope: myWindowsVM
  location: resourceGroup().location
  properties: {
    guestConfiguration: {
      name: 'AzureWindowsBaseline'
      version: '1.*'
      assignmentType: 'ApplyAndMonitor'
      configurationParameter: [
        {
          name: 'Minimum Password Length;ExpectedValue'
          value: '16'
        }
        {
          name: 'Minimum Password Length;RemediateValue'
          value: '16'
        }
        {
          name: 'Maximum Password Age;ExpectedValue'
          value: '75'
        }
        {
          name: 'Maximum Password Age;RemediateValue'
          value: '75'
        }
      ]
    }
  }
}