Set-AzPolicySetDefinition

修改原則集定義

Syntax

Set-AzPolicySetDefinition
   -Name <String>
   [-DisplayName <String>]
   [-Description <String>]
   [-PolicyDefinition <String>]
   [-Metadata <String>]
   [-Parameter <String>]
   [-GroupDefinition <String>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzPolicySetDefinition
   -Name <String>
   [-DisplayName <String>]
   [-Description <String>]
   [-PolicyDefinition <String>]
   [-Metadata <String>]
   [-Parameter <String>]
   -ManagementGroupName <String>
   [-GroupDefinition <String>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzPolicySetDefinition
   -Name <String>
   [-DisplayName <String>]
   [-Description <String>]
   [-PolicyDefinition <String>]
   [-Metadata <String>]
   [-Parameter <String>]
   -SubscriptionId <Guid>
   [-GroupDefinition <String>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzPolicySetDefinition
   -Id <String>
   [-DisplayName <String>]
   [-Description <String>]
   [-PolicyDefinition <String>]
   [-Metadata <String>]
   [-Parameter <String>]
   [-GroupDefinition <String>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzPolicySetDefinition
   [-DisplayName <String>]
   [-Description <String>]
   [-PolicyDefinition <String>]
   [-Metadata <String>]
   [-Parameter <String>]
   -InputObject <PsPolicySetDefinition>
   [-GroupDefinition <String>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

Set-AzPolicySetDefinition Cmdlet 會修改原則定義。

範例

範例 1:更新原則集定義的描述

$PolicySetDefinition = Get-AzPolicySetDefinition -ResourceId '/subscriptions/mySub/Microsoft.Authorization/policySetDefinitions/myPSSetDefinition'
Set-AzPolicySetDefinition -Id $PolicySetDefinition.ResourceId -Description 'Updated policy to not allow virtual machine creation'

第一個命令會使用 Get-AzPolicySetDefinition Cmdlet 來取得原則集定義。 命令會將該物件儲存在 $PolicySetDefinition 變數中。 第二個命令會更新 $PolicySetDefinition ResourceId 屬性所識別的原則集定義描述。

範例 2:更新原則集定義的元數據

Set-AzPolicySetDefinition -Name 'VMPolicySetDefinition' -Metadata '{"category":"Virtual Machine"}'

Name                  : VMPolicySetDefinition
ResourceId            : /subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Authorization/policySetDefinitions/VMPolicySetDefinition
ResourceName          : VMPolicySetDefinition
ResourceType          : Microsoft.Authorization/policySetDefinitions
SubscriptionId        : 11111111-1111-1111-1111-111111111111
Properties            : @{displayName=VMPolicySetDefinition; policyType=Custom; metadata=; parameters=; policyDefinitions=System.Object[]}
PolicySetDefinitionId : /subscriptions/11111111-1111-1111-1111-111111111111/providers/Microsoft.Authorization/policySetDefinitions/VMPolicySetDefinition

此命令會更新名為 VMPolicySetDefinition 的原則集定義元數據,以指出其類別為 「虛擬機」。

範例 3:更新原則集定義的群組

Set-AzPolicySetDefinition -Name 'VMPolicySetDefinition' -GroupDefinition '[{ "name": "group1", "displayName": "Virtual Machine Security" }, { "name": "group2" }]'

此命令會更新名為 VMPolicySetDefinition 的原則集定義群組。

範例 4:使用哈希表更新原則集定義的群組

$groupsJson = ConvertTo-Json @{ name = "group1"; displayName = "Virtual Machine Security" }, @{ name = "group2" }
Set-AzPolicySetDefinition -Name 'VMPolicySetDefinition' -GroupDefinition $groupsJson

此命令會使用哈希表來建構群組,更新名為 VMPolicySetDefinition 的原則集定義群組。

參數

-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

-Id

完整原則定義標識碼,包括訂用帳戶。 例如 /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}

Type:String
Aliases:ResourceId
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-InputObject

要更新另一個 Cmdlet 輸出的原則集定義物件。

Type:PsPolicySetDefinition
Position:Named
Default value:None
Required:True
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

已更新原則集定義的參數宣告。 這可以是檔名或 URI 的路徑,其中包含參數宣告,或參數宣告為 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:False
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

要更新之原則集定義的訂用帳戶標識碼。

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

輸入

String

Nullable<T>[[System.Guid, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]

輸出

PSObject