Partager via


Update-AzPolicyAssignment

Cette opération met à jour une attribution de stratégie avec l’étendue et le nom donnés. Les affectations de stratégie s’appliquent à toutes les ressources contenues dans leur étendue. Par exemple, lorsque vous affectez une stratégie à l’étendue du groupe de ressources, cette stratégie s’applique à toutes les ressources du groupe.

Syntaxe

Update-AzPolicyAssignment
      -Name <String>
      [-Scope <String>]
      [-NotScope <String[]>]
      [-DisplayName <String>]
      [-Description <String>]
      [-Metadata <String>]
      [-Location <String>]
      [-EnforcementMode <String>]
      [-IdentityType <String>]
      [-IdentityId <String>]
      [-NonComplianceMessage <PSObject[]>]
      [-BackwardCompatible]
      [-DefaultProfile <PSObject>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-AzPolicyAssignment
      -Name <String>
      [-Scope <String>]
      [-NotScope <String[]>]
      [-DisplayName <String>]
      [-Description <String>]
      [-Metadata <String>]
      [-Location <String>]
      [-EnforcementMode <String>]
      [-IdentityType <String>]
      [-IdentityId <String>]
      [-NonComplianceMessage <PSObject[]>]
      [-BackwardCompatible]
      -PolicyParameterObject <PSObject>
      [-DefaultProfile <PSObject>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-AzPolicyAssignment
      -Name <String>
      [-Scope <String>]
      [-NotScope <String[]>]
      [-DisplayName <String>]
      [-Description <String>]
      [-Metadata <String>]
      [-Location <String>]
      [-EnforcementMode <String>]
      [-IdentityType <String>]
      [-IdentityId <String>]
      [-NonComplianceMessage <PSObject[]>]
      [-BackwardCompatible]
      -PolicyParameter <String>
      [-DefaultProfile <PSObject>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-AzPolicyAssignment
      -Id <String>
      [-NotScope <String[]>]
      [-DisplayName <String>]
      [-Description <String>]
      [-Metadata <String>]
      [-Location <String>]
      [-EnforcementMode <String>]
      [-IdentityType <String>]
      [-IdentityId <String>]
      [-NonComplianceMessage <PSObject[]>]
      [-BackwardCompatible]
      [-DefaultProfile <PSObject>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-AzPolicyAssignment
      -Id <String>
      [-NotScope <String[]>]
      [-DisplayName <String>]
      [-Description <String>]
      [-Metadata <String>]
      [-Location <String>]
      [-EnforcementMode <String>]
      [-IdentityType <String>]
      [-IdentityId <String>]
      [-NonComplianceMessage <PSObject[]>]
      [-BackwardCompatible]
      -PolicyParameterObject <PSObject>
      [-DefaultProfile <PSObject>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-AzPolicyAssignment
      -Id <String>
      [-NotScope <String[]>]
      [-DisplayName <String>]
      [-Description <String>]
      [-Metadata <String>]
      [-Location <String>]
      [-EnforcementMode <String>]
      [-IdentityType <String>]
      [-IdentityId <String>]
      [-NonComplianceMessage <PSObject[]>]
      [-BackwardCompatible]
      -PolicyParameter <String>
      [-DefaultProfile <PSObject>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-AzPolicyAssignment
      [-NotScope <String[]>]
      [-DisplayName <String>]
      [-Description <String>]
      [-Metadata <String>]
      [-Location <String>]
      [-EnforcementMode <String>]
      [-IdentityType <String>]
      [-IdentityId <String>]
      [-NonComplianceMessage <PSObject[]>]
      [-BackwardCompatible]
      -InputObject <IPolicyAssignment>
      [-DefaultProfile <PSObject>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

Cette opération met à jour une attribution de stratégie avec l’étendue et le nom donnés. Les affectations de stratégie s’appliquent à toutes les ressources contenues dans leur étendue. Par exemple, lorsque vous affectez une stratégie à l’étendue du groupe de ressources, cette stratégie s’applique à toutes les ressources du groupe.

Exemples

Exemple 1 : Mettre à jour le nom complet

$ResourceGroup = Get-AzResourceGroup -Name 'ResourceGroup11'
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment' -Scope $ResourceGroup.ResourceId
Update-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -DisplayName 'Do not allow VM creation'

La première commande obtient un groupe de ressources nommé ResourceGroup11 à l’aide de l’applet de commande Get-AzResourceGroup. La commande stocke cet objet dans la variable $ResourceGroup. La deuxième commande obtient l’attribution de stratégie nommée PolicyAssignment à l’aide de l’applet de commande Get-AzPolicyAssignment. La commande stocke cet objet dans la variable $PolicyAssignment. La commande finale met à jour le nom complet sur l’affectation de stratégie sur le groupe de ressources identifié par la propriété ResourceId de $ResourceGroup.

Exemple 2 : Ajouter une identité managée affectée par le système à l’attribution de stratégie

$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment'
Update-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -IdentityType 'SystemAssigned' -Location 'westus'

La première commande obtient l’attribution de stratégie nommée PolicyAssignment à partir de l’abonnement actuel à l’aide de l’applet de commande Get-AzPolicyAssignment. La commande stocke cet objet dans la variable $PolicyAssignment. La commande finale affecte une identité managée affectée par le système à l’attribution de stratégie.

Exemple 3 : Ajouter une identité managée affectée par l’utilisateur à l’attribution de stratégie

$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment'
$UserAssignedIdentity = Get-AzUserAssignedIdentity -ResourceGroupName 'ResourceGroup1' -Name 'UserAssignedIdentity1'
 Update-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -IdentityType 'UserAssigned' -Location 'westus' -IdentityId $UserAssignedIdentity.Id

La première commande obtient l’attribution de stratégie nommée PolicyAssignment à partir de l’abonnement actuel à l’aide de l’applet de commande Get-AzPolicyAssignment. La commande stocke cet objet dans la variable $PolicyAssignment. La deuxième commande obtient l’identité managée affectée par l’utilisateur nommée UserAssignedIdentity1 à l’aide de l’applet de commande Get-AzUserAssignedIdentity et la stocke dans la variable $UserAssignedIdentity. La commande finale affecte l’identité managée affectée par l’utilisateur identifiée par la propriété ID de $UserAssignedIdentity à l’attribution de stratégie.

Exemple 4 : Mettre à jour les paramètres d’attribution de stratégie avec un nouvel objet de paramètre de stratégie

$Locations = Get-AzLocation | Where-Object {($_.displayname -like 'france*') -or ($_.displayname -like 'uk*')}
$AllowedLocations = @{'listOfAllowedLocations'=($Locations.location)}
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment'
Update-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -PolicyParameterObject $AllowedLocations

Les premières et deuxième commandes créent un objet contenant toutes les régions Azure dont les noms commencent par « france » ou « uk ». La deuxième commande stocke cet objet dans la variable $AllowedLocations. La troisième commande obtient l’attribution de stratégie nommée « PolicyAssignment » La commande stocke cet objet dans la variable $PolicyAssignment. La commande finale met à jour les valeurs des paramètres sur l’affectation de stratégie nommée PolicyAssignment.

Exemple 5 : Mettre à jour les paramètres d’attribution de stratégie avec le fichier de paramètres de stratégie

{
  "listOfAllowedLocations":  {
    "value": [
      "uksouth",
      "ukwest",
      "francecentral",
      "francesouth"
    ]
  }
}

Update-AzPolicyAssignment -Name 'PolicyAssignment' -PolicyParameter .\AllowedLocations.json

La commande met à jour l’attribution de stratégie nommée « PolicyAssignment » à l’aide du fichier de paramètres de stratégie AllowedLocations.json à partir du répertoire de travail local.

Exemple 6 : Mettre à jour un modèle d’application

$ResourceGroup = Get-AzResourceGroup -Name 'ResourceGroup11'
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment' -Scope $ResourceGroup.ResourceId
Update-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -EnforcementMode Default

La première commande obtient un groupe de ressources nommé ResourceGroup11 à l’aide de l’applet de commande Get-AzResourceGroup. La commande stocke cet objet dans la variable $ResourceGroup. La deuxième commande obtient l’attribution de stratégie nommée PolicyAssignment à l’aide de l’applet de commande Get-AzPolicyAssignment. La commande stocke cet objet dans la variable $PolicyAssignment. La commande finale met à jour la propriété enforcementMode sur l’affectation de stratégie sur le groupe de ressources identifié par la propriété ResourceId de $ResourceGroup.

Exemple 7 : Mettre à jour les messages de non-conformité

$PolicyAssignment = Get-AzPolicyAssignment -Name 'VirtualMachinePolicy'
Update-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -NonComplianceMessage @{Message="All resources must follow resource naming guidelines."}

La première commande obtient l’attribution de stratégie nommée VirtualMachinePolicy à l’aide de l’applet de commande Get-AzPolicyAssignment et la stocke dans la variable $PolicyAssignment. La commande finale met à jour les messages de non-conformité sur l’attribution de stratégie avec un nouveau message qui s’affiche si une ressource est refusée par la stratégie.

Exemple 8 : [Backcompat] Mettre à jour un mode d’application

$ResourceGroup = Get-AzResourceGroup -Name 'ResourceGroup11'
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment' -Scope $ResourceGroup.ResourceId
Set-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -EnforcementMode Default

La première commande obtient un groupe de ressources nommé ResourceGroup11 à l’aide de l’applet de commande Get-AzResourceGroup. La commande stocke cet objet dans la variable $ResourceGroup. La deuxième commande obtient l’attribution de stratégie nommée PolicyAssignment à l’aide de l’applet de commande Get-AzPolicyAssignment. La commande stocke cet objet dans la variable $PolicyAssignment. La commande finale met à jour la propriété enforcementMode sur l’affectation de stratégie sur le groupe de ressources identifié par la propriété ResourceId de $ResourceGroup.

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 l’applet de commande.

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

Ce message fait partie de la réponse en cas de violation 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 l’attribution 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

-EnforcementMode

Mode d’application de l’attribution de stratégie. Les valeurs possibles sont Default et DoNotEnforce.

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

-Id

ID de l’affectation de stratégie à mettre à jour. Utilisez le format « {scope}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName} ».

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

-IdentityId

Identité de l’utilisateur associée à la stratégie. Les références de clé de dictionnaire d’identité utilisateur seront des ID de ressource ARM sous la forme : « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName} ».

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

-IdentityType

Type d’identité. Il s’agit du seul champ obligatoire lors de l’ajout d’une identité affectée par le système ou l’utilisateur à une ressource.

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

-InputObject

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

-Location

Emplacement de l’affectation de stratégie. Obligatoire uniquement lors de l’utilisation de l’identité managée.

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

-Metadata

Métadonnées d’attribution 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

-Name

Nom de l’attribution de stratégie.

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

-NonComplianceMessage

Messages qui décrivent pourquoi une ressource n’est pas conforme à la stratégie. Pour construire, consultez la section NOTES pour les propriétés NONCOMPLIANCEMESSAGE et créer une table de hachage.

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

-NotScope

Étendues exclues de la 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

-PolicyParameter

Valeurs des paramètres de la règle de stratégie affectée. Les clés sont les noms de paramètres.

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

-PolicyParameterObject

Valeurs des paramètres de la règle de stratégie affectée. Les clés sont les noms de paramètres.

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

-Scope

Étendue de l’attribution de stratégie. Les étendues valides sont les suivantes : groupe d’administration (format : '/providers/Microsoft.Management/managementGroups/{managementGroup}'), abonnement (format : '/subscriptions/{subscriptionId}'), groupe de ressources (format : '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}', ou ressource (format : '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}'

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

-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

IPolicyAssignment

PSObject[]

String

String[]

Sorties

IPolicyAssignment

Notes

ALIAS

Set-AzPolicyAssignment