New-AzPolicyDefinition
Создает или обновляет определение политики.
Синтаксис
Name (По умолчанию)
New-AzPolicyDefinition
-Name <String>
-Policy <String>
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
[-Parameter <String>]
[-Mode <String>]
[-BackwardCompatible]
[-DefaultProfile <PSObject>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ManagementGroupName
New-AzPolicyDefinition
-Name <String>
-ManagementGroupName <String>
-Policy <String>
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
[-Parameter <String>]
[-Mode <String>]
[-BackwardCompatible]
[-DefaultProfile <PSObject>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
SubscriptionId
New-AzPolicyDefinition
-Name <String>
-SubscriptionId <String>
-Policy <String>
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
[-Parameter <String>]
[-Mode <String>]
[-BackwardCompatible]
[-DefaultProfile <PSObject>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Описание
Командлет New-AzPolicyDefinition создает или обновляет определение политики, включающее формат JSON правила политики.
Примеры
Пример 1. Создание определения политики с помощью файла политики
{
"if": {
"field": "location",
"notIn": ["eastus", "westus", "centralus"]
},
"then": {
"effect": "audit"
}
}
New-AzPolicyDefinition -Name 'LocationDefinition' -Policy C:\LocationPolicy.json
Эта команда создает определение политики с именем LocationDefinition, содержащее правило политики, указанное в C:\LocationPolicy.js.
Ниже приведен пример содержимого для файла LocationPolicy.json.
Поддерживаются три формата содержимого файла: 1. Только правило политики (пример выше).
2. Объект свойств политики.
Этот формат отображается на портале при редактировании определения политики и может включать параметры.
3. Полный объект политики.
Этот формат создается функцией экспорта Azure Policy и может включать параметры.
Примечание. Значения, предоставленные в командной строке (например, параметры, метаданные), переопределяют соответствующие значения, присутствующих в файле.
Пример 2. Создание параметризованного определения политики с помощью встроенных параметров
{
"if": {
"field": "location",
"notIn": "[parameters('listOfAllowedLocations')]"
},
"then": {
"effect": "audit"
}
}
New-AzPolicyDefinition -Name 'LocationDefinition' -Policy C:\LocationPolicy.json -Parameter '{ "listOfAllowedLocations": { "type": "array" } }'
Эта команда создает определение политики с именем LocationDefinition, содержащее правило политики, указанное в C:\LocationPolicy.js.
Определение параметра для правила политики предоставляется встроенным образом.
Пример 3. Создание встроенного определения политики в группе управления
New-AzPolicyDefinition -Name 'VMPolicyDefinition' -ManagementGroupName Dept42 -DisplayName 'Virtual Machine policy definition' -Policy '{"if":{"field":"type","equals":"Microsoft.Compute/virtualMachines"},"then":{"effect":"deny"}}'
Эта команда создает определение политики с именем VMPolicyDefinition в группе управления Dept42.
Команда задает политику в виде строки в допустимом формате JSON.
Пример 4. Создание определения политики в строке с метаданными
New-AzPolicyDefinition -Name 'VMPolicyDefinition' -Metadata '{"category":"Virtual Machine"}' -Policy '{"if":{"field":"type","equals":"Microsoft.Compute/virtualMachines"},"then":{"effect":"deny"}}' | Format-List
Эта команда создает определение политики с именем VMPolicyDefinition с метаданными, указывающими, что ее категория — "Виртуальная машина".
Команда задает политику в виде строки в допустимом формате JSON.
Пример 5. Создание определения политики в режиме
New-AzPolicyDefinition -Name 'TagsPolicyDefinition' -Policy '{"if":{"value":"[less(length(field(''tags'')), 3)]","equals":true},"then":{"effect":"deny"}}' -Mode Indexed
Эта команда создает определение политики с именем TagsPolicyDefinition с режимом "Indexed", указывающее, что политика должна оцениваться только для типов ресурсов, поддерживающих теги и расположение.
Параметры
-BackwardCompatible
Позволяет командлету возвращать артефакты с помощью устаревшего формата размещения свойств, относящихся к политике, в объекте контейнера свойств.
Свойства параметров
Тип: SwitchParameter
Default value: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: False
Значение из оставшихся аргументов: False
-Confirm
Запрашивает подтверждение перед запуском cmdlet.
Свойства параметров
Тип: SwitchParameter
Default value: None
Поддерживаются подстановочные знаки: False
DontShow: False
Aliases: Cf
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: False
Значение из оставшихся аргументов: False
-DefaultProfile
Параметр DefaultProfile не работает.
Используйте параметр SubscriptionId, если он доступен при выполнении командлета в другой подписке.
Свойства параметров
Тип: PSObject
Default value: None
Поддерживаются подстановочные знаки: False
DontShow: False
Aliases: AzureRMContext, AzureCredential
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: False
Значение из оставшихся аргументов: False
-Description
Описание определения политики.
Свойства параметров
Тип: String
Default value: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-DisplayName
Отображаемое имя определения политики.
Свойства параметров
Тип: String
Default value: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-ManagementGroupName
Идентификатор группы управления.
Свойства параметров
Тип: String
Default value: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
ManagementGroupName
Position: Named
Обязательно: True
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
Метаданные определения политики.
Метаданные — это открытый завершенный объект, который обычно представляет собой коллекцию пар значений ключей.
Тип: String
Default value: None
Поддерживаются подстановочные знаки: False
DontShow: False
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-Mode
Режим определения политики.
Ниже приведены примеры All, Indexed, Microsoft.KeyVault.Data.
Свойства параметров
Тип: String
Default value: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-Name
Имя создаваемого определения политики.
Свойства параметров
Тип: String
Default value: None
Поддерживаются подстановочные знаки: False
DontShow: False
Aliases: PolicyDefinitionName
Наборы параметров
(All)
Position: Named
Обязательно: True
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-Parameter
Определения параметров для параметров, используемых в правиле политики.
Ключи — это имена параметров.
Свойства параметров
Тип: String
Default value: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-Policy
Правило политики.
Свойства параметров
Тип: String
Default value: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
(All)
Position: Named
Обязательно: True
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-SubscriptionId
Идентификатор целевой подписки.
Свойства параметров
Тип: String
Default value: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
SubscriptionId
Position: Named
Обязательно: True
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-WhatIf
Показывает, что произойдет, если командлет будет запущен.
Командлет не запускается.
Свойства параметров
Тип: SwitchParameter
Default value: None
Поддерживаются подстановочные знаки: False
DontShow: False
Aliases: Wi
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: False
Значение из оставшихся аргументов: False
CommonParameters
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Выходные данные