你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Set-AzureRmPolicyAssignment

修改策略分配。

警告

截至 2024 年 2 月 29 日,AzureRM PowerShell 模块已正式弃用。 为了确保持续获得支持和更新,建议用户从 AzureRM 迁移到 Az PowerShell 模块。

尽管 AzureRM 模块仍可能正常运行,但它不再维护或受支持,但会根据用户的自由裁量权和风险继续使用任何继续使用模块。 有关过渡到 Az 模块的指导,请参阅我们的迁移资源

语法

Set-AzureRmPolicyAssignment
   -Name <String>
   -Scope <String>
   [-NotScope <String[]>]
   [-DisplayName <String>]
   [-Description <String>]
   [-Metadata <String>]
   [-Sku <Hashtable>]
   [-AssignIdentity]
   [-Location <String>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   [<CommonParameters>]
Set-AzureRmPolicyAssignment
   [-NotScope <String[]>]
   -Id <String>
   [-DisplayName <String>]
   [-Description <String>]
   [-Metadata <String>]
   [-Sku <Hashtable>]
   [-AssignIdentity]
   [-Location <String>]
   [-ApiVersion <String>]
   [-Pre]
   [-DefaultProfile <IAzureContextContainer>]
   [-InformationAction <ActionPreference>]
   [-InformationVariable <String>]
   [<CommonParameters>]

说明

Set-AzureRmPolicyAssignment cmdlet 修改策略分配。 按 ID 或名称和范围指定分配。

示例

示例 1:更新显示名称

PS C:\> $ResourceGroup = Get-AzureRmResourceGroup -Name 'ResourceGroup11'
PS C:\> $PolicyAssignment = Get-AzureRmPolicyAssignment -Name 'PolicyAssignment' -Scope $ResourceGroup.ResourceId
PS C:\> Set-AzureRmPolicyAssignment -Id $PolicyAssignment.ResourceId -DisplayName 'Do not allow VM creation'

第一个命令使用 Get-AzureRMResourceGroup cmdlet 获取名为 ResourceGroup11 的资源组。 该命令将该对象存储在$ResourceGroup变量中。 第二个命令使用 Get-AzureRmPolicyAssignment cmdlet 获取名为 PolicyAssignment 的策略分配。 该命令将该对象存储在$PolicyAssignment变量中。 最后一个命令更新由 $ResourceGroup ResourceId 属性标识的资源组上的策略分配上的显示名称。

示例 2:将托管标识添加到策略分配

PS C:\> $PolicyAssignment = Get-AzureRmPolicyAssignment -Name 'PolicyAssignment'
PS C:\> Set-AzureRmPolicyAssignment -Id $PolicyAssignment.ResourceId -AssignIdentity -Location 'westus'

第一个命令使用 Get-AzureRmPolicyAssignment cmdlet 从当前订阅获取名为 PolicyAssignment 的策略分配。 该命令将该对象存储在$PolicyAssignment变量中。 最后一个命令将托管标识分配给策略分配。

参数

-ApiVersion

指定要使用的资源提供程序 API 的版本。 如果未指定版本,此 cmdlet 将使用最新的可用版本。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-AssignIdentity

为此策略分配生成并分配 Microsoft Entra 标识。 执行“deployIfNotExists”策略的部署时,将使用标识。 分配标识时需要位置。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DefaultProfile

用于与 azure 通信的凭据、帐户、租户和订阅

类型:IAzureContextContainer
别名:AzureRmContext, AzureCredential
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Description

策略分配的说明

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-DisplayName

指定策略分配的新显示名称。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Id

指定此 cmdlet 修改的策略分配的完全限定资源 ID。

类型:String
别名:ResourceId
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-InformationAction

指定此 cmdlet 如何响应信息事件。 此参数的可接受值为:

  • 继续
  • 忽略
  • 询问
  • SilentlyContinue
  • 停止
  • Suspend
类型:ActionPreference
别名:infa
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-InformationVariable

指定信息变量。

类型:String
别名:iv
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Location

策略分配的资源标识的位置。 使用 -AssignIdentity 开关时,这是必需的。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Metadata

策略分配的更新元数据。 这可以是包含元数据的文件名的路径,也可以是作为字符串的元数据。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Name

指定此 cmdlet 修改的策略分配的名称。

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-NotScope

策略分配不限定范围。

类型:String[]
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Pre

指示此 cmdlet 在自动确定要使用的版本时会考虑预发布 API 版本。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Scope

指定应用策略的范围。

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-Sku

表示 SKU 属性的哈希表。

类型:Hashtable
别名:SkuObject
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False