New-AzureRmPolicyAssignment
Erstellt eine Richtlinienzuweisung.
Warnung
Das AzureRM PowerShell-Modul ist seit dem 29. Februar 2024 offiziell veraltet. Benutzern wird empfohlen, von AzureRM zum Az PowerShell-Modul zu migrieren, um weiterhin Support und Updates zu erhalten.
Obwohl das AzureRM-Modul weiterhin funktioniert, wird es nicht mehr Standard tained oder unterstützt, wobei eine fortgesetzte Verwendung nach Ermessen und Risiko des Benutzers erfolgt. Weitere Informationen zum Übergang zum Az-Modul finden Sie in unseren Migrationsressourcen.
Syntax
New-AzureRmPolicyAssignment
-Name <String>
-Scope <String>
[-NotScope <String[]>]
[-DisplayName <String>]
[-Description <String>]
[-PolicyDefinition <PSObject>]
[-PolicySetDefinition <PSObject>]
[-Metadata <String>]
[-Sku <Hashtable>]
[-AssignIdentity]
[-Location <String>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[-InformationAction <ActionPreference>]
[-InformationVariable <String>]
[<CommonParameters>]
New-AzureRmPolicyAssignment
-Name <String>
-Scope <String>
[-NotScope <String[]>]
[-DisplayName <String>]
[-Description <String>]
-PolicyDefinition <PSObject>
[-PolicySetDefinition <PSObject>]
-PolicyParameterObject <Hashtable>
[-Metadata <String>]
[-Sku <Hashtable>]
[-AssignIdentity]
[-Location <String>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[-InformationAction <ActionPreference>]
[-InformationVariable <String>]
[<CommonParameters>]
New-AzureRmPolicyAssignment
-Name <String>
-Scope <String>
[-NotScope <String[]>]
[-DisplayName <String>]
[-Description <String>]
-PolicyDefinition <PSObject>
[-PolicySetDefinition <PSObject>]
-PolicyParameter <String>
[-Metadata <String>]
[-Sku <Hashtable>]
[-AssignIdentity]
[-Location <String>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[-InformationAction <ActionPreference>]
[-InformationVariable <String>]
[<CommonParameters>]
New-AzureRmPolicyAssignment
-Name <String>
-Scope <String>
[-NotScope <String[]>]
[-DisplayName <String>]
[-Description <String>]
[-PolicyDefinition <PSObject>]
-PolicySetDefinition <PSObject>
-PolicyParameterObject <Hashtable>
[-Metadata <String>]
[-Sku <Hashtable>]
[-AssignIdentity]
[-Location <String>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[-InformationAction <ActionPreference>]
[-InformationVariable <String>]
[<CommonParameters>]
New-AzureRmPolicyAssignment
-Name <String>
-Scope <String>
[-NotScope <String[]>]
[-DisplayName <String>]
[-Description <String>]
[-PolicyDefinition <PSObject>]
-PolicySetDefinition <PSObject>
-PolicyParameter <String>
[-Metadata <String>]
[-Sku <Hashtable>]
[-AssignIdentity]
[-Location <String>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[-InformationAction <ActionPreference>]
[-InformationVariable <String>]
[<CommonParameters>]
Beschreibung
Das Cmdlet New-AzureRmPolicyAssignment erstellt eine Richtlinienzuweisung. Geben Sie eine Richtlinie und einen Bereich an.
Beispiele
Beispiel 1: Richtlinienzuweisung auf Ressourcengruppenebene
PS C:\> $ResourceGroup = Get-AzureRmResourceGroup -Name 'ResourceGroup11'
PS C:\> $Policy = Get-AzureRmPolicyDefinition -Name 'VirtualMachinePolicy'
PS C:\> New-AzureRmPolicyAssignment -Name 'VirtualMachinePolicyAssignment' -PolicyDefinition $Policy -Scope $ResourceGroup.ResourceId
Der erste Befehl ruft eine Ressourcengruppe namens ResourceGroup11 mithilfe des Cmdlets "Get-AzureRMResourceGroup" ab und speichert sie in der variablen $ResourceGroup. Der zweite Befehl ruft die Richtliniendefinition mit dem Namen VirtualMachinePolicy mithilfe des Cmdlets "Get-AzureRmPolicyDefinition" ab und speichert sie in der $Policy Variablen. Der letzte Befehl weist die Richtlinie in $Policy auf der Ebene der Ressourcengruppe zu, die durch die ResourceId-Eigenschaft von $ResourceGroup identifiziert wird.
Beispiel 2: Richtlinienzuweisung auf Ressourcengruppenebene mit Richtlinienparameterobjekt
PS C:\> $ResourceGroup = Get-AzureRmResourceGroup -Name 'ResourceGroup11'
PS C:\> $Policy = Get-AzureRmPolicyDefinition -BuiltIn | Where-Object {$_.Properties.DisplayName -eq 'Allowed locations'}
PS C:\> $Locations = Get-AzureRmLocation | where displayname -like '*east*'
PS C:\> $AllowedLocations = @{'listOfAllowedLocations'=($Locations.location)}
PS C:\> New-AzureRmPolicyAssignment -Name 'RestrictLocationPolicyAssignment' -PolicyDefinition $Policy -Scope $ResourceGroup.ResourceId -PolicyParameterObject $AllowedLocations
Der erste Befehl ruft eine Ressourcengruppe namens ResourceGroup11 mithilfe des Cmdlets "Get-AzureRMResourceGroup" ab. Der Befehl speichert dieses Objekt in der $ResourceGroup Variablen. Der zweite Befehl ruft die integrierte Richtliniendefinition für zulässige Speicherorte mithilfe des Cmdlets "Get-AzureRmPolicyDefinition" ab. Der Befehl speichert dieses Objekt in der $Policy Variablen. Mit den dritten und vierten Befehlen wird ein Objekt erstellt, das alle Azure-Regionen mit "east" im Namen enthält. Die Befehle speichern dieses Objekt in der $AllowedLocations Variablen. Der letzte Befehl weist die Richtlinie in $Policy auf der Ebene einer Ressourcengruppe mithilfe des Richtlinienparameterobjekts in $AllowedLocations zu. Die ResourceId-Eigenschaft von $ResourceGroup identifiziert die Ressourcengruppe.
Beispiel 3: Richtlinienzuweisung auf Ressourcengruppenebene mit Richtlinienparameterdatei
Erstellen Sie eine Datei namens AllowedLocations.json im lokalen Arbeitsverzeichnis mit dem folgenden Inhalt.
{
"listOfAllowedLocations": {
"value": [
"westus",
"westeurope",
"japanwest"
]
}
}
PS C:\> $ResourceGroup = Get-AzureRmResourceGroup -Name 'ResourceGroup11'
PS C:\> $Policy = Get-AzureRmPolicyDefinition -BuiltIn | Where-Object {$_.Properties.DisplayName -eq 'Allowed locations'}
PS C:\> New-AzureRmPolicyAssignment -Name 'RestrictLocationPolicyAssignment' -PolicyDefinition $Policy -Scope $ResourceGroup.ResourceId -PolicyParameter .\AllowedLocations.json
Der erste Befehl ruft eine Ressourcengruppe namens ResourceGroup11 mithilfe des Cmdlets "Get-AzureRMResourceGroup" ab und speichert sie in der variablen $ResourceGroup. Der zweite Befehl ruft die integrierte Richtliniendefinition für zulässige Speicherorte mithilfe des Cmdlets "Get-AzureRmPolicyDefinition" ab und speichert sie in der variablen $Policy. Der letzte Befehl weist die Richtlinie in $Policy an der Ressourcengruppe zu, die durch die ResourceId-Eigenschaft von $ResourceGroup mithilfe der Richtlinienparameterdatei AllowedLocations.json aus dem lokalen Arbeitsverzeichnis identifiziert wird.
Beispiel 4: Richtlinienzuweisung mit einer verwalteten Identität
PS C:\> $ResourceGroup = Get-AzureRmResourceGroup -Name 'ResourceGroup11'
PS C:\> $Policy = Get-AzureRmPolicyDefinition -Name 'VirtualMachinePolicy'
PS C:\> New-AzureRmPolicyAssignment -Name 'VirtualMachinePolicyAssignment' -PolicyDefinition $Policy -Scope $ResourceGroup.ResourceId -Location 'eastus' -AssignIdentity
Der erste Befehl ruft eine Ressourcengruppe namens ResourceGroup11 mithilfe des Cmdlets "Get-AzureRMResourceGroup" ab und speichert sie in der variablen $ResourceGroup. Der zweite Befehl ruft die Richtliniendefinition mit dem Namen VirtualMachinePolicy mithilfe des Cmdlets "Get-AzureRmPolicyDefinition" ab und speichert sie in der $Policy Variablen. Der letzte Befehl weist die Richtlinie in $Policy der Ressourcengruppe zu. Eine verwaltete Identität wird automatisch erstellt und der Richtlinienzuweisung zugewiesen.
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 Microsoft Entra-Identität für diese Richtlinienzuweisung. Die Identität wird verwendet, wenn Bereitstellungen für "deployIfNotExists"-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: | 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 Anzeigenamen für die Richtlinienzuweisung an.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-InformationAction
Gibt an, wie dieses Cmdlet auf ein Informationsereignis reagiert. Zulässige Werte für diesen Parameter:
- Weiter
- Ignorieren
- Inquire
- SilentlyContinue
- Beenden
- Angehalten
Typ: | ActionPreference |
Aliase: | infa |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-InformationVariable
Gibt eine Informationsvariable an.
Typ: | String |
Aliase: | iv |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Location
Der Speicherort der Ressourcenidentität der Richtlinienzuweisung. Dies ist erforderlich, wenn der Switch "-AssignIdentity" verwendet wird.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-Metadata
Die Metadaten für die neue 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 einen Namen für die Richtlinienzuweisung an.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-NotScope
Die nicht für die Richtlinienzuweisung vorgesehenen Bereiche.
Typ: | String[] |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-PolicyDefinition
Gibt eine Richtlinie als PsPolicyDefinition -Objekt an, das die Richtlinienregel enthält.
Typ: | PSObject |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-PolicyParameter
Die Datei- oder Richtlinienparameterzeichenfolge des Richtlinienparameters.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-PolicyParameterObject
Das Richtlinienparameterobjekt.
Typ: | Hashtable |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-PolicySetDefinition
Das Richtliniensatzdefinitionsobjekt.
Typ: | PSObject |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
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, in dem die Richtlinie zugewiesen werden soll.
Wenn Sie beispielsweise einer Ressourcengruppe eine Richtlinie zuweisen möchten, geben Sie Folgendes an: /subscriptions/
Name der Abonnement-ID-Ressourcengruppe/resourcegroups/
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-Sku
Eine Hashtabelle, die SKU-Eigenschaften darstellt. Standardeinstellung für die kostenlose SKU mit den Werten: @{Name = 'A0'; Tier = 'Free'}
. Um die Standard-SKU zu verwenden, verwenden Sie die Werte: @{Name = 'A1'; Tier = 'Standard'}
.
Typ: | Hashtable |
Aliase: | SkuObject |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |