Partager via


New-AzPolicyDefinition

Crée ou met à jour une définition de stratégie.

Syntaxe

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

L’applet de commande New-AzPolicyDefinition crée ou met à jour une définition de stratégie qui inclut un format JSON de règle de stratégie.

Exemples

Exemple 1 : Créer une définition de stratégie à l’aide d’un fichier de stratégie

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

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

Cette commande crée une définition de stratégie nommée LocationDefinition qui contient la règle de stratégie spécifiée dans C :\LocationPolicy.json. L’exemple de contenu du fichier LocationPolicy.json est fourni ci-dessus. Trois formats de contenu de fichier sont pris en charge : 1. Règle de stratégie uniquement (exemple ci-dessus). 2. Objet de propriétés de stratégie. Ce format s’affiche dans le portail lors de la modification d’une définition de stratégie et peut inclure des paramètres. 3. Objet de stratégie complet. Ce format est généré par la fonction d’exportation Azure Policy et peut inclure des paramètres.

Remarque : Les valeurs fournies sur la ligne de commande (par exemple, les paramètres, les métadonnées) remplacent les valeurs correspondantes présentes dans le fichier.

Exemple 2 : Créer une définition de stratégie paramétrable à l’aide de paramètres inline

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

Cette commande crée une définition de stratégie nommée LocationDefinition qui contient la règle de stratégie spécifiée dans C :\LocationPolicy.json. La définition de paramètre de la règle de stratégie est fournie en ligne.

Exemple 3 : Créer une définition de stratégie inline dans un groupe d’administration

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

Cette commande crée une définition de stratégie nommée VMPolicyDefinition dans le groupe d’administration Dept42. Cette commande spécifie la stratégie comme une chaîne au format JSON valide.

Exemple 4 : Créer une définition de stratégie incorporée avec des métadonnées

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

Cette commande crée une définition de stratégie nommée VMPolicyDefinition avec des métadonnées indiquant que sa catégorie est « Machine virtuelle ». Cette commande spécifie la stratégie comme une chaîne au format JSON valide.

Exemple 5 : Créer une définition de stratégie en ligne avec le mode

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

Cette commande crée une définition de stratégie nommée TagsPolicyDefinition avec le mode « Indexed » indiquant que la stratégie doit être évaluée uniquement pour les types de ressources qui prennent en charge les balises et l’emplacement.

Paramètres

-BackwardCompatible

Provoque le retour d’artefacts à l’aide d’un format hérité plaçant des propriétés propres à une stratégie dans un objet de conteneur de propriétés.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Confirm

Vous demande une confirmation avant d’exécuter la commande cmdlet.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DefaultProfile

Le paramètre DefaultProfile n’est pas fonctionnel. Utilisez le paramètre SubscriptionId lorsqu’il est disponible si vous exécutez l’applet de commande sur un autre abonnement.

Type:PSObject
Alias:AzureRMContext, AzureCredential
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Description

Description de la définition de stratégie.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-DisplayName

Nom complet de la définition de stratégie.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-ManagementGroupName

ID du groupe d’administration.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Metadata

Métadonnées de définition de stratégie. Les métadonnées sont un objet ouvert et sont généralement une collection de paires clé-valeur.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Mode

Mode de définition de stratégie. Voici quelques exemples : All, Indexed, Microsoft.KeyVault.Data.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Name

Nom de la définition de stratégie à créer.

Type:String
Alias:PolicyDefinitionName
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Parameter

Définitions de paramètres pour les paramètres utilisés dans la règle de stratégie. Les clés sont les noms de paramètres.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Policy

Règle de stratégie.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-SubscriptionId

ID de l’abonnement cible.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-WhatIf

Montre ce qui se passe en cas d’exécution de l’applet de commande. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Alias:wi
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

String

Sorties

IPolicyDefinition