gpt4 book ai didi

json - 使用 Powershell 部署 Azure 策略

转载 作者:行者123 更新时间:2023-12-02 23:04:55 25 4
gpt4 key购买 nike

我通过 powershell 部署拒绝策略并收到以下错误

New-AzPolicyDefinition:InvalidPolicyRule:无法解析策略规则:“无法在该类型的对象上找到成员“属性”
“策略规则定义”。路径“属性”。

我使用的代码是:1新 AzPolicyDefinition -name 'externalDeny'
-策略'C:\tmp\denyoms-temp.json'
-参数'C:\tmp\denyoms-param.json' `

政策模板如下。

模板文件 - https://pastebin.com/embed_js/HrjUWrvf参数 - https://pastebin.com/embed_js/QxEX92jf

我认为这可能是标签的问题,提前谢谢。

最佳答案

问题出在模板上。据此documentation ,模板应采用以下格式 (template.json):

{
"if": {
"allOf": [
{
"field": "tags",
"Equals": "ExternalVM"
},
{
"field": "type",
"equals": "Microsoft.Compute/virtualMachines/extensions"
},
{
"field": "Microsoft.Compute/virtualMachines/extensions/publisher",
"equals": "Microsoft.Compute"
},
{
"field": "Microsoft.Compute/virtualMachines/extensions/type",
"in": "[parameters(\'notAllowedExtensions\')]"
}
]
},
"then": {
"effect": "deny"
}
}

此外,参数文件中的一个微小更改,模板根据您应用的条件需要“数组”类型:

{
"notAllowedExtensions": {
"type": "Array",
"metadata": {
"description": "The list of extensions that will be denied. Example: BGInfo, CustomScriptExtension, JsonAADDomainExtension, VMAccessAgent.",
"displayName": "OmsAgentForLinux"
}
}
}

使用此命令执行:

New-AzPolicyDefinition -Name 'Not allowed VM Extensions' -Description 'This policy governs which VM extensions that are explicitly denied.' -Policy 'template.json'  -Parameter 'parameters.json'

希望这有帮助!

关于json - 使用 Powershell 部署 Azure 策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61057852/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com