Freigeben über


Update-AzPolicyAssignment

Dieser Vorgang aktualisiert eine Richtlinienzuweisung mit dem angegebenen Bereich und Namen. Richtlinienzuweisungen gelten für alle Ressourcen, die in ihrem Bereich enthalten sind. Wenn Sie beispielsweise eine Richtlinie im Ressourcengruppenbereich zuweisen, gilt diese Richtlinie für alle Ressourcen in der Gruppe.

Syntax

Update-AzPolicyAssignment
      -Name <String>
      [-Scope <String>]
      [-NotScope <String[]>]
      [-DisplayName <String>]
      [-Description <String>]
      [-Metadata <String>]
      [-Location <String>]
      [-EnforcementMode <String>]
      [-IdentityType <String>]
      [-IdentityId <String>]
      [-NonComplianceMessage <PSObject[]>]
      [-Override <IOverride[]>]
      [-ResourceSelector <IResourceSelector[]>]
      [-BackwardCompatible]
      [-DefaultProfile <PSObject>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-AzPolicyAssignment
      -Name <String>
      [-Scope <String>]
      [-NotScope <String[]>]
      [-DisplayName <String>]
      [-Description <String>]
      [-Metadata <String>]
      [-Location <String>]
      [-EnforcementMode <String>]
      [-IdentityType <String>]
      [-IdentityId <String>]
      [-NonComplianceMessage <PSObject[]>]
      [-Override <IOverride[]>]
      [-ResourceSelector <IResourceSelector[]>]
      [-BackwardCompatible]
      -PolicyParameterObject <PSObject>
      [-DefaultProfile <PSObject>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-AzPolicyAssignment
      -Name <String>
      [-Scope <String>]
      [-NotScope <String[]>]
      [-DisplayName <String>]
      [-Description <String>]
      [-Metadata <String>]
      [-Location <String>]
      [-EnforcementMode <String>]
      [-IdentityType <String>]
      [-IdentityId <String>]
      [-NonComplianceMessage <PSObject[]>]
      [-Override <IOverride[]>]
      [-ResourceSelector <IResourceSelector[]>]
      [-BackwardCompatible]
      -PolicyParameter <String>
      [-DefaultProfile <PSObject>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-AzPolicyAssignment
      -Id <String>
      [-NotScope <String[]>]
      [-DisplayName <String>]
      [-Description <String>]
      [-Metadata <String>]
      [-Location <String>]
      [-EnforcementMode <String>]
      [-IdentityType <String>]
      [-IdentityId <String>]
      [-NonComplianceMessage <PSObject[]>]
      [-Override <IOverride[]>]
      [-ResourceSelector <IResourceSelector[]>]
      [-BackwardCompatible]
      [-DefaultProfile <PSObject>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-AzPolicyAssignment
      -Id <String>
      [-NotScope <String[]>]
      [-DisplayName <String>]
      [-Description <String>]
      [-Metadata <String>]
      [-Location <String>]
      [-EnforcementMode <String>]
      [-IdentityType <String>]
      [-IdentityId <String>]
      [-NonComplianceMessage <PSObject[]>]
      [-Override <IOverride[]>]
      [-ResourceSelector <IResourceSelector[]>]
      [-BackwardCompatible]
      -PolicyParameterObject <PSObject>
      [-DefaultProfile <PSObject>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-AzPolicyAssignment
      -Id <String>
      [-NotScope <String[]>]
      [-DisplayName <String>]
      [-Description <String>]
      [-Metadata <String>]
      [-Location <String>]
      [-EnforcementMode <String>]
      [-IdentityType <String>]
      [-IdentityId <String>]
      [-NonComplianceMessage <PSObject[]>]
      [-Override <IOverride[]>]
      [-ResourceSelector <IResourceSelector[]>]
      [-BackwardCompatible]
      -PolicyParameter <String>
      [-DefaultProfile <PSObject>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-AzPolicyAssignment
      [-NotScope <String[]>]
      [-DisplayName <String>]
      [-Description <String>]
      [-Metadata <String>]
      [-Location <String>]
      [-EnforcementMode <String>]
      [-IdentityType <String>]
      [-IdentityId <String>]
      [-NonComplianceMessage <PSObject[]>]
      [-Override <IOverride[]>]
      [-ResourceSelector <IResourceSelector[]>]
      [-BackwardCompatible]
      -InputObject <IPolicyAssignment>
      [-DefaultProfile <PSObject>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Beschreibung

Dieser Vorgang aktualisiert eine Richtlinienzuweisung mit dem angegebenen Bereich und Namen. Richtlinienzuweisungen gelten für alle Ressourcen, die in ihrem Bereich enthalten sind. Wenn Sie beispielsweise eine Richtlinie im Ressourcengruppenbereich zuweisen, gilt diese Richtlinie für alle Ressourcen in der Gruppe.

Beispiele

Beispiel 1: Aktualisieren des Anzeigenamens

$ResourceGroup = Get-AzResourceGroup -Name 'ResourceGroup11'
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment' -Scope $ResourceGroup.ResourceId
Update-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -DisplayName 'Do not allow VM creation'

Der erste Befehl ruft eine Ressourcengruppe namens ResourceGroup11 mithilfe des Cmdlets "Get-AzResourceGroup" ab. Der Befehl speichert dieses Objekt in der $ResourceGroup Variablen. Der zweite Befehl ruft die Richtlinienzuweisung mit dem Namen "PolicyAssignment" mithilfe des Cmdlets "Get-AzPolicyAssignment" ab. Der Befehl speichert dieses Objekt in der variablen $PolicyAssignment. Der letzte Befehl aktualisiert den Anzeigenamen für die Richtlinienzuordnung für die Ressourcengruppe, die durch die ResourceId-Eigenschaft von $ResourceGroup identifiziert wird.

Beispiel 2: Hinzufügen einer vom System zugewiesenen verwalteten Identität zur Richtlinienzuweisung

$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment'
Update-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -IdentityType 'SystemAssigned' -Location 'westus'

Der erste Befehl ruft die Richtlinienzuweisung mit dem Namen "PolicyAssignment" aus dem aktuellen Abonnement mithilfe des Cmdlets "Get-AzPolicyAssignment" ab. Der Befehl speichert dieses Objekt in der variablen $PolicyAssignment. Der letzte Befehl weist der Richtlinienzuweisung eine vom System zugewiesene verwaltete Identität zu.

Beispiel 3: Hinzufügen einer vom Benutzer zugewiesenen verwalteten Identität zur Richtlinienzuweisung

$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment'
$UserAssignedIdentity = Get-AzUserAssignedIdentity -ResourceGroupName 'ResourceGroup1' -Name 'UserAssignedIdentity1'
 Update-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -IdentityType 'UserAssigned' -Location 'westus' -IdentityId $UserAssignedIdentity.Id

Der erste Befehl ruft die Richtlinienzuweisung mit dem Namen "PolicyAssignment" aus dem aktuellen Abonnement mithilfe des Cmdlets "Get-AzPolicyAssignment" ab. Der Befehl speichert dieses Objekt in der variablen $PolicyAssignment. Der zweite Befehl ruft die vom Benutzer zugewiesene verwaltete Identität mit dem Namen "UserAssignedIdentity1" mithilfe des Cmdlets "Get-AzUserAssignedIdentity" ab und speichert sie in der variablen $UserAssignedIdentity. Der letzte Befehl weist der Richtlinienzuweisung die vom Benutzer zugewiesene verwaltete Identität zu, die durch die ID-Eigenschaft von $UserAssignedIdentity identifiziert wird.

Beispiel 4: Aktualisieren von Richtlinienzuweisungsparametern mit einem neuen Richtlinienparameterobjekt

$Locations = Get-AzLocation | Where-Object {($_.displayname -like 'france*') -or ($_.displayname -like 'uk*')}
$AllowedLocations = @{'listOfAllowedLocations'=($Locations.location)}
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment'
Update-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -PolicyParameterObject $AllowedLocations

Mit den ersten und zweiten Befehlen wird ein Objekt erstellt, das alle Azure-Regionen enthält, deren Namen mit "france" oder "uk" beginnen. Der zweite Befehl speichert dieses Objekt in der $AllowedLocations Variablen. Der dritte Befehl ruft die Richtlinienzuweisung mit dem Namen "PolicyAssignment" ab. Der Befehl speichert dieses Objekt in der $PolicyAssignment Variablen. Der letzte Befehl aktualisiert die Parameterwerte für die Richtlinienzuweisung mit dem Namen "PolicyAssignment".

Beispiel 5: Aktualisieren von Richtlinienzuweisungsparametern mit Richtlinienparameterdatei

{
  "listOfAllowedLocations":  {
    "value": [
      "uksouth",
      "ukwest",
      "francecentral",
      "francesouth"
    ]
  }
}

Update-AzPolicyAssignment -Name 'PolicyAssignment' -PolicyParameter .\AllowedLocations.json

Der Befehl aktualisiert die Richtlinienzuweisung mit dem Namen 'PolicyAssignment' mithilfe der Richtlinienparameterdatei AllowedLocations.json aus dem lokalen Arbeitsverzeichnis.

Beispiel 6: Aktualisieren eines enforcementMode

$ResourceGroup = Get-AzResourceGroup -Name 'ResourceGroup11'
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment' -Scope $ResourceGroup.ResourceId
Update-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -EnforcementMode Default

Der erste Befehl ruft eine Ressourcengruppe namens ResourceGroup11 mithilfe des Cmdlets "Get-AzResourceGroup" ab. Der Befehl speichert dieses Objekt in der $ResourceGroup Variablen. Der zweite Befehl ruft die Richtlinienzuweisung mit dem Namen "PolicyAssignment" mithilfe des Cmdlets "Get-AzPolicyAssignment" ab. Der Befehl speichert dieses Objekt in der variablen $PolicyAssignment. Der letzte Befehl aktualisiert die EnforcementMode-Eigenschaft für die Richtlinienzuordnung für die Ressourcengruppe, die durch die ResourceId-Eigenschaft von $ResourceGroup identifiziert wird.

Beispiel 7: Aktualisieren von Nicht-Compliance-Nachrichten

$PolicyAssignment = Get-AzPolicyAssignment -Name 'VirtualMachinePolicy'
Update-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -NonComplianceMessage @{Message="All resources must follow resource naming guidelines."}

Der erste Befehl ruft die Richtlinienzuweisung mit dem Namen VirtualMachinePolicy mithilfe des Cmdlets "Get-AzPolicyAssignment" ab und speichert sie in der variablen $PolicyAssignment. Der letzte Befehl aktualisiert die Nichtkonformitätsmeldungen für die Richtlinienzuweisung mit einer neuen Meldung, die angezeigt wird, wenn eine Ressource von der Richtlinie verweigert wird.

Beispiel 8: Ressourcenauswahl aktualisieren

$ResourceSelector = @{Name = "MyLocationSelector"; Selector = @(@{Kind = "resourceLocation"; NotIn = @("eastus", "eastus2")})}
Update-AzPolicyAssignment -Name 'VirtualMachinePolicyAssignment' -ResourceSelector $ResourceSelector

Der erste Befehl erstellt ein Ressourcenauswahlobjekt, das verwendet wird, um die Zuordnung anzugeben, sollte nur für Ressourcen gelten, die sich nicht in Ost-USA oder Ost-US 2 befinden, und speichert es in der $ResourceSelector Variablen. Der letzte Befehl aktualisiert die Richtlinienzuweisung mit dem Namen "VirtualMachinePolicyAssignment" mit der durch $ResourceSelector angegebenen Ressourcenauswahl.

Beispiel 9: Außerkraftsetzung von Updates

$Selector = @{Kind = "resourceLocation"; NotIn = @("eastus", "eastus2")}
$Override = @(@{Kind = "policyEffect"; Value = 'Disabled'; Selector = @($Selector)})
Update-AzPolicyAssignment -Name 'VirtualMachinePolicyAssignment' -Override $Override

Mit dem ersten Befehl wird eine Standortauswahl erstellt, die andere Speicherorte als Ost-USA oder Ost-US 2 angibt und in der variablen $Selector speichert. Der zweite Befehl erstellt ein Außerkraftsetzungsobjekt, das verwendet wird, um anzugeben, dass die zugewiesene Definition einen deaktivierten Effekt in den von $Selector identifizierten Speicherorten haben soll. Der letzte Befehl aktualisiert die Richtlinienzuweisung mit dem Namen VirtualMachinePolicyAssignment mit der von $Override angegebenen Außerkraftsetzung.

Beispiel 10: [Backcompat] Aktualisieren eines enforcementMode

$ResourceGroup = Get-AzResourceGroup -Name 'ResourceGroup11'
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment' -Scope $ResourceGroup.ResourceId
Set-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -EnforcementMode Default

Der erste Befehl ruft eine Ressourcengruppe namens ResourceGroup11 mithilfe des Cmdlets "Get-AzResourceGroup" ab. Der Befehl speichert dieses Objekt in der $ResourceGroup Variablen. Der zweite Befehl ruft die Richtlinienzuweisung mit dem Namen "PolicyAssignment" mithilfe des Cmdlets "Get-AzPolicyAssignment" ab. Der Befehl speichert dieses Objekt in der variablen $PolicyAssignment. Der letzte Befehl aktualisiert die EnforcementMode-Eigenschaft für die Richtlinienzuordnung für die Ressourcengruppe, die durch die ResourceId-Eigenschaft von $ResourceGroup identifiziert wird.

Parameter

-BackwardCompatible

Bewirkt, dass cmdlet Artefakte mithilfe von richtlinienspezifischen Eigenschaften im Legacyformat in einem Eigenschaftenbehälterobjekt zurückgibt.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Confirm

Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.

Typ:SwitchParameter
Aliase:cf
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DefaultProfile

Der Parameter DefaultProfile ist nicht funktionsfähig. Verwenden Sie den Parameter "SubscriptionId", wenn sie verfügbar ist, wenn Sie das Cmdlet für ein anderes Abonnement ausführen.

Typ:PSObject
Aliase:AzureRMContext, AzureCredential
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Description

Diese Nachricht wird teil der Antwort im Falle eines Richtlinienverstoßes sein.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-DisplayName

Der Anzeigename der Richtlinienzuweisung.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-EnforcementMode

Der Erzwingungsmodus für die Richtlinienzuweisung. Mögliche Werte sind Default und DoNotEnforce.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Id

Die ID der zu aktualisierenden Richtlinienzuweisung. Verwenden Sie das Format "{scope}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}".

Typ:String
Aliase:ResourceId, PolicyAssignmentId
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-IdentityId

Die Benutzeridentität, die der Richtlinie zugeordnet ist. Die Benutzeridentitätswörterbuchschlüsselverweise sind ARM-Ressourcen-IDs im Formular: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}".

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-IdentityType

Der Identitätstyp. Dies ist das einzige erforderliche Feld beim Hinzufügen einer System- oder Benutzeridentität zu einer Ressource.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-InputObject

Typ:IPolicyAssignment
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Location

Der Speicherort der Richtlinienzuweisung. Nur erforderlich, wenn verwaltete Identität verwendet wird.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Metadata

Die Metadaten der Richtlinienzuweisung. Metadaten sind ein offenes beendetes Objekt und sind in der Regel eine Sammlung von Schlüsselwertpaaren.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Name

Der Name der Richtlinienzuweisung.

Typ:String
Aliase:PolicyAssignmentName
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-NonComplianceMessage

Die Nachrichten, die beschreiben, warum eine Ressource nicht mit der Richtlinie kompatibel ist. Informationen zum Erstellen finden Sie im ABSCHNITT "NOTES" für NONCOMPLIANCEMESSAGE-Eigenschaften und erstellen eine Hashtabelle.

Typ:PSObject[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-NotScope

Die ausgeschlossenen Bereiche der Richtlinie.

Typ:String[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Override

Die Außerkraftsetzung des Richtlinieneigenschaftswerts.

Typ:IOverride[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-PolicyParameter

Die Parameterwerte für die zugewiesene Richtlinienregel. Die Schlüssel sind die Parameternamen.

Typ:String
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-PolicyParameterObject

Die Parameterwerte für die zugewiesene Richtlinienregel. Die Schlüssel sind die Parameternamen.

Typ:PSObject
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ResourceSelector

Die Ressourcenauswahlliste zum Filtern von Richtlinien nach Ressourceneigenschaften.

Typ:IResourceSelector[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Scope

Der Bereich der Richtlinienzuweisung. Gültige Bereiche sind: Verwaltungsgruppe (Format: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), Abonnement (Format: '/subscriptions/{subscriptionId}'), Ressourcengruppe (Format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}', oder Ressource (Format: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}'

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-WhatIf

Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Typ:SwitchParameter
Aliase:wi
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

IPolicyAssignment

PSObject[]

String

String[]

Ausgaben

IPolicyAssignment

Hinweise

ALIASE

Set-AzPolicyAssignment