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[]>]
[-Override <IOverride[]>]
[-ResourceSelector <IResourceSelector[]>]
[-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[]>]
[-Override <IOverride[]>]
[-ResourceSelector <IResourceSelector[]>]
[-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[]>]
[-Override <IOverride[]>]
[-ResourceSelector <IResourceSelector[]>]
[-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[]>]
[-Override <IOverride[]>]
[-ResourceSelector <IResourceSelector[]>]
[-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[]>]
[-Override <IOverride[]>]
[-ResourceSelector <IResourceSelector[]>]
[-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[]>]
[-Override <IOverride[]>]
[-ResourceSelector <IResourceSelector[]>]
[-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[]>]
[-Override <IOverride[]>]
[-ResourceSelector <IResourceSelector[]>]
[-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.
Последняя команда обновляет отображаемое имя назначения политики в группе ресурсов, определяемой $ResourceGroup свойством resourceId
Пример 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 идентификатора $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. Обновление селектора ресурсов
$ResourceSelector = @{Name = "MyLocationSelector"; Selector = @(@{Kind = "resourceLocation"; NotIn = @("eastus", "eastus2")})}
Update-AzPolicyAssignment -Name 'VirtualMachinePolicyAssignment' -ResourceSelector $ResourceSelector
Первая команда создает объект селектора ресурсов, который будет использоваться для указания назначения, должен применяться только к ресурсам, не расположенным в восточной части США или восточной части США 2, и сохраняет его в переменной $ResourceSelector. Последняя команда обновляет назначение политики с именем VirtualMachinePolicyAssignment с помощью селектора ресурсов, указанного $ResourceSelector.
Пример 9. Переопределение обновления
$Selector = @{Kind = "resourceLocation"; NotIn = @("eastus", "eastus2")}
$Override = @(@{Kind = "policyEffect"; Value = 'Disabled'; Selector = @($Selector)})
Update-AzPolicyAssignment -Name 'VirtualMachinePolicyAssignment' -Override $Override
Первая команда создает селектор расположения, указывающий расположения, отличные от восточной части США или восточной части США 2, и хранится в переменной $Selector. Вторая команда создает объект переопределения, который будет использоваться для указания того, что назначенное определение должно иметь эффект "Отключено" в расположениях, определенных $Selector. Последняя команда обновляет назначение политики с именем VirtualMachinePolicyAssignment с переопределением, указанным $Override.
Пример 10. [Backcompat] Обновление принудительногоmode
$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 |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Confirm
Запрашивает подтверждение перед запуском командлета.
Тип: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-DefaultProfile
Параметр DefaultProfile не работает. Используйте параметр SubscriptionId, если он доступен при выполнении командлета в другой подписке.
Тип: | PSObject |
Aliases: | AzureRMContext, AzureCredential |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Description
Это сообщение будет частью ответа в случае нарушения политики.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-DisplayName
Отображаемое имя назначения политики.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-EnforcementMode
Режим принудительного применения назначений политик. Возможные значения: Default и DoNotEnforce.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Id
Идентификатор назначения политики для обновления. Используйте формат "{scope}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}".
Тип: | String |
Aliases: | ResourceId, PolicyAssignmentId |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-IdentityId
Удостоверение пользователя, связанное с политикой. Ссылки на ключ словаря удостоверений пользователя будут идентификаторами ресурсов ARM в форме: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}".
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-IdentityType
Тип удостоверения. Это единственное обязательное поле при добавлении удостоверения, назначенного системой или пользователем, в ресурс.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-InputObject
Тип: | IPolicyAssignment |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Location
Расположение назначения политики. Требуется только при использовании управляемого удостоверения.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Metadata
Метаданные назначения политики. Метаданные — это открытый завершенный объект, который обычно представляет собой коллекцию пар значений ключей.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Name
Имя назначения политики.
Тип: | String |
Aliases: | PolicyAssignmentName |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-NonComplianceMessage
Сообщения, описывающие, почему ресурс не соответствует политике. Сведения о создании см. в разделе NOTES для свойств NONCOMPLIANCEMESSAGE и создания хэш-таблицы.
Тип: | PSObject[] |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-NotScope
Исключенные области политики.
Тип: | String[] |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Override
Переопределение значения свойства политики.
Тип: | IOverride[] |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-PolicyParameter
Значения параметров для назначенного правила политики. Ключи — это имена параметров.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-PolicyParameterObject
Значения параметров для назначенного правила политики. Ключи — это имена параметров.
Тип: | PSObject |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-ResourceSelector
Список селекторов ресурсов для фильтрации политик по свойствам ресурсов.
Тип: | IResourceSelector[] |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Scope
Область назначения политики. Допустимые области: группа управления (формат :/providers/Microsoft.Management/managementGroups/{managementGroup}), подписка (формат '/subscriptions/{subscriptionId}'), группа ресурсов (формат :/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}', или ресурс (формат: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}"
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-WhatIf
Показывает, что произойдет, если командлет выполняется. Командлет не выполняется.
Тип: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Входные данные
PSObject[]
String[]
Выходные данные
Примечания
ПСЕВДОНИМЫ
Set-AzPolicyAssignment
Azure PowerShell