New-AzPolicyDefinition
Создает или обновляет определение политики.
Синтаксис
Name (По умолчанию)
New-AzPolicyDefinition
-Name <String>
-Policy <String>
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
[-Parameter <String>]
[-Mode <String>]
[-Version <String>]
[-ExternalEvaluationEnforcementSettingMissingTokenAction <String>]
[-ExternalEvaluationEnforcementSettingResultLifespan <String>]
[-ExternalEvaluationEnforcementSettingRoleDefinitionId <String[]>]
[-EndpointSettingKind <String>]
[-EndpointSettingDetail <String>]
[-DefaultProfile <PSObject>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ManagementGroupName
New-AzPolicyDefinition
-Name <String>
-ManagementGroupName <String>
-Policy <String>
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
[-Parameter <String>]
[-Mode <String>]
[-Version <String>]
[-ExternalEvaluationEnforcementSettingMissingTokenAction <String>]
[-ExternalEvaluationEnforcementSettingResultLifespan <String>]
[-ExternalEvaluationEnforcementSettingRoleDefinitionId <String[]>]
[-EndpointSettingKind <String>]
[-EndpointSettingDetail <String>]
[-DefaultProfile <PSObject>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
SubscriptionId
New-AzPolicyDefinition
-Name <String>
-SubscriptionId <String>
-Policy <String>
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
[-Parameter <String>]
[-Mode <String>]
[-Version <String>]
[-ExternalEvaluationEnforcementSettingMissingTokenAction <String>]
[-ExternalEvaluationEnforcementSettingResultLifespan <String>]
[-ExternalEvaluationEnforcementSettingRoleDefinitionId <String[]>]
[-EndpointSettingKind <String>]
[-EndpointSettingDetail <String>]
[-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 и может включать параметры.
Примечание. Значения, предоставленные в командной строке (например, параметры, метаданные), переопределяют соответствующие значения, присутствующих в файле.
Пример 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", указывающее, что политика должна оцениваться только для типов ресурсов, поддерживающих теги и расположение.
Пример 6. Создание определения политики в строке с версией
New-AzPolicyDefinition -Name 'VMPolicyDefinition' -Policy '{"if":{"field":"type","equals":"Microsoft.Compute/virtualMachines"},"then":{"effect":"deny"}}' -Version '2.0.0'
Эта команда создает определение политики с именем VMPolicyDefinition с добавочной версией 2.0.0.
Команда задает политику в виде строки в допустимом формате JSON.
Пример 7. Создание определения политики с параметрами применения внешних вычислений
New-AzPolicyDefinition -Name 'InvokePolicy' -Policy '{"if":{"value":"[claims().isValid]","equals":false},"then":{"effect":"deny"}}' -EndpointSettingKind 'CoinFlip' -ExternalEvaluationEnforcementSettingRoleDefinitionId @( "/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c" )
Эта команда создает определение политики с именем InvokePolicy с параметрами применения внешней оценки для вызова конечной точки CoinFlip, для которой требуется определение указанной роли.
Параметры
-Confirm
Запрашивает подтверждение перед запуском cmdlet.
Свойства параметров
Тип: SwitchParameter
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
Aliases: Cf
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: False
Значение из оставшихся аргументов: False
-DefaultProfile
Параметр DefaultProfile не работает.
Используйте параметр SubscriptionId, если он доступен при выполнении командлета в другой подписке.
Свойства параметров
Тип: PSObject
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
Aliases: AzureRMContext, AzureCredential
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: False
Значение из оставшихся аргументов: False
-Description
Описание определения политики.
Свойства параметров
Тип: String
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-DisplayName
Отображаемое имя определения политики.
Свойства параметров
Тип: String
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-EndpointSettingDetail
Сведения о конечной точке.
Свойства параметров
Тип: String
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-EndpointSettingKind
Тип конечной точки.
Свойства параметров
Тип: String
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-ExternalEvaluationEnforcementSettingMissingTokenAction
Что делать при оценке политики принудительного применения, требующей внешней оценки, и маркер отсутствует.
Возможные значения: аудит и запрет и выражения языка поддерживаются.
Свойства параметров
Тип: String
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-ExternalEvaluationEnforcementSettingResultLifespan
Срок действия вызова конечной точки, после которого он больше не действителен.
Ожидается, что значение соответствует формату длительности ISO 8601 и выражениям языка.
Свойства параметров
Тип: String
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-ExternalEvaluationEnforcementSettingRoleDefinitionId
Массив определения роли идентификаторов MSI назначения потребуется для вызова конечной точки.
Свойства параметров
Тип: String [ ]
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-ManagementGroupName
Идентификатор группы управления.
Свойства параметров
Тип: String
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
ManagementGroupName
Position: Named
Обязательно: True
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
Метаданные определения политики.
Метаданные — это открытый завершенный объект, который обычно представляет собой коллекцию пар значений ключей.
Тип: String
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-Mode
Режим определения политики.
Ниже приведены примеры All, Indexed, Microsoft.KeyVault.Data.
Свойства параметров
Тип: String
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-Name
Имя создаваемого определения политики.
Свойства параметров
Тип: String
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
Aliases: PolicyDefinitionName
Наборы параметров
(All)
Position: Named
Обязательно: True
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-Parameter
Определения параметров для параметров, используемых в правиле политики.
Ключи — это имена параметров.
Свойства параметров
Тип: String
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-Policy
Правило политики.
Свойства параметров
Тип: String
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
(All)
Position: Named
Обязательно: True
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-SubscriptionId
Идентификатор целевой подписки.
Свойства параметров
Тип: String
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
Наборы параметров
SubscriptionId
Position: Named
Обязательно: True
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-Version
Версия определения политики в формате #.#.#
Свойства параметров
Тип: String
Значение по умолчанию: None
Поддерживаются подстановочные знаки: False
DontShow: False
Aliases: PolicyDefinitionVersion
Наборы параметров
(All)
Position: Named
Обязательно: False
Значение из конвейера: False
Значение из конвейера по имени свойства: True
Значение из оставшихся аргументов: False
-WhatIf
Показывает, что произойдет, если командлет будет запущен.
Командлет не запускается.
Свойства параметров
Тип: SwitchParameter
Значение по умолчанию: 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 .
Выходные данные