Compartilhar 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 computador. Este artigo mostra exemplos para implantar configurações personalizadas e internas.

Em cada uma das seções a seguir, o exemplo inclui uma propriedade type em que o nome começa com Microsoft.Compute/virtualMachines. O Microsoft.GuestConfiguration do provedor de recursos de configuração de convidado é um recurso de extensão que precisa referenciar um tipo de pai.

Para mudar o exemplo de 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 campos “<>” a seguir por valores específicos ao seu ambiente:

  • <vm_name>: especifique o nome do recurso de computador em que a configuração deve ser aplicada.
  • <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 do computador.
  • <Url_to_Package.zip>: especifique um link HTTPS para o arquivo .zip para o seu pacote de conteúdo personalizado.
  • <SHA256_hash_of_package.zip>: especifique o hash SHA256 do arquivo .zip para o 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 configuração interna AzureWindowBaseline.

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'
        }
      ]
    }
  }
}