Sdílet prostřednictvím


New-AzPolicyDefinition

Vytvoří nebo aktualizuje definici zásady.

Syntax

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

Rutina New-AzPolicyDefinition vytvoří nebo aktualizuje definici zásady, která obsahuje formát JSON pravidla zásad.

Příklady

Příklad 1: Vytvoření definice zásady pomocí souboru zásad

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

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

Tento příkaz vytvoří definici zásady s názvem LocationDefinition, která obsahuje pravidlo zásady zadané v C:\LocationPolicy.json. Příklad obsahu souboru LocationPolicy.json je uvedený výše. Podporují se tři formáty obsahu souborů: 1. Pravidlo zásad (příklad výše). 2. Objekt vlastností zásad. Tento formát se zobrazí na portálu při úpravě definice zásady a může obsahovat parametry. 3. Úplný objekt zásad. Tento formát vygeneruje funkce exportu služby Azure Policy a může obsahovat parametry.

Poznámka: Hodnoty zadané na příkazovém řádku (např. parametry, metadata) přepíší odpovídající hodnoty, které jsou v souboru.

Příklad 2: Vytvoření definice parametrizované zásady pomocí vložených parametrů

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

Tento příkaz vytvoří definici zásady s názvem LocationDefinition, která obsahuje pravidlo zásady zadané v C:\LocationPolicy.json. Definice parametru pravidla zásad je uvedená v textu.

Příklad 3: Vytvoření definice zásady vložené do skupiny pro správu

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

Tento příkaz vytvoří definici zásady s názvem VMPolicyDefinition ve skupině pro správu Dept42. Příkaz určuje zásadu jako řetězec v platném formátu JSON.

Příklad 4: Vytvoření definice zásady vložené s metadaty

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

Tento příkaz vytvoří definici zásady s názvem VMPolicyDefinition s metadaty označujícími, že je její kategorie "Virtuální počítač". Příkaz určuje zásadu jako řetězec v platném formátu JSON.

Příklad 5: Vytvoření definice zásady vložené s režimem

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

Tento příkaz vytvoří definici zásady s názvem TagsPolicyDefinition s režimem Indexováno, což znamená, že zásady by se měly vyhodnotit pouze pro typy prostředků, které podporují značky a umístění.

Parametry

-BackwardCompatible

Způsobí, že rutina vrátí artefakty pomocí staršího formátu, který umísťuje vlastnosti specifické pro zásady do objektu kontejneru vlastností.

Typ:SwitchParameter
Position:Named
výchozí hodnota:None
Vyžadováno:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Před spuštěním rutiny zobrazí výzvu k potvrzení.

Typ:SwitchParameter
Aliases:cf
Position:Named
výchozí hodnota:None
Vyžadováno:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Parametr DefaultProfile není funkční. Pokud je k dispozici spuštění rutiny pro jiné předplatné, použijte parametr SubscriptionId.

Typ:PSObject
Aliases:AzureRMContext, AzureCredential
Position:Named
výchozí hodnota:None
Vyžadováno:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

Popis definice zásady.

Typ:String
Position:Named
výchozí hodnota:None
Vyžadováno:False
Accept pipeline input:True
Accept wildcard characters:False

-DisplayName

Zobrazovaný název definice zásady.

Typ:String
Position:Named
výchozí hodnota:None
Vyžadováno:False
Accept pipeline input:True
Accept wildcard characters:False

-ManagementGroupName

ID skupiny pro správu.

Typ:String
Position:Named
výchozí hodnota:None
Vyžadováno:True
Accept pipeline input:True
Accept wildcard characters:False

-Metadata

Metadata definice zásad. Metadata jsou otevřený objekt, který je obvykle kolekcí párů klíč-hodnota.

Typ:String
Position:Named
výchozí hodnota:None
Vyžadováno:False
Accept pipeline input:True
Accept wildcard characters:False

-Mode

Režim definice zásad. Mezi příklady patří Vše, Indexováno, Microsoft.KeyVault.Data.

Typ:String
Position:Named
výchozí hodnota:None
Vyžadováno:False
Accept pipeline input:True
Accept wildcard characters:False

-Name

Název definice zásady, která se má vytvořit.

Typ:String
Aliases:PolicyDefinitionName
Position:Named
výchozí hodnota:None
Vyžadováno:True
Accept pipeline input:True
Accept wildcard characters:False

-Parameter

Definice parametrů pro parametry použité v pravidle zásad. Klíče jsou názvy parametrů.

Typ:String
Position:Named
výchozí hodnota:None
Vyžadováno:False
Accept pipeline input:True
Accept wildcard characters:False

-Policy

Pravidlo zásad.

Typ:String
Position:Named
výchozí hodnota:None
Vyžadováno:True
Accept pipeline input:True
Accept wildcard characters:False

-SubscriptionId

ID cílového předplatného.

Typ:String
Position:Named
výchozí hodnota:None
Vyžadováno:True
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Zobrazuje, co by se stalo při spuštění rutiny. Rutina není spuštěna.

Typ:SwitchParameter
Aliases:wi
Position:Named
výchozí hodnota:None
Vyžadováno:False
Accept pipeline input:False
Accept wildcard characters:False

Vstupy

String

Výstupy

IPolicyDefinition