你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
New-AzPolicySetDefinition
创建策略集定义。
语法
New-AzPolicySetDefinition
-Name <String>
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
-PolicyDefinition <String>
[-Parameter <String>]
[-GroupDefinition <String>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-AzPolicySetDefinition
-Name <String>
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
-PolicyDefinition <String>
[-Parameter <String>]
-ManagementGroupName <String>
[-GroupDefinition <String>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-AzPolicySetDefinition
-Name <String>
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
-PolicyDefinition <String>
[-Parameter <String>]
-SubscriptionId <Guid>
[-GroupDefinition <String>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
说明
New-AzPolicySetDefinition cmdlet 创建策略集定义。
示例
示例 1:使用策略集文件创建包含元数据的策略集定义
<#[
{
"policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/2a0e14a6-b0a6-4fab-991a-187a4f81c498",
"parameters": {
"tagName": {
"value": "Business Unit"
},
"tagValue": {
"value": "Finance"
}
}
},
{
"policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/464dbb85-3d5f-4a1d-bb09-95a9b5dd19cf"
}
]#>
New-AzPolicySetDefinition -Name 'VMPolicySetDefinition' -Metadata '{"category":"Virtual Machine"}' -PolicyDefinition C:\VMPolicySet.json
此命令创建名为 VMPolicySetDefinition 的策略集定义,其中包含其类别为“虚拟机”,其中包含 C:\VMPolicy.json中指定的策略定义。 上面提供了VMPolicy.json的示例内容。
示例 2:创建参数化策略集定义
<#[
{
"policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/2a0e14a6-b0a6-4fab-991a-187a4f81c498",
"parameters": {
"tagName": {
"value": "Business Unit"
},
"tagValue": {
"value": "[parameters('buTagValue')]"
}
}
},
{
"policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/464dbb85-3d5f-4a1d-bb09-95a9b5dd19cf"
}
]#>
New-AzPolicySetDefinition -Name 'VMPolicySetDefinition' -PolicyDefinition C:\VMPolicySet.json -Parameter '{ "buTagValue": { "type": "string" } }'
此命令创建名为 VMPolicySetDefinition 的参数化策略集定义,其中包含 C:\VMPolicy.json 中指定的策略定义。 上面提供了VMPolicy.json的示例内容。
示例 3:使用策略定义组创建策略集定义
<#[
{
"policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/2a0e14a6-b0a6-4fab-991a-187a4f81c498",
"groupNames": [ "group1" ]
},
{
"policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/464dbb85-3d5f-4a1d-bb09-95a9b5dd19cf",
"groupNames": [ "group2" ]
}
]#>
$groupsJson = ConvertTo-Json @{ name = "group1" }, @{ name = "group2" }
New-AzPolicySetDefinition -Name 'VMPolicySetDefinition' -GroupDefinition $groupsJson -PolicyDefinition C:\VMPolicySet.json
此命令使用 C:\VMPolicy.json中指定的策略定义分组创建名为 VMPolicySetDefinition 的策略集定义。 上面提供了VMPolicy.json的示例内容。
参数
-ApiVersion
设置后,指示要使用的资源提供程序 API 的版本。 如果未指定,API 版本将自动确定为最新可用版本。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
提示你在运行 cmdlet 之前进行确认。
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DefaultProfile
用于与 azure 通信的凭据、帐户、租户和订阅
Type: | IAzureContextContainer |
Aliases: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Description
策略集定义的说明。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-DisplayName
策略集定义的显示名称。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-GroupDefinition
新策略集定义的策略定义组。 这可以是包含组的文件的路径,也可以是 JSON 字符串形式的组的路径。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ManagementGroupName
新策略集定义的管理组的名称。
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Metadata
策略集定义的元数据。 这可以是包含元数据的文件名的路径,也可以是 JSON 字符串形式的元数据。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
策略集定义名称。
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Parameter
策略集定义的参数声明。 这可以是包含参数声明的文件名的路径,也可以是 JSON 字符串形式的参数声明。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-PolicyDefinition
策略定义。 这可以是包含策略定义的文件名的路径,也可以是 JSON 字符串形式的策略定义。
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Pre
设置时,指示 cmdlet 应在自动确定要使用的版本时使用预发布 API 版本。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SubscriptionId
新策略集定义的订阅 ID。
Type: | Nullable<T>[Guid] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
输入
Nullable<T>[[System.Guid, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]
输出
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈