使用PowerShell或az cli复制Azure计划定义Microsoft.Authorization/policySetDefinitions

rryofs0p  于 2023-05-29  发布在  Shell
关注(0)|答案(1)|浏览(117)

有没有一种方法可以用代码做到这一点?我在Azure门户中看到UI中有一个按钮,允许用户执行此操作,但我希望在Azure PowerShell中或使用az cli执行此操作。

cclgggtu

cclgggtu1#

你可以用下面的代码试试:

#Get the initiative using the id
$initiative = Get-AzPolicySetDefinition -Id "/providers/Microsoft.Authorization/policySetDefinitions/xxx"

#Create the copy
New-AzPolicySetDefinition `
    -Name "Copied policy" `
    -DisplayName "Copied policy" `
    -Description $initiative.Properties.Description `
    -PolicyDefinition $([Regex]::Unescape($($initiative.Properties.PolicyDefinitions | ConvertTo-Json -Depth 100))) `
    -Metadata $($initiative.Properties.Metadata | ConvertTo-Json -Depth 100)  `
    -Parameter $($initiative.Properties.Parameters | ConvertTo-Json -Depth 100)

这是一个简化的示例。请阅读New-AzPolicySetDefinition文档条目以添加更多参数。

相关问题