Set-AzPolicyAssignment
Ändert eine Richtlinienzuweisung.
Syntax
Set-AzPolicyAssignment
-Name <String>
[-Scope <String>]
[-NotScope <String[]>]
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
[-AssignIdentity]
[-Location <String>]
[-EnforcementMode <PolicyAssignmentEnforcementMode>]
[-IdentityType <ManagedIdentityType>]
[-IdentityId <String>]
[-NonComplianceMessage <PsNonComplianceMessage[]>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Set-AzPolicyAssignment
-Name <String>
[-Scope <String>]
[-NotScope <String[]>]
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
-PolicyParameterObject <Hashtable>
[-AssignIdentity]
[-Location <String>]
[-EnforcementMode <PolicyAssignmentEnforcementMode>]
[-IdentityType <ManagedIdentityType>]
[-IdentityId <String>]
[-NonComplianceMessage <PsNonComplianceMessage[]>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Set-AzPolicyAssignment
-Name <String>
[-Scope <String>]
[-NotScope <String[]>]
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
-PolicyParameter <String>
[-AssignIdentity]
[-Location <String>]
[-EnforcementMode <PolicyAssignmentEnforcementMode>]
[-IdentityType <ManagedIdentityType>]
[-IdentityId <String>]
[-NonComplianceMessage <PsNonComplianceMessage[]>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Set-AzPolicyAssignment
[-NotScope <String[]>]
-Id <String>
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
[-AssignIdentity]
[-Location <String>]
[-EnforcementMode <PolicyAssignmentEnforcementMode>]
[-IdentityType <ManagedIdentityType>]
[-IdentityId <String>]
[-NonComplianceMessage <PsNonComplianceMessage[]>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Set-AzPolicyAssignment
[-NotScope <String[]>]
-Id <String>
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
-PolicyParameterObject <Hashtable>
[-AssignIdentity]
[-Location <String>]
[-EnforcementMode <PolicyAssignmentEnforcementMode>]
[-IdentityType <ManagedIdentityType>]
[-IdentityId <String>]
[-NonComplianceMessage <PsNonComplianceMessage[]>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Set-AzPolicyAssignment
[-NotScope <String[]>]
-Id <String>
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
-PolicyParameter <String>
[-AssignIdentity]
[-Location <String>]
[-EnforcementMode <PolicyAssignmentEnforcementMode>]
[-IdentityType <ManagedIdentityType>]
[-IdentityId <String>]
[-NonComplianceMessage <PsNonComplianceMessage[]>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Set-AzPolicyAssignment
[-NotScope <String[]>]
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
[-AssignIdentity]
[-Location <String>]
[-EnforcementMode <PolicyAssignmentEnforcementMode>]
[-IdentityType <ManagedIdentityType>]
[-IdentityId <String>]
-InputObject <PsPolicyAssignment>
[-NonComplianceMessage <PsNonComplianceMessage[]>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Beschreibung
Das Cmdlet Set-AzPolicyAssignment ändert eine Richtlinienzuweisung. Geben Sie eine Zuordnung nach ID oder nach Name und Bereich an.
Beispiele
Beispiel 1: Aktualisieren des Anzeigenamens
$ResourceGroup = Get-AzResourceGroup -Name 'ResourceGroup11'
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment' -Scope $ResourceGroup.ResourceId
Set-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'
Set-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'
Set-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'
Set-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
Erstellen Sie eine Datei namens AllowedLocations.json im lokalen Arbeitsverzeichnis mit dem folgenden Inhalt.
{
"listOfAllowedLocations": {
"value": [
"uksouth",
"ukwest",
"francecentral",
"francesouth"
]
}
}
Set-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
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.
Beispiel 7: Aktualisieren von Nicht-Compliance-Nachrichten
$PolicyAssignment = Get-AzPolicyAssignment -Name 'VirtualMachinePolicy'
Set-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.
Parameter
-ApiVersion
Gibt die version der zu verwendenden Ressourcenanbieter-API an. Wenn Sie keine Version angeben, verwendet dieses Cmdlet die neueste verfügbare Version.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-AssignIdentity
Generieren und Zuweisen einer vom System zugewiesenen verwalteten Identität für diese Richtlinienzuweisung. Die Identität wird verwendet, wenn Bereitstellungen für "deployIfNotExists" und "Modify"-Richtlinien ausgeführt werden. Der Speicherort ist beim Zuweisen einer Identität erforderlich.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-DefaultProfile
Anmeldeinformationen, Konto, Mandant und Abonnement für die Kommunikation mit Azure
Typ: | IAzureContextContainer |
Aliase: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Description
Die Beschreibung für die Richtlinienzuweisung
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-DisplayName
Gibt einen neuen Anzeigenamen für die Richtlinienzuweisung an.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-EnforcementMode
Der Erzwingungsmodus für die Richtlinienzuweisung. Derzeit sind gültige Werte "Default", "DoNotEnforce".
Typ: | Nullable<T>[PolicyAssignmentEnforcementMode] |
Zulässige Werte: | Default, DoNotEnforce |
Position: | Named |
Standardwert: | Default |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-Id
Gibt die vollqualifizierte Ressourcen-ID für die Richtlinienzuweisung an, die dieses Cmdlet ändert.
Typ: | String |
Aliase: | ResourceId |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-IdentityId
Gibt die ID der vom Benutzer zugewiesenen verwalteten Identität an, die dieser Richtlinienzuweisung zugewiesen werden soll. Dieser Wert ist erforderlich, wenn der Wert "UserAssigned" an den Parameter "-IdentityType" übergeben wird.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-IdentityType
Gibt den Typ der verwalteten Identität an, die dieser Richtlinienzuweisung zugewiesen werden soll. Wenn der Wert "SystemAssigned" angegeben wird, wird eine vom System zugewiesene verwaltete Identität generiert und dieser Richtlinienzuweisung zugewiesen. Wenn der Wert "UserAssigned" angegeben wird, wird der benutzer zugewiesene Identität, die über seine ID an den Parameter "-IdentityId" übergeben wird, dieser Richtlinienzuweisung zugewiesen. Die Identität wird verwendet, wenn Bereitstellungen für "deployIfNotExists" und "Modify"-Richtlinien ausgeführt werden. Der Speicherort ist beim Zuweisen einer Identität erforderlich. Berechtigungen müssen der Identität mithilfe von New-AzRoleAssignment erteilt werden, nachdem die vom System zugewiesene Identität erstellt wurde. Der IdentityType-Parameter erhält Vorrang, wenn sowohl der Parameter AssignIdentity als auch der IdentityType-Parameter verwendet werden.
Typ: | Nullable<T>[ManagedIdentityType] |
Zulässige Werte: | SystemAssigned, UserAssigned, None |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-InputObject
Das Richtlinienzuweisungsobjekt, das aktualisiert werden soll, das von einem anderen Cmdlet ausgegeben wurde.
Typ: | PsPolicyAssignment |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-Location
Der Speicherort der Ressourcenidentität der Richtlinienzuweisung. Dies ist erforderlich, wenn der -IdentityType-Wert bereitgestellt wird.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-Metadata
Die aktualisierten Metadaten für die Richtlinienzuweisung. Dies kann ein Pfad zu einem Dateinamen sein, der die Metadaten enthält, oder die Metadaten als Zeichenfolge.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-Name
Gibt den Namen der Richtlinienzuweisung an, die dieses Cmdlet ändert.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-NonComplianceMessage
Die Nicht-Compliance-Meldungen, die beschreiben, warum eine Ressource nicht mit der Richtlinie kompatibel ist.
Typ: | PsNonComplianceMessage[] |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-NotScope
Die Richtlinienzuweisung gilt nicht für Bereiche.
Typ: | String[] |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-PolicyParameter
Der neue Richtlinienparameterdateipfad oder die Zeichenfolge für die Richtlinienzuweisung.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-PolicyParameterObject
Das neue Richtlinienparameterobjekt für die Richtlinienzuweisung.
Typ: | Hashtable |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Pre
Gibt an, dass dieses Cmdlet vorab veröffentlichte API-Versionen berücksichtigt, wenn es automatisch bestimmt, welche Version verwendet werden soll.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Scope
Gibt den Bereich an, auf den die Richtlinie angewendet wird.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
Eingaben
String[]
Nullable<T>[[Microsoft.Azure.Commands.ResourceManager.Cmdlets.Entities.Policy.PolicyAssignmentEnforcementMode, Microsoft.Azure.PowerShell.Cmdlets.ResourceManager, Version=3.5.0.0, Culture=neutral, PublicKeyToken=null]]