Configurar identidades geridas para recursos Azure em conjuntos de escala de máquinas virtuais usando PowerShell

As identidades geridas para os recursos do Azure são uma funcionalidade do Azure Active Directory. Cada um dos serviços do Azure que suportam as identidades geridas para os recursos do Azure estão sujeitos à sua própria linha de tempo. Certifique-se de que revê o estado de disponibilidade das identidades geridas para o seu recurso e problemas conhecidos antes de começar.

Identidades geridas para recursos Azure fornecem aos serviços Azure uma identidade gerida automaticamente no Azure Ative Directory. Pode utilizar esta identidade para autenticar qualquer serviço que suporte a autenticação AZure AD, sem ter credenciais no seu código.

Neste artigo, utilizando o PowerShell, aprende-se a executar as identidades geridas para operações de recursos Azure num conjunto de escala de máquina virtual:

  • Ativar e desativar a identidade gerida atribuída pelo sistema num conjunto de escala de máquina virtual
  • Adicione e remova uma identidade gerida atribuída pelo utilizador num conjunto de escala de máquina virtual

Nota

Este artigo foi atualizado para utilizar o módulo Azure Az PowerShell. O módulo Az PowerShell é o módulo do PowerShell recomendado para interagir com o Azure. Para começar a utilizar o módulo Azure PowerShell, veja Instalar o Azure PowerShell. Para saber como migrar para o módulo do Az PowerShell, veja Migrar o Azure PowerShell do AzureRM para o Az.

Pré-requisitos

Identidade gerida atribuída pelo sistema

Nesta secção, aprende-se a ativar e remover uma identidade gerida atribuída pelo sistema utilizando o Azure PowerShell.

Ativar a identidade gerida atribuída pelo sistema durante a criação de um conjunto de escala de máquina virtual Azure

Para criar um conjunto de escala de máquina virtual com a identidade gerida atribuída pelo sistema:

  1. Consulte o Exemplo 1 no artigo de referência do cmdlet New-AzVmssConfig para criar uma balança de máquina virtual definida com uma identidade gerida atribuída pelo sistema. Adicione o parâmetro -IdentityType SystemAssigned ao New-AzVmssConfig cmdlet:

    $VMSS = New-AzVmssConfig -Location $Loc -SkuCapacity 2 -SkuName "Standard_A0" -UpgradePolicyMode "Automatic" -NetworkInterfaceConfiguration $NetCfg -IdentityType SystemAssigned`
    

Ativar a identidade gerida atribuída pelo sistema num conjunto de escala de máquina virtual Azure existente

Se precisar de ativar uma identidade gerida atribuída pelo sistema num conjunto de escala de máquina virtual Azure existente:

  1. Certifique-se de que a conta Azure que está a utilizar pertence a uma função que lhe dá permissões de escrita no conjunto de escala de máquina virtual, como "Contribuinte de Máquina Virtual".

  2. Recupere as propriedades de conjunto de escala de máquina virtual utilizando o Get-AzVmss cmdlet. Em seguida, para ativar uma identidade gerida atribuída pelo sistema, utilize o -IdentityType interruptor no cmdlet Update-AzVmss:

    Update-AzVmss -ResourceGroupName myResourceGroup -Name -myVmss -IdentityType "SystemAssigned"
    

Desative a identidade gerida atribuída pelo sistema a partir de um conjunto de escala de máquina virtual Azure

Se tiver um conjunto de escala de máquina virtual que já não necessita da identidade gerida atribuída ao sistema, mas que ainda necessita de identidades geridas atribuídas pelo utilizador, utilize o seguinte cmdlet:

  1. Certifique-se de que a sua conta pertence a uma função que lhe dá permissões de escrita no conjunto de escala de máquina virtual, como "Contribuinte de Máquina Virtual".

  2. Execute o seguinte cmdlet:

    Update-AzVmss -ResourceGroupName myResourceGroup -Name myVmss -IdentityType "UserAssigned"
    
  3. Se tiver um conjunto de escala de máquina virtual que já não necessita de identidade gerida atribuída ao sistema e não tiver identidades geridas atribuídas ao utilizador, utilize o seguinte comando:

    Update-AzVmss -ResourceGroupName myResourceGroup -Name myVmss -IdentityType None
    

Identidade gerida atribuída pelo utilizador

Nesta secção, aprende-se a adicionar e remover uma identidade gerida atribuída pelo utilizador a partir de um conjunto de escala de máquina virtual utilizando o Azure PowerShell.

Atribua uma identidade gerida atribuída ao utilizador durante a criação de um conjunto de escala de máquina virtual Azure

A criação de uma nova balança de máquinas virtual com uma identidade gerida atribuída pelo utilizador não é suportada atualmente através do PowerShell. Consulte a secção seguinte sobre como adicionar uma identidade gerida atribuída ao utilizador a um conjunto de escala de máquina virtual existente. Volte mais tarde para obter atualizações.

Atribua uma identidade gerida atribuída ao utilizador a um conjunto de escala de máquina virtual Azure existente

Para atribuir uma identidade gerida atribuída ao utilizador a um conjunto de escala de máquina virtual Azure existente:

  1. Certifique-se de que a sua conta pertence a uma função que lhe dá permissões de escrita no conjunto de escala de máquina virtual, como "Contribuinte de Máquina Virtual".

  2. Recupere as propriedades de conjunto de escala de máquina virtual utilizando o Get-AzVM cmdlet. Em seguida, para atribuir uma identidade gerida atribuída ao conjunto de escala de máquina virtual, utilize o -IdentityType e -IdentityID ligue o cmdlet Update-AzVmss. <VM NAME>Substitua, , , , com os seus <SUBSCRIPTION ID> <RESROURCE GROUP> <USER ASSIGNED ID1> USER ASSIGNED ID2 próprios valores.

    Importante

    Ao criar identidades atribuídas ao utilizador, apenas os caracteres alfanuméricos (0-9, a-z, A-Z), o sublinhado _ () e o hífen (-) são suportados. Além disso, o nome deve ser pelo menos 3 caracteres e até 128 caracteres de comprimento para que a atribuição a VM/VMSS funcione corretamente. Volte mais tarde para obter atualizações. Para obter mais informações, veja FAQs e problemas conhecidos.

    Update-AzVmss -ResourceGroupName <RESOURCE GROUP> -Name <VMSS NAME> -IdentityType UserAssigned -IdentityID "<USER ASSIGNED ID1>","<USER ASSIGNED ID2>"
    

Remova uma identidade gerida atribuída pelo utilizador de um conjunto de escala de máquina virtual Azure

Se o seu conjunto de escala de máquina virtual tiver várias identidades geridas atribuídas pelo utilizador, pode remover todas, menos a última, utilizando os seguintes comandos. Certifique-se de que substitui os valores de parâmetros <RESOURCE GROUP> e <VIRTUAL MACHINE SCALE SET NAME> pelos seus próprios valores. A <USER ASSIGNED IDENTITY NAME> propriedade de nome gerido pelo utilizador atribuído ao utilizador, que deve permanecer no conjunto de escala de máquina virtual. Estas informações podem ser encontradas na secção de identidade do conjunto de escala de máquina virtual az vmss show utilizando:

Update-AzVmss -ResourceGroupName myResourceGroup -Name myVmss -IdentityType UserAssigned -IdentityID "<USER ASSIGNED IDENTITY NAME>"

Se o seu conjunto de escala de máquina virtual não tiver uma identidade gerida atribuída ao sistema e pretender remover todas as identidades geridas atribuídas pelo utilizador, utilize o seguinte comando:

Update-AzVmss -ResourceGroupName myResourceGroup -Name myVmss -IdentityType None

Se o seu conjunto de escala de máquina virtual tiver identidades geridas atribuídas ao sistema e atribuídas ao utilizador, pode remover todas as identidades geridas atribuídas pelo utilizador, mudando para utilizar apenas a identidade gerida atribuída pelo sistema.

Update-AzVmss -ResourceGroupName myResourceGroup -Name myVmss -IdentityType "SystemAssigned"

Passos seguintes