Share via


Informatie over resources voor machineconfiguratietoewijzing

Wanneer een Azure Policy is toegewezen, als deze zich in de categorie Guest Configuration bevindt, zijn er metagegevens opgenomen om een gasttoewijzing te beschrijven.

Er is een video-overzicht van dit document beschikbaar.

U kunt een gasttoewijzing beschouwen als een koppeling tussen een machine en een Azure Policy-scenario. Het volgende codefragment koppelt bijvoorbeeld de Configuratie van Azure Windows Baseline aan een minimale versie 1.0.0 van alle computers binnen het bereik van het beleid.

"metadata": {
    "category": "Guest Configuration",
    "guestConfiguration": {
        "name": "AzureWindowsBaseline",
        "version": "1.*"
    }
  //additional metadata properties exist
}

Hoe Azure Policy machineconfiguratietoewijzingen gebruikt

De machineconfiguratieservice gebruikt de metagegevensgegevens om automatisch een controleresource te maken voor definities met of AuditIfNotExistsDeployIfNotExists beleidseffecten. Het resourcetype is Microsoft.GuestConfiguration/guestConfigurationAssignments. Azure Policy maakt gebruik van de eigenschap complianceStatus van de resource voor gasttoewijzing om de nalevingsstatus te rapporteren. Zie Nalevingsgegevens ophalen voor meer informatie.

Verwijdering van gasttoewijzingen uit Azure Policy

Wanneer een Azure Policy-toewijzing wordt verwijderd, wordt de machineconfiguratietoewijzing ook verwijderd als het beleid een machineconfiguratietoewijzing heeft gemaakt.

Wanneer een Azure Policy-toewijzing wordt verwijderd uit een initiatief, moet u handmatig alle machineconfiguratietoewijzingen verwijderen die door het beleid zijn gemaakt. U kunt dit doen door te navigeren naar de pagina met gasttoewijzingen in Azure Portal en de toewijzing daar te verwijderen.

Handmatig machineconfiguratietoewijzingen maken

U kunt gasttoewijzingsresources maken in Azure Resource Manager met behulp van Azure Policy of een client-SDK.

Een voorbeeld van een implementatiesjabloon:

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "resources": [
    {
      "apiVersion": "2021-01-25",
      "type": "Microsoft.Compute/virtualMachines/providers/guestConfigurationAssignments",
      "name": "myMachine/Microsoft.GuestConfiguration/myConfig",
      "location": "westus2",
      "properties": {
        "guestConfiguration": {
          "name": "myConfig",
          "contentUri": "https://mystorageaccount.blob.core.windows.net/mystoragecontainer/myConfig.zip?sv=SASTOKEN",
          "contentHash": "SHA256HASH",
          "version": "1.0.0",
          "assignmentType": "ApplyAndMonitor",
          "configurationParameter": {}
        }
      }
    }
  ]
}

In de volgende tabel wordt elke eigenschap van gasttoewijzingsbronnen beschreven.

Eigenschappen Beschrijving
name Naam van de configuratie in het MOF-bestand van het inhoudspakket.
contentUri HTTPS-URI-pad naar het inhoudspakket (.zip).
contentHash Een SHA256-hashwaarde van het inhoudspakket, dat wordt gebruikt om te controleren of het niet is gewijzigd.
version Versie van het inhoudspakket. Alleen gebruikt voor ingebouwde pakketten en niet gebruikt voor aangepaste inhoudspakketten.
assignmentType Gedrag van de toewijzing. Toegestane waarden: Audit, ApplyandMonitoren ApplyandAutoCorrect.
configurationParameter Lijst met DSC-resourcetype, -naam en -waarde in het MOF-bestand van het inhoudspakket dat moet worden overschreven nadat het is gedownload op de computer.

Verwijdering van handmatig gemaakte machineconfiguratietoewijzingen

U moet handmatig machineconfiguratietoewijzingen verwijderen die zijn gemaakt via een handmatige benadering (zoals een azure Resource Manager-sjabloonimplementatie). Als u de bovenliggende resource (virtuele machine of een machine met Arc) verwijdert, wordt ook de toewijzing van de machineconfiguratie verwijderd.

Gebruik het volgende voorbeeld om handmatig een machineconfiguratietoewijzing te verwijderen. Zorg ervoor dat u alle voorbeeldtekenreeksen vervangt, aangegeven door <> vierkante haken.

# First get details about the machine configuration assignment
$resourceDetails = @{
  ResourceGroupName = '<resource-group-name>'
  ResourceType      = 'Microsoft.Compute/virtualMachines/providers/guestConfigurationAssignments/'
  ResourceName      = '<vm-name>/Microsoft.GuestConfiguration'
  ApiVersion        = '2020-06-25'
}
$guestAssignment = Get-AzResource @resourceDetails

# Review details of the machine configuration assignment
$guestAssignment

# After reviewing properties of $guestAssignment to confirm
$guestAssignment | Remove-AzResource

Volgende stappen