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 |