Delen via


New-AzPolicyDefinition

Hiermee maakt of werkt u een beleidsdefinitie bij.

Syntaxis

New-AzPolicyDefinition
   -Name <String>
   -Policy <String>
   [-DisplayName <String>]
   [-Description <String>]
   [-Metadata <String>]
   [-Parameter <String>]
   [-Mode <String>]
   [-BackwardCompatible]
   [-DefaultProfile <PSObject>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzPolicyDefinition
   -Name <String>
   -ManagementGroupName <String>
   -Policy <String>
   [-DisplayName <String>]
   [-Description <String>]
   [-Metadata <String>]
   [-Parameter <String>]
   [-Mode <String>]
   [-BackwardCompatible]
   [-DefaultProfile <PSObject>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzPolicyDefinition
   -Name <String>
   -SubscriptionId <String>
   -Policy <String>
   [-DisplayName <String>]
   [-Description <String>]
   [-Metadata <String>]
   [-Parameter <String>]
   [-Mode <String>]
   [-BackwardCompatible]
   [-DefaultProfile <PSObject>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

Met de cmdlet New-AzPolicyDefinition wordt een beleidsdefinitie gemaakt of bijgewerkt die een JSON-indeling voor een beleidsregel bevat.

Voorbeelden

Voorbeeld 1: Een beleidsdefinitie maken met behulp van een beleidsbestand

{
   "if": {
      "field": "location",
      "notIn": ["eastus", "westus", "centralus"]
   },
   "then": {
      "effect": "audit"
   }
}

New-AzPolicyDefinition -Name 'LocationDefinition' -Policy C:\LocationPolicy.json

Met deze opdracht maakt u een beleidsdefinitie met de naam LocationDefinition die de beleidsregel bevat die is opgegeven in C:\LocationPolicy.json. Voorbeeldinhoud voor het LocationPolicy.json bestand wordt hierboven weergegeven. Drie bestandsindelingen voor bestandsindelingen worden ondersteund: 1. Alleen beleidsregel (voorbeeld hierboven). 2. Object beleidseigenschappen. Deze indeling wordt weergegeven in de portal bij het bewerken van een beleidsdefinitie en kan parameters bevatten. 3. Volledig beleidsobject. Deze indeling wordt gegenereerd door de exportfunctie van Azure Policy en kan parameters bevatten.

Opmerking: waarden die zijn opgegeven op de opdrachtregel (bijvoorbeeld parameters, metagegevens) overschrijven overeenkomende waarden die aanwezig zijn in het bestand.

Voorbeeld 2: Een geparameteriseerde beleidsdefinitie maken met behulp van inlineparameters

{
   "if": {
      "field": "location",
      "notIn": "[parameters('listOfAllowedLocations')]"
   },
   "then": {
      "effect": "audit"
   }
}
New-AzPolicyDefinition -Name 'LocationDefinition' -Policy C:\LocationPolicy.json -Parameter '{ "listOfAllowedLocations": { "type": "array" } }'

Met deze opdracht maakt u een beleidsdefinitie met de naam LocationDefinition die de beleidsregel bevat die is opgegeven in C:\LocationPolicy.json. De parameterdefinitie voor de beleidsregel wordt inline gegeven.

Voorbeeld 3: Een beleidsdefinitie inline maken in een beheergroep

New-AzPolicyDefinition -Name 'VMPolicyDefinition' -ManagementGroupName Dept42 -DisplayName 'Virtual Machine policy definition' -Policy '{"if":{"field":"type","equals":"Microsoft.Compute/virtualMachines"},"then":{"effect":"deny"}}'

Met deze opdracht maakt u een beleidsdefinitie met de naam VMPolicyDefinition in beheergroep Dept42. Met de opdracht geeft u het beleid op als een tekenreeks in een geldige JSON-indeling.

Voorbeeld 4: Een beleidsdefinitie inline maken met metagegevens

New-AzPolicyDefinition -Name 'VMPolicyDefinition' -Metadata '{"category":"Virtual Machine"}' -Policy '{"if":{"field":"type","equals":"Microsoft.Compute/virtualMachines"},"then":{"effect":"deny"}}' | Format-List

Met deze opdracht maakt u een beleidsdefinitie met de naam VMPolicyDefinition met metagegevens die aangeven dat de categorie 'Virtuele machine' is. Met de opdracht geeft u het beleid op als een tekenreeks in een geldige JSON-indeling.

Voorbeeld 5: Een beleidsdefinitie inline maken met de modus

New-AzPolicyDefinition -Name 'TagsPolicyDefinition' -Policy '{"if":{"value":"[less(length(field(''tags'')), 3)]","equals":true},"then":{"effect":"deny"}}' -Mode Indexed

Met deze opdracht maakt u een beleidsdefinitie met de naam TagsPolicyDefinition met de modus 'Geïndexeerd' die aangeeft dat het beleid alleen moet worden geëvalueerd voor resourcetypen die tags en locatie ondersteunen.

Parameters

-BackwardCompatible

Zorgt ervoor dat cmdlet artefacten retourneert met behulp van verouderde indeling waarbij beleidsspecifieke eigenschappen in een eigenschapsverzamelingsobject worden geplaatst.

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Confirm

Hiermee wordt u gevraagd om bevestiging voordat u de cmdlet uitvoert.

Type:SwitchParameter
Aliassen:cf
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-DefaultProfile

De parameter DefaultProfile is niet functioneel. Gebruik de parameter SubscriptionId indien beschikbaar als u de cmdlet uitvoert voor een ander abonnement.

Type:PSObject
Aliassen:AzureRMContext, AzureCredential
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Description

De beschrijving van de beleidsdefinitie.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-DisplayName

De weergavenaam van de beleidsdefinitie.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-ManagementGroupName

De id van de beheergroep.

Type:String
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Metadata

De metagegevens van de beleidsdefinitie. Metagegevens zijn een geopend object en zijn meestal een verzameling sleutel-waardeparen.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Mode

De beleidsdefinitiemodus. Enkele voorbeelden zijn Alle, Geïndexeerd, Microsoft.KeyVault.Data.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Name

De naam van de beleidsdefinitie die moet worden gemaakt.

Type:String
Aliassen:PolicyDefinitionName
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Parameter

De parameterdefinities voor parameters die worden gebruikt in de beleidsregel. De sleutels zijn de parameternamen.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Policy

De beleidsregel.

Type:String
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-SubscriptionId

De id van het doelabonnement.

Type:String
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-WhatIf

Hiermee wordt weergegeven wat er zou gebeuren als u de cmdlet uitvoert. De cmdlet wordt niet uitgevoerd.

Type:SwitchParameter
Aliassen:wi
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

Invoerwaarden

String

Uitvoerwaarden

IPolicyDefinition