Set-AzPolicyAssignment
Modifica uma atribuição de política.
Sintaxe
Set-AzPolicyAssignment
-Name <String>
[-Scope <String>]
[-NotScope <String[]>]
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
[-AssignIdentity]
[-Location <String>]
[-EnforcementMode <PolicyAssignmentEnforcementMode>]
[-IdentityType <ManagedIdentityType>]
[-IdentityId <String>]
[-NonComplianceMessage <PsNonComplianceMessage[]>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Set-AzPolicyAssignment
-Name <String>
[-Scope <String>]
[-NotScope <String[]>]
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
-PolicyParameterObject <Hashtable>
[-AssignIdentity]
[-Location <String>]
[-EnforcementMode <PolicyAssignmentEnforcementMode>]
[-IdentityType <ManagedIdentityType>]
[-IdentityId <String>]
[-NonComplianceMessage <PsNonComplianceMessage[]>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Set-AzPolicyAssignment
-Name <String>
[-Scope <String>]
[-NotScope <String[]>]
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
-PolicyParameter <String>
[-AssignIdentity]
[-Location <String>]
[-EnforcementMode <PolicyAssignmentEnforcementMode>]
[-IdentityType <ManagedIdentityType>]
[-IdentityId <String>]
[-NonComplianceMessage <PsNonComplianceMessage[]>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Set-AzPolicyAssignment
[-NotScope <String[]>]
-Id <String>
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
[-AssignIdentity]
[-Location <String>]
[-EnforcementMode <PolicyAssignmentEnforcementMode>]
[-IdentityType <ManagedIdentityType>]
[-IdentityId <String>]
[-NonComplianceMessage <PsNonComplianceMessage[]>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Set-AzPolicyAssignment
[-NotScope <String[]>]
-Id <String>
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
-PolicyParameterObject <Hashtable>
[-AssignIdentity]
[-Location <String>]
[-EnforcementMode <PolicyAssignmentEnforcementMode>]
[-IdentityType <ManagedIdentityType>]
[-IdentityId <String>]
[-NonComplianceMessage <PsNonComplianceMessage[]>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Set-AzPolicyAssignment
[-NotScope <String[]>]
-Id <String>
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
-PolicyParameter <String>
[-AssignIdentity]
[-Location <String>]
[-EnforcementMode <PolicyAssignmentEnforcementMode>]
[-IdentityType <ManagedIdentityType>]
[-IdentityId <String>]
[-NonComplianceMessage <PsNonComplianceMessage[]>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Set-AzPolicyAssignment
[-NotScope <String[]>]
[-DisplayName <String>]
[-Description <String>]
[-Metadata <String>]
[-AssignIdentity]
[-Location <String>]
[-EnforcementMode <PolicyAssignmentEnforcementMode>]
[-IdentityType <ManagedIdentityType>]
[-IdentityId <String>]
-InputObject <PsPolicyAssignment>
[-NonComplianceMessage <PsNonComplianceMessage[]>]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Description
O cmdlet Set-AzPolicyAssignment modifica uma atribuição de política. Especifique uma atribuição por ID ou por nome e escopo.
Exemplos
Exemplo 1: Atualizar o nome de exibição
$ResourceGroup = Get-AzResourceGroup -Name 'ResourceGroup11'
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment' -Scope $ResourceGroup.ResourceId
Set-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -DisplayName 'Do not allow VM creation'
O primeiro comando obtém um grupo de recursos chamado ResourceGroup11 usando o cmdlet Get-AzResourceGroup. O comando armazena esse objeto na variável $ResourceGroup. O segundo comando obtém a atribuição de política chamada PolicyAssignment usando o cmdlet Get-AzPolicyAssignment. O comando armazena esse objeto na variável $PolicyAssignment. O comando final atualiza o nome de exibição na atribuição de política no grupo de recursos identificado pela propriedade ResourceId de $ResourceGroup.
Exemplo 2: Adicionar uma identidade gerenciada atribuída pelo sistema à atribuição de política
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment'
Set-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -IdentityType 'SystemAssigned' -Location 'westus'
O primeiro comando obtém a atribuição de política chamada PolicyAssignment da assinatura atual usando o cmdlet Get-AzPolicyAssignment. O comando armazena esse objeto na variável $PolicyAssignment. O comando final atribui uma identidade gerenciada atribuída pelo sistema à atribuição de política.
Exemplo 3: Adicionar uma identidade gerenciada atribuída pelo usuário à atribuição de política
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment'
$UserAssignedIdentity = Get-AzUserAssignedIdentity -ResourceGroupName 'ResourceGroup1' -Name 'UserAssignedIdentity1'
Set-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -IdentityType 'UserAssigned' -Location 'westus' -IdentityId $UserAssignedIdentity.Id
O primeiro comando obtém a atribuição de política chamada PolicyAssignment da assinatura atual usando o cmdlet Get-AzPolicyAssignment. O comando armazena esse objeto na variável $PolicyAssignment. O segundo comando obtém a identidade gerenciada atribuída pelo usuário chamada UserAssignedIdentity1 usando o cmdlet Get-AzUserAssignedIdentity e a armazena na variável $UserAssignedIdentity. O comando final atribui a identidade gerenciada atribuída pelo usuário identificada pela propriedade Id de $UserAssignedIdentity à atribuição de política.
Exemplo 4: Atualizar parâmetros de atribuição de política com o novo objeto de parâmetro de política
$Locations = Get-AzLocation | Where-Object {($_.displayname -like 'france*') -or ($_.displayname -like 'uk*')}
$AllowedLocations = @{'listOfAllowedLocations'=($Locations.location)}
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment'
Set-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -PolicyParameterObject $AllowedLocations
O primeiro e o segundo comandos criam um objeto que contém todas as regiões do Azure cujos nomes começam com "france" ou "uk". O segundo comando armazena esse objeto na variável $AllowedLocations. O terceiro comando obtém a atribuição de política chamada 'PolicyAssignment' O comando armazena esse objeto na variável $PolicyAssignment. O comando final atualiza os valores de parâmetro na atribuição de política chamada PolicyAssignment.
Exemplo 5: Atualizar parâmetros de atribuição de política com o arquivo de parâmetro de política
Crie um arquivo chamado AllowedLocations.json no diretório de trabalho local com o conteúdo a seguir.
{
"listOfAllowedLocations": {
"value": [
"uksouth",
"ukwest",
"francecentral",
"francesouth"
]
}
}
Set-AzPolicyAssignment -Name 'PolicyAssignment' -PolicyParameter .\AllowedLocations.json
O comando atualiza a atribuição de política chamada 'PolicyAssignment' usando o arquivo de parâmetro de política AllowedLocations.json do diretório de trabalho local.
Exemplo 6: Atualizar um enforcementMode
$ResourceGroup = Get-AzResourceGroup -Name 'ResourceGroup11'
$PolicyAssignment = Get-AzPolicyAssignment -Name 'PolicyAssignment' -Scope $ResourceGroup.ResourceId
Set-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -EnforcementMode Default
O primeiro comando obtém um grupo de recursos chamado ResourceGroup11 usando o cmdlet Get-AzResourceGroup. O comando armazena esse objeto na variável $ResourceGroup. O segundo comando obtém a atribuição de política chamada PolicyAssignment usando o cmdlet Get-AzPolicyAssignment. O comando armazena esse objeto na variável $PolicyAssignment. O comando final atualiza a propriedade enforcementMode na atribuição de política no grupo de recursos identificado pela propriedade ResourceId de $ResourceGroup.
Exemplo 7: Atualizar mensagens de não conformidade
$PolicyAssignment = Get-AzPolicyAssignment -Name 'VirtualMachinePolicy'
Set-AzPolicyAssignment -Id $PolicyAssignment.ResourceId -NonComplianceMessage @{Message="All resources must follow resource naming guidelines."}
O primeiro comando obtém a atribuição de política chamada VirtualMachinePolicy usando o cmdlet Get-AzPolicyAssignment e a armazena na variável $PolicyAssignment. O comando final atualiza as mensagens de não conformidade na atribuição de política com uma nova mensagem que será exibida se um recurso for negado pela política.
Parâmetros
-ApiVersion
Especifica a versão da API do provedor de recursos a ser usada. Se você não especificar uma versão, esse cmdlet usará a versão mais recente disponível.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-AssignIdentity
Gere e atribua uma identidade gerenciada atribuída pelo sistema para essa atribuição de política. A identidade será usada ao executar implantações para políticas 'deployIfNotExists' e 'modify'. A localização é necessária ao atribuir uma identidade.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-DefaultProfile
As credenciais, a conta, o locatário e a assinatura usadas para comunicação com o Azure
Tipo: | IAzureContextContainer |
Aliases: | AzContext, AzureRmContext, AzureCredential |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Description
A descrição da atribuição de política
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-DisplayName
Especifica um novo nome de exibição para a atribuição de política.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-EnforcementMode
O modo de imposição para atribuição de política. Atualmente, os valores válidos são Default, DoNotEnforce.
Tipo: | Nullable<T>[PolicyAssignmentEnforcementMode] |
Valores aceitos: | Default, DoNotEnforce |
Cargo: | Named |
Valor padrão: | Default |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-Id
Especifica a ID de recurso totalmente qualificada para a atribuição de política que esse cmdlet modifica.
Tipo: | String |
Aliases: | ResourceId |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-IdentityId
Especifica a ID da identidade gerenciada atribuída pelo usuário a ser atribuída a essa atribuição de política. Esse valor será necessário se o valor 'UserAssigned' for passado para o parâmetro -IdentityType.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-IdentityType
Especifica o tipo de identidade gerenciada a ser atribuída a essa atribuição de política. Se o valor 'SystemAssigned' for fornecido, uma identidade gerenciada atribuída pelo sistema será gerada e atribuída a essa atribuição de política. Se o valor 'UserAssigned' for fornecido, a identidade atribuída pelo usuário passada por meio de sua ID para o parâmetro -IdentityId será atribuída a essa atribuição de política. A identidade será usada ao executar implantações para políticas 'deployIfNotExists' e 'modify'. A localização é necessária ao atribuir uma identidade. As permissões devem ser concedidas à identidade usando New-AzRoleAssignment depois que a identidade atribuída pelo sistema for criada. O parâmetro IdentityType terá precedência se o parâmetro AssignIdentity e o parâmetro IdentityType forem usados.
Tipo: | Nullable<T>[ManagedIdentityType] |
Valores aceitos: | SystemAssigned, UserAssigned, None |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-InputObject
O objeto de atribuição de política para atualizar que foi gerado de outro cmdlet.
Tipo: | PsPolicyAssignment |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-Location
O local da identidade do recurso da atribuição de política. Isso é necessário quando o valor -IdentityType é fornecido.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-Metadata
Os metadados atualizados para a atribuição de política. Pode ser um caminho para um nome de arquivo que contém os metadados ou os metadados como uma cadeia de caracteres.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-Name
Especifica o nome da atribuição de política que esse cmdlet modifica.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-NonComplianceMessage
As mensagens de não conformidade que descrevem por que um recurso não está em conformidade com a política.
Tipo: | PsNonComplianceMessage[] |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-NotScope
A atribuição de política não escopos.
Tipo: | String[] |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-PolicyParameter
O novo caminho ou cadeia de caracteres do arquivo de parâmetros de política para a atribuição de política.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-PolicyParameterObject
O novo objeto de parâmetros de política para a atribuição de política.
Tipo: | Hashtable |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Pre
Indica que esse cmdlet considera versões de API de pré-lançamento quando determina automaticamente qual versão usar.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-Scope
Especifica o escopo no qual a política é aplicada.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
Entradas
String[]
Nullable<T>[[Microsoft.Azure.Commands.ResourceManager.Cmdlets.Entities.Policy.PolicyAssignmentEnforcementMode, Microsoft.Azure.PowerShell.Cmdlets.ResourceManager, Version=3.5.0.0, Culture=neutral, PublicKeyToken=null]]