Поделиться через


Update-AzPolicyAssignment

Эта операция обновляет назначение политики с заданным область и именем. Назначения политик применяются ко всем ресурсам, содержащимся в их область. Например, при назначении политики в группе ресурсов область эта политика применяется ко всем ресурсам в группе.

Синтаксис

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>]

Описание

Эта операция обновляет назначение политики с заданным область и именем. Назначения политик применяются ко всем ресурсам, содержащимся в их область. Например, при назначении политики в группе ресурсов область эта политика применяется ко всем ресурсам в группе.

Примеры

Пример 1. Обновление отображаемого имени

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

Первая команда получает группу ресурсов с именем ResourceGroup11 с помощью командлета Get-AzResourceGroup. Команда сохраняет этот объект в переменной $ResourceGroup. Вторая команда получает назначение политики с именем PolicyAssignment с помощью командлета Get-AzPolicyAssignment. Команда сохраняет этот объект в переменной $PolicyAssignment. Последняя команда обновляет отображаемое имя назначения политики в группе ресурсов, определяемой свойством ResourceId $ResourceGroup.

Пример 2. Добавление управляемого удостоверения, назначаемого системой, в назначение политики

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

Первая команда получает назначение политики с именем PolicyAssignment из текущей подписки с помощью командлета Get-AzPolicyAssignment. Команда сохраняет этот объект в переменной $PolicyAssignment. Последняя команда назначает управляемому удостоверению, назначенному системой, назначение политики.

Пример 3. Добавление управляемого удостоверения, назначаемого пользователем, в назначение политики

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

Первая команда получает назначение политики с именем PolicyAssignment из текущей подписки с помощью командлета Get-AzPolicyAssignment. Команда сохраняет этот объект в переменной $PolicyAssignment. Вторая команда получает управляемое удостоверение с именем UserAssignedIdentity1 с помощью командлета Get-AzUserAssignedIdentity и сохраняет его в переменной $UserAssignedIdentity. Последняя команда назначает управляемому удостоверению, назначенному пользователем, идентифицируемому свойством идентификатора $UserAssignedIdentity назначению политики.

Пример 4. Обновление параметров назначения политики с помощью нового объекта параметра политики

$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

Первая и вторая команды создают объект, содержащий все регионы Azure, имена которых начинаются с "france" или "uk". Вторая команда сохраняет этот объект в переменной $AllowedLocations. Третья команда получает назначение политики с именем PolicyAssignment. Команда сохраняет этот объект в переменной $PolicyAssignment. Последняя команда обновляет значения параметров для назначения политики с именем PolicyAssignment.

Пример 5. Обновление параметров назначения политики с помощью файла параметров политики

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

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

Команда обновляет назначение политики с именем PolicyAssignment с помощью файла параметров политики AllowedLocations.json из локального рабочего каталога.

Пример 6. Обновление объекта enforcementMode

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

Первая команда получает группу ресурсов с именем ResourceGroup11 с помощью командлета Get-AzResourceGroup. Команда сохраняет этот объект в переменной $ResourceGroup. Вторая команда получает назначение политики с именем PolicyAssignment с помощью командлета Get-AzPolicyAssignment. Команда сохраняет этот объект в переменной $PolicyAssignment. Последняя команда обновляет свойство enforcementMode для назначения политики в группе ресурсов, определяемой свойством ResourceId $ResourceGroup.

Пример 7. Обновление сообщений о несоответствии

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

Первая команда получает назначение политики с именем VirtualMachinePolicy с помощью командлета Get-AzPolicyAssignment и сохраняет его в переменной $PolicyAssignment. Последняя команда обновляет сообщения о несоответствии назначению политики новым сообщением, которое будет отображаться, если ресурс запрещен политикой.

Пример 8. [Backcompat] Обновление объекта enforcementMode

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

Первая команда получает группу ресурсов с именем ResourceGroup11 с помощью командлета Get-AzResourceGroup. Команда сохраняет этот объект в переменной $ResourceGroup. Вторая команда получает назначение политики с именем PolicyAssignment с помощью командлета Get-AzPolicyAssignment. Команда сохраняет этот объект в переменной $PolicyAssignment. Последняя команда обновляет свойство enforcementMode для назначения политики в группе ресурсов, определяемой свойством ResourceId $ResourceGroup.

Параметры

-BackwardCompatible

Позволяет командлету возвращать артефакты с помощью устаревшего формата размещения свойств, относящихся к политике, в объекте контейнера свойств.

Тип:SwitchParameter
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Запрос подтверждения перед выполнением командлета.

Тип:SwitchParameter
Aliases:cf
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Параметр DefaultProfile не работает. Используйте параметр SubscriptionId, если он доступен при выполнении командлета в другой подписке.

Тип:PSObject
Aliases:AzureRMContext, AzureCredential
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

Это сообщение будет частью ответа в случае нарушения политики.

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:True
Accept wildcard characters:False

-DisplayName

Отображаемое имя назначения политики.

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:True
Accept wildcard characters:False

-EnforcementMode

Режим принудительного применения назначений политик. Возможные значения: Default и DoNotEnforce.

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:True
Accept wildcard characters:False

-Id

Идентификатор назначения политики для обновления. Используйте формат "{область}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}".

Тип:String
Aliases:ResourceId, PolicyAssignmentId
Position:Named
значение по умолчанию:None
Обязательно:True
Accept pipeline input:True
Accept wildcard characters:False

-IdentityId

Удостоверение пользователя, связанное с политикой. Ссылки на ключ словаря удостоверений пользователя будут идентификаторами ресурсов ARM в форме: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}".

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-IdentityType

Тип удостоверения. Это единственное обязательное поле при добавлении удостоверения, назначенного системой или пользователем, в ресурс.

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Тип:IPolicyAssignment
Position:Named
значение по умолчанию:None
Обязательно:True
Accept pipeline input:True
Accept wildcard characters:False

-Location

Расположение назначения политики. Требуется только при использовании управляемого удостоверения.

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:True
Accept wildcard characters:False

-Metadata

Метаданные назначения политики. Метаданные — это открытый завершенный объект, который обычно представляет собой коллекцию пар значений ключей.

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:True
Accept wildcard characters:False

-Name

Имя назначения политики.

Тип:String
Aliases:PolicyAssignmentName
Position:Named
значение по умолчанию:None
Обязательно:True
Accept pipeline input:True
Accept wildcard characters:False

-NonComplianceMessage

Сообщения, описывающие, почему ресурс не соответствует политике. Сведения о создании см. в разделе NOTES для свойств NONCOMPLIANCEMESSAGE и создания хэш-таблицы.

Тип:PSObject[]
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:True
Accept wildcard characters:False

-NotScope

Исключенные область политики.

Тип:String[]
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:True
Accept wildcard characters:False

-PolicyParameter

Значения параметров для назначенного правила политики. Ключи — это имена параметров.

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:True
Accept pipeline input:True
Accept wildcard characters:False

-PolicyParameterObject

Значения параметров для назначенного правила политики. Ключи — это имена параметров.

Тип:PSObject
Position:Named
значение по умолчанию:None
Обязательно:True
Accept pipeline input:False
Accept wildcard characters:False

-Scope

Область назначения политики. Допустимые область: группа управления (формат : "/providers/Microsoft.Management/managementGroups/{managementGroup}"), подписка (формат "/subscriptions/{subscriptionId}"), группа ресурсов (формат "/subscriptionId}/{subscriptionId}/resourceGroups/{resourceGroupName}", или ресурс (формат: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{ resourceName}'

Тип:String
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Показывает, что произойдет при запуске командлета. Командлет не выполняется.

Тип:SwitchParameter
Aliases:wi
Position:Named
значение по умолчанию:None
Обязательно:False
Accept pipeline input:False
Accept wildcard characters:False

Входные данные

IPolicyAssignment

PSObject[]

String

String[]

Выходные данные

IPolicyAssignment

Примечания

ПСЕВДОНИМЫ

Set-AzPolicyAssignment