Compartilhar via


Configurar identidades gerenciadas para recursos do Azure em um conjunto de dimensionamento de máquinas virtuais

As identidades gerenciadas dos recursos do Azure fornecem aos serviços do Azure uma identidade gerenciada automaticamente na ID do Microsoft Entra. Use essa identidade para autenticar qualquer serviço que dê suporte à autenticação do Microsoft Entra, sem a necessidade de ter as credenciais no código.

Para obter informações sobre a definição e os detalhes do Azure Policy, consulte Usar o Azure Policy para atribuir identidades gerenciadas (versão prévia).

Neste artigo, você aprenderá a executar, por meio do portal do Azure, as seguintes operações de identidades gerenciadas para recursos do Azure em um conjunto de dimensionamento de máquinas virtuais:

  • Se você não estiver familiarizado com identidades gerenciadas para recursos do Azure, confira a seção de visão geral.

  • Se você ainda não tiver uma conta do Azure, inscreva-se em uma conta gratuita antes de continuar.

  • Para realizar as operações de gerenciamento deste artigo, a conta precisará das seguintes atribuições de função do Azure:

    Observação

    Não são necessárias atribuições de função adicionais do diretório do Microsoft Entra.

    • Colaborador da Máquina Virtual para habilitar e remover a identidade gerenciada atribuída pelo sistema de um conjunto de dimensionamento de máquinas virtuais.

Identidade gerenciada atribuída pelo sistema

Nesta seção, você aprenderá como habilitar e desabilitar a identidade gerenciada atribuída ao sistema usando o portal do Azure.

Habilitar a identidade gerenciada atribuída pelo sistema durante a criação de um conjunto de dimensionamento de máquinas virtuais

Atualmente, o portal do Azure não dá suporte à habilitação da identidade gerenciada atribuída ao sistema durante a criação de um conjunto de dimensionamento de máquinas virtuais. Primeiro, crie um Conjunto de Escalas de Máquinas Virtuais , depois habilite uma identidade gerenciada atribuída pelo sistema no conjunto de escalas:

Habilitar a identidade gerenciada atribuída pelo sistema em um conjunto de dimensionamento de máquinas virtuais existente

Para habilitar a identidade gerenciada atribuída pelo sistema em um conjunto de dimensionamento de máquinas virtuais que foi originalmente provisionado sem ela:

  1. Entre no Portal do Azure usando uma conta associada à assinatura do Azure que contém o conjunto de dimensionamento de máquinas virtuais.

  2. Navegue até o conjunto de dimensionamento de máquinas virtuais desejado.

  3. Em Sistema atribuído, Status, selecione Ativado e, em seguida, clique em Salvar:

    A captura de tela mostra a página

Remover a identidade gerenciada atribuída pelo sistema de um conjunto de dimensionamento de máquinas virtuais

Se você tiver um conjunto de dimensionamento de máquinas virtuais que não precise mais de uma identidade gerenciada atribuída pelo sistema:

  1. Entre no Portal do Azure usando uma conta associada à assinatura do Azure que contém o conjunto de dimensionamento de máquinas virtuais. Verifique também se a sua conta pertence a uma função que concede permissões de gravação no conjunto de dimensionamento de máquinas virtuais.

  2. Navegue até o conjunto de dimensionamento de máquinas virtuais desejado.

  3. Em Sistema atribuído, Status, selecione Desativado e, em seguida, clique em Salvar:

    Captura de tela mostrando a página de configuração.

Identidade gerenciada atribuída pelo usuário

Nesta seção, você aprenderá como adicionar e remover uma identidade gerenciada atribuída ao usuário de um conjunto de dimensionamento de máquinas virtuais usando o portal do Azure.

Atribuir uma identidade gerenciada atribuída pelo usuário durante a criação de um conjunto de dimensionamento de máquinas virtuais

Atualmente, o portal do Azure não dá suporte à atribuição de uma identidade gerenciada atribuída pelo usuário durante a criação de um conjunto de dimensionamento de máquinas virtuais. Primeiro, crie um conjunto de dimensionamento de máquinas virtuais e atribua uma identidade gerenciada atribuída pelo usuário ao conjunto de dimensionamento.

Atribuir uma identidade gerenciada atribuída pelo usuário a um conjunto de dimensionamento de máquinas virtuais existente

  1. Entre no Portal do Azure usando uma conta associada à assinatura do Azure que contém o conjunto de dimensionamento de máquinas virtuais.

  2. Navegue até o conjunto de dimensionamento de máquinas virtuais desejado e clique em Segurança>Identidade, Atribuído pelo usuário e, em seguida, +Adicionar.

  3. Selecione a identidade gerenciada atribuída pelo usuário criada anteriormente na lista.

    Captura de tela que mostra a página Identidade com o Usuário atribuído selecionado e o botão Adicionar realçado.

Remover uma identidade gerenciada atribuída a um usuário de um conjunto de escalas de máquinas virtuais

Entre no portal do Azure usando uma conta associada à assinatura do Azure que contenha a VM.

Navegue até o conjunto de dimensionamento de máquinas virtuais desejado e clique em Identidade, Usuário atribuído, no nome da identidade gerenciada atribuída ao usuário que você quer excluir e clique em Remover (clique em Sim no painel de confirmação).

Uma captura de tela que mostra como remover uma identidade atribuída pelo usuário de um conjunto de dimensionamento de máquinas virtuais.

Próximas etapas

Neste artigo, você aprenderá a executar as seguintes operações para identidades gerenciadas para recursos do Azure em um conjunto de dimensionamento de máquinas virtuais do Azure usando a CLI do Azure:

  • Habilitar e desabilitar a identidade gerenciada atribuída pelo sistema em um escalonamento de máquinas virtuais do Azure
  • Adicionar e remover uma identidade gerenciada atribuída pelo usuário num conjunto de escalonamento de máquinas virtuais do Azure

Se você ainda não tiver uma conta do Azure, inscreva-se em uma conta gratuita antes de continuar.

Pré-requisitos

  • Se você não estiver familiarizado com as identidades gerenciadas dos recursos do Azure, confira O que são as identidades gerenciadas dos recursos do Azure?. Para saber mais sobre tipos de identidade gerenciada atribuída pelo sistema e pelo usuário, confira Tipos de identidade gerenciada.

  • Para realizar as operações de gerenciamento descritas neste artigo, sua conta precisará das seguintes atribuições de controle de acesso baseado em função do Azure:

    Observação

    Não são necessárias atribuições de função adicionais do diretório do Microsoft Entra.

Identidade gerenciada atribuída pelo sistema

Nesta seção, você aprenderá a habilitar e desabilitar a identidade gerenciada atribuída ao sistema em um conjunto de dimensionamento de máquinas virtuais do Azure usando a CLI do Azure.

Habilitar identidade gerenciada pelo sistema durante a criação de um conjunto de escalas de máquinas virtuais do Azure

Para criar um conjunto de dimensionamento de máquinas virtuais com a identidade gerenciada atribuída pelo sistema habilitada:

  1. Crie um grupo de recursos para independência e implantação do conjunto de dimensionamento de máquinas virtuais e dos recursos relacionados usando az group create. Se você já tiver um grupo de recursos e quiser usá-lo, ignore esta etapa:

    az group create --name myResourceGroup --___location westus
    
  2. Crie um conjunto de dimensionamento de máquinas virtuais. O exemplo a seguir cria um conjunto de dimensionamento de máquinas virtuais nomeado myVMSS com uma identidade gerenciada atribuída ao sistema, conforme solicitado pelo parâmetro --assign-identity, com --role e --scope especificados. Os parâmetros --admin-username e --admin-password especificam o nome de usuário e a senha do usuário administrativo para a entrada na máquina virtual. Atualize esses valores como adequado ao seu ambiente:

    az vmss create --resource-group myResourceGroup --name myVMSS --image win2016datacenter --upgrade-policy-mode automatic --custom-data cloud-init.txt --admin-username azureuser --admin-password myPassword12 --assign-identity --generate-ssh-keys --role contributor --scope mySubscription
    

Habilitar a identidade gerenciada atribuída pelo sistema em um conjunto de dimensionamento de máquinas virtuais do Azure existente

Se você precisar Habilitar a identidade gerenciada atribuída pelo sistema em um conjunto de dimensionamento de máquinas virtuais existente no Azure:

az vmss identity assign -g myResourceGroup -n myVMSS

Desabilitar a identidade gerenciada atribuída pelo sistema de um conjunto de dimensionamento de máquinas virtuais do Azure

Se você tiver um conjunto de dimensionamento de máquinas virtuais que não precise mais da identidade gerenciada atribuída ao sistema, mas ainda precisar de identidades gerenciadas atribuídas ao usuário, use o comando a seguir:

az vmss update -n myVM -g myResourceGroup --set identity.type='UserAssigned' 

Se você tiver uma máquina virtual que não precise mais da identidade gerenciada atribuída ao sistema e não tiver identidades gerenciadas atribuídas ao usuário, use o comando a seguir:

Observação

O valor none diferencia maiúsculas de minúsculas. Deve estar em letras minúsculas.

az vmss update -n myVM -g myResourceGroup --set identity.type="none"

Identidade gerenciada atribuída pelo usuário

Nesta seção, você aprende como habilitar e remover uma identidade gerenciada atribuída ao usuário usando a CLI do Azure.

Atribuir uma identidade gerenciada atribuída pelo usuário durante a criação de um conjunto de dimensionamento de máquinas virtuais

Esta seção descreve a criação de um conjunto de dimensionamento de máquinas virtuais e a atribuição de uma identidade gerenciada atribuída ao usuário ao conjunto de dimensionamento de máquinas virtuais. Se você já tiver um conjunto de dimensionamento de máquinas virtuais que deseje usar, ignore esta seção e prossiga para a próxima.

  1. Se você já tiver um grupo de recursos e quiser usá-lo, ignore esta etapa. Crie um grupo de recursos para contenção e implantação da identidade gerenciada atribuída ao usuário, usando az group create. Substitua os valores de parâmetro <RESOURCE GROUP> e <LOCATION> pelos seus próprios valores. :

    az group create --name <RESOURCE GROUP> --___location <LOCATION>
    
  2. Crie uma identidade gerenciada atribuída ao usuário usando az identity create. O parâmetro -g especifica o grupo de recursos em que a identidade gerenciada atribuída pelo usuário é criada e o parâmetro -n especifica o nome. Substitua os valores de parâmetro <RESOURCE GROUP> e <USER ASSIGNED IDENTITY NAME> pelos seus próprios valores:

    Importante

    Ao criar identidades gerenciadas atribuídas pelo usuário, o nome deve começar com uma letra ou número e pode incluir uma combinação de caracteres alfanuméricos, hifens (-) e sublinhados (_). Para que a atribuição a uma máquina virtual ou um conjunto de dimensionamento de máquinas virtuais funcione corretamente, o nome é limitado a 24 caracteres. Para mais informações, consulte Perguntas frequentes e problemas conhecidos

    az identity create -g <RESOURCE GROUP> -n <USER ASSIGNED IDENTITY NAME>
    

    A resposta contém detalhes sobre a identidade gerenciada criada e atribuída ao usuário, semelhante ao seguinte. O valor do recurso id atribuído à identidade gerenciada atribuída ao usuário é usado na etapa a seguir.

    {
         "clientId": "00001111-aaaa-2222-bbbb-3333cccc4444",
         "clientSecretUrl": "https://control-westcentralus.identity.azure.net/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>/credentials?tid=5678&oid=9012&aid=00001111-aaaa-2222-bbbb-3333cccc4444",
         "id": "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>",
         "___location": "westcentralus",
         "name": "<USER ASSIGNED IDENTITY NAME>",
         "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
         "resourceGroup": "<RESOURCE GROUP>",
         "tags": {},
         "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
         "type": "Microsoft.ManagedIdentity/userAssignedIdentities"    
    }
    
  3. Crie um conjunto de dimensionamento de máquinas virtuais. O exemplo a seguir cria um conjunto de dimensionamento de máquinas virtuais associado à nova identidade gerenciada atribuída ao usuário, conforme especificado pelo parâmetro --assign-identity, com --role e --scope especificados. Substitua os valores de parâmetro <RESOURCE GROUP>, <VMSS NAME>, <USER NAME>, <PASSWORD>, <USER ASSIGNED IDENTITY>, <ROLE> e <SUBSCRIPTION> pelos seus valores.

    az vmss create --resource-group <RESOURCE GROUP> --name <VMSS NAME> --image <SKU Linux Image> --admin-username <USER NAME> --admin-password <PASSWORD> --assign-identity <USER ASSIGNED IDENTITY> --role <ROLE> --scope <SUBSCRIPTION>
    

Atribuir uma identidade gerenciada atribuída pelo usuário a um conjunto de dimensionamento de máquinas virtuais existente

  1. Crie uma identidade gerenciada atribuída ao usuário usando az identity create. O parâmetro -g especifica o grupo de recursos em que a identidade gerenciada atribuída pelo usuário é criada e o parâmetro -n especifica o nome. Substitua os valores de parâmetro <RESOURCE GROUP> e <USER ASSIGNED IDENTITY NAME> pelos seus próprios valores:

    az identity create -g <RESOURCE GROUP> -n <USER ASSIGNED IDENTITY NAME>
    

    A resposta contém detalhes sobre a identidade gerenciada criada e atribuída ao usuário, semelhante ao seguinte.

    {
         "clientId": "00001111-aaaa-2222-bbbb-3333cccc4444",
         "clientSecretUrl": "https://control-westcentralus.identity.azure.net/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY >/credentials?tid=5678&oid=9012&aid=aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
         "id": "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY>",
         "___location": "westcentralus",
         "name": "<USER ASSIGNED IDENTITY>",
         "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
         "resourceGroup": "<RESOURCE GROUP>",
         "tags": {},
         "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
         "type": "Microsoft.ManagedIdentity/userAssignedIdentities"    
    }
    
  2. Atribua uma identidade gerenciada atribuída pelo usuário ao seu conjunto de dimensionamento de máquinas virtuais. Substitua os valores de parâmetro <RESOURCE GROUP> e <VIRTUAL MACHINE SCALE SET NAME> pelos seus próprios valores. A <USER ASSIGNED IDENTITY> é a propriedade name do recurso da identidade atribuída pelo usuário, conforme criado na etapa anterior:

    az vmss identity assign -g <RESOURCE GROUP> -n <VIRTUAL MACHINE SCALE SET NAME> --identities <USER ASSIGNED IDENTITY>
    

Remover uma identidade gerenciada atribuída a um usuário de um conjunto de escalonamento de máquinas virtuais do Azure

Para remover uma identidade gerenciada atribuída pelo usuário de um conjunto de dimensionamento de máquinas virtuais, use az vmss identity remove. Se esta for a única identidade gerenciada atribuída ao usuário no conjunto de dimensionamento de máquinas virtuais, UserAssigned será removido do valor do tipo de identidade. Substitua os valores de parâmetro <RESOURCE GROUP> e <VIRTUAL MACHINE SCALE SET NAME> pelos seus próprios valores. O <USER ASSIGNED IDENTITY> é a propriedade name da identidade gerenciada atribuída ao usuário, que pode ser localizada na seção de identidade do conjunto de dimensionamento de máquinas virtuais usando az vmss identity show:

az vmss identity remove -g <RESOURCE GROUP> -n <VIRTUAL MACHINE SCALE SET NAME> --identities <USER ASSIGNED IDENTITY>

Se o seu conjunto de dimensionamento de máquina virtual não tiver uma identidade gerenciada atribuída pelo sistema e você quiser remover todas as identidades gerenciadas atribuídas pelo usuário, use o seguinte comando:

Observação

O valor none diferencia maiúsculas de minúsculas. Deve estar em letras minúsculas.

az vmss update -n myVMSS -g myResourceGroup --set identity.type="none" identity.userAssignedIdentities=null

Se o conjunto de dimensionamento de máquinas virtuais tiver identidades gerenciadas atribuídas ao sistema e atribuídas ao usuário, você poderá remover todas as identidades atribuídas ao usuário, alternando para usar somente a identidade gerenciada atribuída ao sistema. Use o seguinte comando:

az vmss update -n myVMSS -g myResourceGroup --set identity.type='SystemAssigned' identity.userAssignedIdentities=null 

Próximas etapas

Neste artigo, usando o PowerShell, você aprende como executar as identidades gerenciadas para operações de recursos do Azure em um conjunto de dimensionamento de máquina virtual:

  • Habilitar e desabilitar a identidade gerenciada atribuída pelo sistema em um conjunto de dimensionamento de máquinas virtuais
  • Adicionar e remover uma identidade gerenciada atribuída pelo usuário em um conjunto de dimensionamento de máquinas virtuais

Observação

Recomendamos que você use o módulo Az PowerShell do Azure para interagir com o Azure. Confira Instalar o Azure PowerShell para começar. Para saber como migrar para o módulo Az PowerShell, confira Migrar o Azure PowerShell do AzureRM para o Az.

Pré-requisitos

  • Se você não estiver familiarizado com identidades gerenciadas para recursos do Azure, confira a seção de visão geral. Lembre-se de revisar a diferença entre uma identidade atribuída designada pelo sistema e gerenciada pelo usuário.

  • Se você ainda não tiver uma conta do Azure, inscreva-se em uma conta gratuita antes de continuar.

  • Para realizar as operações de gerenciamento descritas neste artigo, sua conta precisará das seguintes atribuições de controle de acesso baseado em função do Azure:

    Observação

    Não são necessárias atribuições de função adicionais do diretório do Microsoft Entra.

  • Para executar os scripts de exemplo, você tem duas opções:

    • Use o Azure Cloud Shell, que você pode abrir usando o botão Experimentar no canto superior direito dos blocos de código.
    • Execute os scripts localmente instalando a versão mais recente do Azure PowerShell e, em seguida, entre no Azure usando Connect-AzAccount.

Identidade gerenciada atribuída pelo sistema

Nesta seção, você aprenderá como habilitar e remover uma identidade gerenciada atribuída pelo sistema usando o Azure PowerShell.

Habilitar a identidade gerenciada atribuída pelo sistema durante a criação de um conjunto de dimensionamento de máquinas virtuais do Azure

Para criar um conjunto de dimensionamento de máquinas virtuais com a identidade gerenciada atribuída pelo sistema habilitada:

  1. Veja o Exemplo 1 no artigo de referência do cmdlet New-AzVmssConfig para criar um conjunto de dimensionamento de máquinas virtuais com uma identidade gerenciada atribuída pelo sistema. Adicione o parâmetro -IdentityType SystemAssigned ao cmdlet New-AzVmssConfig:

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

Habilitar a identidade gerenciada atribuída pelo sistema em um conjunto de dimensionamento de máquinas virtuais do Azure existente

Se você precisar ativar uma identidade gerenciada atribuída pelo sistema em um conjunto de dimensionamento de máquina virtual do Azure existente:

  1. Verifique se a conta do Azure que você está usando pertence a uma função que fornece permissões de gravação no conjunto de dimensionamento de máquinas virtuais, como “Colaborador da Máquina Virtual”.

  2. Recupere as propriedades do conjunto de dimensionamento de máquinas virtuais usando o cmdlet Get-AzVmss. Em seguida, para habilitar uma identidade gerenciada atribuída pelo sistema, use a opção -IdentityType no cmdlet Update-AzVmss:

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

Desabilitar a identidade gerenciada atribuída pelo sistema de um conjunto de dimensionamento de máquinas virtuais do Azure

Se você tiver um conjunto de dimensionamento de máquina virtual que não precise mais da identidade gerenciada atribuída pelo sistema, mas ainda precisar de identidades gerenciadas atribuídas pelo usuário, use o seguinte cmdlet:

  1. Verifique se a sua conta pertence a uma função que fornece permissões de gravação no conjunto de dimensionamento de máquinas virtuais, como “Colaborador da Máquina Virtual”.

  2. Execute o cmdlet a seguir:

    Update-AzVmss -ResourceGroupName myResourceGroup -Name myVmss -IdentityType "UserAssigned"
    
  3. Se você tiver um conjunto de dimensionamento de máquinas virtuais que não precise mais de identidade gerenciada atribuída pelo sistema e não tenha identidades gerenciadas atribuídas pelo usuário, use o seguinte comando:

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

Identidade gerenciada atribuída pelo usuário

Nesta seção, você aprenderá como adicionar e remover uma identidade gerenciada atribuída pelo usuário de um conjunto de dimensionamento de máquina virtual usando o Azure PowerShell.

Atribuir uma identidade gerenciada atribuída pelo usuário durante a criação de um conjunto de dimensionamento de máquinas virtuais do Azure

Criar uma nova escala de máquina virtual definida com uma identidade gerenciada atribuída pelo usuário não é atualmente suportada pelo PowerShell. Consulte a próxima seção sobre como adicionar uma identidade gerenciada atribuída pelo usuário a um conjunto de dimensionamento de máquina virtual existente. Verifique novamente para atualizações.

Atribuir uma identidade gerenciada atribuída pelo usuário a um conjunto de dimensionamento de máquinas virtuais do Azure existente

Para atribuir uma identidade gerenciada atribuída pelo usuário a um conjunto de escalonamento de máquina virtual do Azure existente:

  1. Verifique se a sua conta pertence a uma função que fornece permissões de gravação no conjunto de dimensionamento de máquinas virtuais, como “Colaborador da Máquina Virtual”.

  2. Recupere as propriedades do conjunto de dimensionamento de máquinas virtuais usando o cmdlet Get-AzVM. Em seguida, para atribuir uma identidade gerenciada atribuída pelo usuário ao conjunto de dimensionamento de máquinas virtuais, use as opções -IdentityType e -IdentityID no cmdlet Update-AzVmss. Substitua <VM NAME>, <SUBSCRIPTION ID>, <RESOURCE GROUP>, <USER ASSIGNED ID1> e USER ASSIGNED ID2 pelos seus próprios valores.

    Importante

    Ao criar identidades gerenciadas atribuídas pelo usuário, o nome deve começar com uma letra ou número e pode incluir uma combinação de caracteres alfanuméricos, hifens (-) e sublinhados (_). Para que a atribuição a uma máquina virtual ou um conjunto de dimensionamento de máquinas virtuais funcione corretamente, o nome é limitado a 24 caracteres. Para mais informações, consulte Perguntas frequentes e problemas conhecidos

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

Remover uma identidade gerenciada atribuída a um usuário de um conjunto de escalonamento de máquinas virtuais do Azure

Se o seu conjunto de dimensionamento de máquina virtual tiver várias identidades gerenciadas atribuídas pelo usuário, você poderá remover todas, exceto a última, usando os seguintes comandos. Substitua os valores de parâmetro <RESOURCE GROUP> e <VIRTUAL MACHINE SCALE SET NAME> pelos seus próprios valores. O <USER ASSIGNED IDENTITY NAME> é a propriedade de nome da identidade gerenciada atribuída pelo usuário, que deve permanecer no conjunto de dimensionamento de máquinas virtuais. Essas informações podem ser encontradas na seção de identidade do conjunto de escalonamento de máquinas virtuais usando az vmss show:

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

Se o seu conjunto de dimensionamento de máquina virtual não tiver uma identidade gerenciada atribuída pelo sistema e você quiser remover todas as identidades gerenciadas atribuídas pelo usuário, use o seguinte comando:

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

Se o seu conjunto de dimensionamento de máquinas virtuais tiver identidades gerenciadas atribuídas pelo sistema e pelo usuário, você poderá remover todas as identidades gerenciadas atribuídas pelo usuário mudando para usar somente a identidade gerenciada atribuída pelo sistema.

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

Próximas etapas

Neste artigo, você aprenderá como executar as seguintes identidades gerenciadas para operações de recursos do Azure em um conjunto de dimensionamento de máquinas virtuais do Azure, usando o modelo de implantação do Azure Resource Manager:

  • Habilitar e desabilitar a identidade gerenciada atribuída pelo sistema em um escalonamento de máquinas virtuais do Azure
  • Adicionar e remover uma identidade gerenciada atribuída pelo usuário num conjunto de escalonamento de máquinas virtuais do Azure

Pré-requisitos

Modelos do Azure Resource Manager

Assim como com o Portal do Azure e o script, os modelos do Azure Resource Manager permitem implantar recursos novos ou modificados definidos por um grupo de recursos do Azure. Há várias opções disponíveis para a edição e a implantação do modelo, tanto locais quanto baseadas em portal, incluindo:

Independentemente da opção escolhido, a sintaxe do modelo será a mesma durante a implantação inicial e a reimplantação. A habilitação de identidades gerenciadas para recursos do Azure em uma VM nova ou existente é feita da mesma maneira. Além disso, por padrão, o Azure Resource Manager faz uma atualização incremental nas implantações.

Identidade gerenciada atribuída pelo sistema

Nesta seção, você habilitará e desabilitará a identidade gerenciada atribuída ao sistema usando um modelo do Azure Resource Manager.

Habilitar a identidade gerenciada atribuída pelo sistema durante a criação de um conjunto de dimensionamento de máquinas virtuais ou em um conjunto de dimensionamento de máquinas virtuais existente

  1. Se você entrar no Azure localmente ou por meio do Portal do Azure, use uma conta que esteja associada à assinatura do Azure que contém o conjunto de dimensionamento de máquinas virtuais.

  2. Para habilitar a identidade gerenciada atribuída ao sistema, carregue o modelo em um editor, localize o recurso Microsoft.Compute/virtualMachinesScaleSets de interesse dentro da seção recursos e adicione a propriedade identity no mesmo nível que a propriedade "type": "Microsoft.Compute/virtualMachinesScaleSets". Use a seguinte sintaxe:

    "identity": {
        "type": "SystemAssigned"
    }
    
  3. Quando tiver concluído, as seções a seguir deverão ser adicionadas à seção recurso do modelo e serem semelhantes ao exemplo mostrado abaixo:

     "resources": [
         {
             //other resource provider properties...
             "apiVersion": "2018-06-01",
             "type": "Microsoft.Compute/virtualMachineScaleSets",
             "name": "[variables('vmssName')]",
             "___location": "[resourceGroup().___location]",
             "identity": {
                 "type": "SystemAssigned",
             },
            "properties": {
                 //other resource provider properties...
                 "virtualMachineProfile": {
                     //other virtual machine profile properties...
    
                 }
             }
         }
     ]
    

Desabilitar uma identidade gerenciada atribuída pelo sistema de um conjunto de dimensionamento de máquinas virtuais do Azure

Se você tiver um conjunto de dimensionamento de máquinas virtuais que não precise mais de uma identidade gerenciada atribuída pelo sistema:

  1. Se você entrar no Azure localmente ou por meio do Portal do Azure, use uma conta que esteja associada à assinatura do Azure que contém o conjunto de dimensionamento de máquinas virtuais.

  2. Carregue o modelo em um editor e localize o recurso Microsoft.Compute/virtualMachineScaleSets de interesse na seção resources. Se você tiver uma VM que tenha apenas a identidade gerenciada atribuída ao sistema, poderá desabilitá-la alterando o tipo de identidade para None.

    Microsoft.Compute/virtualMachineScaleSets API versão 01-06-2018

    Se a apiVersion for 2018-06-01 e a VM tiver identidades gerenciadas atribuídas pelo usuário e pelo sistema, remova SystemAssigned do tipo de identidade e mantenha UserAssigned com os valores de dicionário userAssignedIdentities.

    Microsoft.Compute/virtualMachineScaleSets API versão 01-06-2018

    Se a apiVersion for 2017-12-01 e o conjunto de dimensionamento de máquinas virtuais tiver identidades gerenciadas atribuídas pelo usuário e pelo sistema, remova SystemAssigned do tipo de identidade e mantenha UserAssigned juntamente com a matriz identityIds das identidades gerenciadas atribuídas pelo usuário.

    O seguinte exemplo mostra como remover uma identidade gerenciada atribuída ao sistema de um conjunto de dimensionamento de máquinas virtuais sem nenhuma identidade gerenciada atribuída ao usuário:

    {
        "name": "[variables('vmssName')]",
        "apiVersion": "2018-06-01",
        "___location": "[parameters(Location')]",
        "identity": {
            "type": "None"
         }
    
    }
    

Identidade gerenciada atribuída pelo usuário

Nesta seção, você atribui uma identidade gerenciada atribuída ao usuário a um conjunto de dimensionamento de máquinas virtuais usando o modelo do Azure Resource Manager.

Observação

Para criar uma identidade gerenciada atribuída ao usuário usando um modelo do Azure Resource Manager, consulte Criar uma identidade gerenciada atribuída ao usuário.

Atribuir uma identidade gerenciada atribuída pelo usuário a um conjunto de dimensionamento de máquinas virtuais

  1. No elemento resources, adicione a entrada a seguir para atribuir uma identidade gerenciada atribuída pelo usuário ao conjunto de dimensionamento de máquinas virtuais. Certifique-se de substituir <USERASSIGNEDIDENTITY> pelo nome da identidade gerenciada atribuída ao usuário que você criou.

    Microsoft.Compute/virtualMachineScaleSets API versão 01-06-2018

    Se sua apiVersion for 2018-06-01, as identidades gerenciadas atribuídas ao usuário serão armazenadas no formato de dicionário userAssignedIdentities e o valor <USERASSIGNEDIDENTITYNAME> deverá ser armazenado em uma variável definida na seção variables do seu template.

    {
        "name": "[variables('vmssName')]",
        "apiVersion": "2018-06-01",
        "___location": "[parameters(Location')]",
        "identity": {
            "type": "userAssigned",
            "userAssignedIdentities": {
                "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]": {}
            }
        }
    
    }
    

    Microsoft.Compute/virtualMachineScaleSets API versão 01-12-2017

    Se o seu apiVersion for 2017-12-01 ou mais antigo, as identidades gerenciadas atribuídas ao usuário serão armazenadas no array identityIds e o valor <USERASSIGNEDIDENTITYNAME> deverá ser armazenado em uma variável definida na seção de variáveis do seu modelo.

    {
        "name": "[variables('vmssName')]",
        "apiVersion": "2017-03-30",
        "___location": "[parameters(Location')]",
        "identity": {
            "type": "userAssigned",
            "identityIds": [
                "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITY>'))]"
            ]
        }
    }
    
  2. Quando terminar, seu modelo deverá ser semelhante ao seguinte:

    Microsoft.Compute/virtualMachineScaleSets API versão 01-06-2018

    "resources": [
         {
             //other resource provider properties...
             "apiVersion": "2018-06-01",
             "type": "Microsoft.Compute/virtualMachineScaleSets",
             "name": "[variables('vmssName')]",
             "___location": "[resourceGroup().___location]",
             "identity": {
                 "type": "UserAssigned",
                 "userAssignedIdentities": {
                     "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]": {}
                 }
             },
            "properties": {
                 //other virtual machine properties...
                 "virtualMachineProfile": {
                     //other virtual machine profile properties...
                 }
             }
         }
     ]
    

    Microsoft.Compute/virtualMachines API versão 2017-12-01

    "resources": [
         {
             //other resource provider properties...
             "apiVersion": "2017-12-01",
             "type": "Microsoft.Compute/virtualMachineScaleSets",
             "name": "[variables('vmssName')]",
             "___location": "[resourceGroup().___location]",
             "identity": {
                 "type": "UserAssigned",
                 "identityIds": [
                     "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]"
                 ]
             },
            "properties": {
                 //other virtual machine properties...
                 "virtualMachineProfile": {
                     //other virtual machine profile properties...
                 }
             }
         }
     ]
    

Remover a identidade gerenciada atribuída ao usuário de um conjunto de dimensionamento de máquinas virtuais do Azure

Se você tiver um conjunto de dimensionamento de máquinas virtuais que não precise mais de uma identidade gerenciada atribuída pelo usuário:

  1. Se você entrar no Azure localmente ou por meio do Portal do Azure, use uma conta que esteja associada à assinatura do Azure que contém o conjunto de dimensionamento de máquinas virtuais.

  2. Carregue o modelo em um editor e localize o recurso Microsoft.Compute/virtualMachineScaleSets de interesse na seção resources. Caso tenha um conjunto de dimensionamento de máquinas virtuais que tenha apenas a identidade gerenciada atribuída pelo usuário, desabilite-a alterando o tipo de identidade para None.

    O seguinte exemplo mostra como remover todas as identidades gerenciadas atribuídas ao usuário de uma VM sem nenhuma identidade gerenciada atribuída ao sistema:

    {
        "name": "[variables('vmssName')]",
        "apiVersion": "2018-06-01",
        "___location": "[parameters(Location')]",
        "identity": {
            "type": "None"
         }
    }
    

    Microsoft.Compute/virtualMachineScaleSets API versão 01-06-2018

    Para remover uma só identidade gerenciada atribuída pelo usuário de um conjunto de dimensionamento de máquinas virtuais, remova-a do dicionário userAssignedIdentities.

    Caso você tenha uma identidade atribuída pelo sistema, mantenha-a com o valor type no valor identity.

    Microsoft.Compute/virtualMachineScaleSets API versão 01-12-2017

    Para remover uma única identidade gerenciada atribuída ao usuário de um conjunto de dimensionamento de máquinas virtuais, remova-a da matriz identityIds.

    Caso você tenha uma identidade gerenciada atribuída ao sistema, mantenha-a no valor type, que está sob o valor identity.

Próximas etapas

Neste artigo, usando CURL para fazer chamadas ao endpoint REST do Azure Resource Manager, você aprenderá como executar as seguintes operações de identidades gerenciadas para recursos do Azure em um conjunto de escalabilidade de máquinas virtuais:

  • Habilitar e desabilitar a identidade gerenciada atribuída pelo sistema em um escalonamento de máquinas virtuais do Azure
  • Adicionar e remover uma identidade gerenciada atribuída pelo usuário num conjunto de escalonamento de máquinas virtuais do Azure

Se você ainda não tiver uma conta do Azure, inscreva-se em uma conta gratuita antes de continuar.

Pré-requisitos

  • Se você não estiver familiarizado com as identidades gerenciadas dos recursos do Azure, confira O que são as identidades gerenciadas dos recursos do Azure?. Para saber mais sobre tipos de identidade gerenciada atribuída pelo sistema e pelo usuário, confira Tipos de identidade gerenciada.

  • Para realizar as operações de gerenciamento deste artigo, a conta precisará das seguintes atribuições de função do Azure:

    Observação

    Não são necessárias atribuições de função adicionais do diretório do Microsoft Entra.

Identidade gerenciada atribuída pelo sistema

Nesta seção, você aprenderá como habilitar e desabilitar a identidade gerenciada atribuída pelo sistema em um conjunto de dimensionamento de máquinas virtuais usando CURL para fazer chamadas ao endpoint REST do Azure Resource Manager.

Habilitar a identidade gerenciada atribuída pelo sistema durante a criação de um conjunto de dimensionamento de máquinas virtuais

Para criar um conjunto de dimensionamento de máquinas virtuais com uma identidade gerenciada atribuída pelo sistema habilitada, crie um conjunto de dimensionamento de máquinas virtuais e recupere um token de acesso para usar o cURL para chamar o ponto de extremidade do Resource Manager com o valor de tipo da identidade gerenciada atribuída pelo sistema.

  1. Crie um grupo de recursos para independência e implantação do conjunto de dimensionamento de máquinas virtuais e dos recursos relacionados usando az group create. Ignore esta etapa, se você já tiver o grupo de recursos que deseja usar:

    az group create --name myResourceGroup --___location westus
    
  2. Crie uma interface de rede para seu conjunto de escalonamento de máquinas virtuais.

     az network nic create -g myResourceGroup --vnet-name myVnet --subnet mySubnet -n myNic
    
  3. Recupere um token de acesso de portador, que será usado na próxima etapa no cabeçalho de autorização para criar o conjunto de dimensionamento de máquinas virtuais com uma identidade gerenciada atribuída pelo sistema.

    az account get-access-token
    
  4. Usando o Azure Cloud Shell, crie um conjunto de dimensionamento de máquinas virtuais usando o cURL para chamar o ponto de extremidade REST do Azure Resource Manager. O exemplo a seguir cria um conjunto de dimensionamento de máquinas virtuais nomeado myVMSS no myResourceGroup com uma identidade gerenciada atribuída ao sistema, conforme identificado no corpo da solicitação pelo valor "identity":{"type":"SystemAssigned"}. Substitua <ACCESS TOKEN> pelo valor recebido na etapa anterior quando você solicitou um token de acesso de portador e o valor <SUBSCRIPTION ID> apropriado para seu ambiente.

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PUT -d '{"sku":{"tier":"Standard","capacity":3,"name":"Standard_D1_v2"},"___location":"eastus","identity":{"type":"SystemAssigned"},"properties":{"overprovision":true,"virtualMachineProfile":{"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"createOption":"FromImage"}},"osProfile":{"computerNamePrefix":"myVMSS","adminUsername":"azureuser","adminPassword":"myPassword12"},"networkProfile":{"networkInterfaceConfigurations":[{"name":"myVMSS","properties":{"primary":true,"enableIPForwarding":true,"ipConfigurations":[{"name":"myVMSS","properties":{"subnet":{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"}}}]}}]}},"upgradePolicy":{"mode":"Manual"}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
    
    PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
    

    Cabeçalhos de solicitação

    Cabeçalho da solicitação Descrição
    Tipo de Conteúdo Obrigatório. Defina como application/json.
    Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.

    Corpo da solicitação

     {
        "sku":{
           "tier":"Standard",
           "capacity":3,
           "name":"Standard_D1_v2"
        },
        "___location":"eastus",
        "identity":{
           "type":"SystemAssigned"
        },
        "properties":{
           "overprovision":true,
           "virtualMachineProfile":{
              "storageProfile":{
                 "imageReference":{
                    "sku":"2016-Datacenter",
                    "publisher":"MicrosoftWindowsServer",
                    "version":"latest",
                    "offer":"WindowsServer"
                 },
                 "osDisk":{
                    "caching":"ReadWrite",
                    "managedDisk":{
                       "storageAccountType":"StandardSSD_LRS"
                    },
                    "createOption":"FromImage"
                 }
              },
              "osProfile":{
                 "computerNamePrefix":"myVMSS",
                 "adminUsername":"azureuser",
                 "adminPassword":"myPassword12"
              },
              "networkProfile":{
                 "networkInterfaceConfigurations":[
                    {
                       "name":"myVMSS",
                       "properties":{
                          "primary":true,
                          "enableIPForwarding":true,
                          "ipConfigurations":[
                             {
                                "name":"myVMSS",
                                "properties":{
                                   "subnet":{
                                      "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"
                                   }
                                }
                             }
                          ]
                       }
                    }
                 ]
              }
           },
           "upgradePolicy":{
              "mode":"Manual"
           }
        }
     }  
    

Habilitar a identidade gerenciada atribuída pelo sistema em um conjunto de dimensionamento de máquinas virtuais existente

Para habilitar a identidade gerenciada atribuída pelo sistema em um conjunto de dimensionamento de máquinas virtuais existente, adquira um token de acesso e, em seguida, use o cURL para chamar o ponto de extremidade REST do Resource Manager para atualizar o tipo de identidade.

  1. Recupere um token de acesso de portador, que será usado na próxima etapa no cabeçalho de autorização para criar o conjunto de dimensionamento de máquinas virtuais com uma identidade gerenciada atribuída pelo sistema.

    az account get-access-token
    
  2. Use o comando do cURL a seguir para chamar o ponto de extremidade REST do Azure Resource Manager para habilitar a identidade gerenciada atribuída pelo sistema no conjunto de dimensionamento de máquinas virtuais, identificada no corpo da solicitação pelo valor {"identity":{"type":"SystemAssigned"}, para um conjunto de dimensionamento de máquinas virtuais chamado myVMSS. Substitua <ACCESS TOKEN> pelo valor recebido na etapa anterior quando você solicitou um token de acesso de portador e o valor <SUBSCRIPTION ID> apropriado para seu ambiente.

    Importante

    Para garantir que você não exclua nenhuma identidade gerenciada atribuída ao usuário existente que esteja atribuída ao conjunto de dimensionamento de máquinas virtuais, será necessário listar as identidades gerenciadas atribuídas ao usuário, usando este comando CURL: curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>". Se houver identidades gerenciadas atribuídas ao usuário no conjunto de dimensionamento de máquinas virtuais, conforme identificado no valor identity da resposta, passe para a etapa 3, que mostra como reter as identidades gerenciadas atribuídas ao usuário ao habilitar a identidade gerenciada atribuída ao sistema no conjunto de dimensionamento de máquinas virtuais.

     curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned"}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
    

    Cabeçalhos de solicitação

    Cabeçalho da solicitação Descrição
    Tipo de Conteúdo Obrigatório. Defina como application/json.
    Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.

    Corpo da solicitação

     {
        "identity":{
           "type":"SystemAssigned"
        }
     }
    
  3. Para habilitar a identidade gerenciada atribuída pelo sistema em um conjunto de dimensionamento de máquinas virtuais com identidades gerenciadas atribuídas pelo usuário existentes, é necessário adicionar SystemAssigned ao valor type.

    Por exemplo, se o conjunto de dimensionamento de máquinas virtuais tiver as identidades gerenciadas atribuídas ao usuário ID1 e ID2 atribuídas a ele, e você quer adicionar uma identidade gerenciada atribuída ao sistema ao conjunto de dimensionamento de máquinas virtuais, use a seguinte chamada de CURL. Substitua <ACCESS TOKEN> e <SUBSCRIPTION ID> pelos valores apropriados para seu ambiente.

    A versão da API 2018-06-01 armazena identidades gerenciadas designadas pelo usuário no valor userAssignedIdentities em um formato de dicionário, em oposição ao valor identityIds em um formato de matriz usado na versão da API 2017-12-01.

    VERSÃO DA API 2018-06-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned,UserAssigned", "userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{},"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":{}}}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
    

    Cabeçalhos de solicitação

    Cabeçalho da solicitação Descrição
    Tipo de Conteúdo Obrigatório. Defina como application/json.
    Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.

    Corpo da solicitação

     {
        "identity":{
           "type":"SystemAssigned,UserAssigned",
           "userAssignedIdentities":{
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{
              },
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":{
    
              }
           }
        }
     }
    

    VERSÃO DA API 2017-12-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01' -X PATCH -d '{"identity":{"type":"SystemAssigned,UserAssigned", "identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1","/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2"]}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01 HTTP/1.1
    

    Cabeçalhos de solicitação

    Cabeçalho da solicitação Descrição
    Tipo de Conteúdo Obrigatório. Defina como application/json.
    Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.

    Corpo da solicitação

     {
        "identity":{
           "type":"SystemAssigned,UserAssigned",
           "identityIds":[
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1",
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2"
           ]
        }
     }
    

Desabilitar a identidade gerenciada atribuída pelo sistema em um conjunto de dimensionamento de máquinas virtuais

Para desabilitar uma identidade gerenciada atribuída pelo sistema em um conjunto de dimensionamento de máquinas virtuais existente, adquira um token de acesso e use o cURL para chamar o ponto de extremidade REST do Resource Manager para atualizar o tipo de identidade para None.

  1. Recupere um token de acesso de portador, que será usado na próxima etapa no cabeçalho de autorização para criar o conjunto de dimensionamento de máquinas virtuais com uma identidade gerenciada atribuída pelo sistema.

    az account get-access-token
    
  2. Atualize o conjunto de dimensionamento de máquinas virtuais usando CURL para invocar o endpoint REST do Azure Resource Manager e desabilitar a identidade gerenciada atribuída pelo sistema. O exemplo a seguir desabilita a identidade gerenciada atribuída ao sistema, identificada no corpo da solicitação pelo valor {"identity":{"type":"None"}}, de um conjunto de dimensionamento de máquinas virtuais nomeado myVMSS. Substitua <ACCESS TOKEN> pelo valor recebido na etapa anterior quando você solicitou um token de acesso de portador e o valor <SUBSCRIPTION ID> apropriado para seu ambiente.

    Importante

    Para garantir que você não exclua nenhuma identidade gerenciada atribuída ao usuário existente que esteja atribuída ao conjunto de dimensionamento de máquinas virtuais, será necessário listar as identidades gerenciadas atribuídas ao usuário, usando este comando CURL: curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>". Se houver alguma identidade gerenciada atribuída ao usuário ao conjunto de dimensionamento de máquinas virtuais, passe para a etapa 3 que mostra como reter identidades gerenciadas atribuídas ao usuário, ao remover a identidade atribuída ao sistema do conjunto de dimensionamento de máquinas virtuais.

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"None"}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
    

    Cabeçalhos de solicitação

    Cabeçalho da solicitação Descrição
    Tipo de Conteúdo Obrigatório. Defina como application/json.
    Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.

    Corpo da solicitação

     {
        "identity":{
           "type":"None"
        }
     }
    

    Para remover a identidade gerenciada atribuída pelo sistema de um conjunto de dimensionamento de máquinas virtuais que tenha identidades gerenciadas atribuídas pelo usuário, remova SystemAssigned do valor {"identity":{"type:" "}} enquanto mantém o valor UserAssigned e os valores do dicionário userAssignedIdentities, caso esteja usando a versão da API 01-06-2018. Se você estiver usando a versão da API 2017-12-01 ou anterior, mantenha o array identityIds.

Identidade gerenciada atribuída pelo usuário

Nesta seção, você aprenderá como adicionar e remover uma identidade gerenciada atribuída pelo usuário em um conjunto de dimensionamento de máquinas virtuais usando CURL para fazer chamadas ao endpoint REST do Azure Resource Manager.

Atribuir uma identidade gerenciada atribuída pelo usuário durante a criação de um conjunto de dimensionamento de máquinas virtuais

  1. Recupere um token de acesso de portador, que será usado na próxima etapa no cabeçalho de autorização para criar o conjunto de dimensionamento de máquinas virtuais com uma identidade gerenciada atribuída pelo sistema.

    az account get-access-token
    
  2. Crie uma interface de rede para seu conjunto de escalonamento de máquinas virtuais.

     az network nic create -g myResourceGroup --vnet-name myVnet --subnet mySubnet -n myNic
    
  3. Recupere um token de acesso de portador, que será usado na próxima etapa no cabeçalho de autorização para criar o conjunto de dimensionamento de máquinas virtuais com uma identidade gerenciada atribuída pelo sistema.

    az account get-access-token
    
  4. Crie uma identidade gerenciada atribuída pelo usuário usando as instruções encontradas aqui: Crie uma identidade gerenciada atribuída pelo usuário.

  5. Crie um conjunto de dimensionamento de máquinas virtuais usando o cURL para chamar o ponto de extremidade REST do Azure Resource Manager. O exemplo a seguir cria um conjunto de dimensionamento de máquinas virtuais nomeado myVMSS no grupo de recursos myResourceGroup com uma identidade gerenciada atribuída ao usuário ID1, identificada no corpo da solicitação pelo valor "identity":{"type":"UserAssigned"}. Substitua <ACCESS TOKEN> pelo valor recebido na etapa anterior quando você solicitou um token de acesso de portador e o valor <SUBSCRIPTION ID> apropriado para seu ambiente.

    VERSÃO DA API 2018-06-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PUT -d '{"sku":{"tier":"Standard","capacity":3,"name":"Standard_D1_v2"},"___location":"eastus","identity":{"type":"UserAssigned","userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{}}},"properties":{"overprovision":true,"virtualMachineProfile":{"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"createOption":"FromImage"}},"osProfile":{"computerNamePrefix":"myVMSS","adminUsername":"azureuser","adminPassword":"myPassword12"},"networkProfile":{"networkInterfaceConfigurations":[{"name":"myVMSS","properties":{"primary":true,"enableIPForwarding":true,"ipConfigurations":[{"name":"myVMSS","properties":{"subnet":{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"}}}]}}]}},"upgradePolicy":{"mode":"Manual"}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
    
    PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
    

    Cabeçalhos de solicitação

    Cabeçalho da solicitação Descrição
    Tipo de Conteúdo Obrigatório. Defina como application/json.
    Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.

    Corpo da solicitação

     {
        "sku":{
           "tier":"Standard",
           "capacity":3,
           "name":"Standard_D1_v2"
        },
        "___location":"eastus",
        "identity":{
           "type":"UserAssigned",
           "userAssignedIdentities":{
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{
    
              }
           }
        },
        "properties":{
           "overprovision":true,
           "virtualMachineProfile":{
              "storageProfile":{
                 "imageReference":{
                    "sku":"2016-Datacenter",
                    "publisher":"MicrosoftWindowsServer",
                    "version":"latest",
                    "offer":"WindowsServer"
                 },
                 "osDisk":{
                    "caching":"ReadWrite",
                    "managedDisk":{
                       "storageAccountType":"StandardSSD_LRS"
                    },
                    "createOption":"FromImage"
                 }
              },
              "osProfile":{
                 "computerNamePrefix":"myVMSS",
                 "adminUsername":"azureuser",
                 "adminPassword":"myPassword12"
              },
              "networkProfile":{
                 "networkInterfaceConfigurations":[
                    {
                       "name":"myVMSS",
                       "properties":{
                          "primary":true,
                          "enableIPForwarding":true,
                          "ipConfigurations":[
                             {
                                "name":"myVMSS",
                                "properties":{
                                   "subnet":{
                                      "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"
                                   }
                                }
                             }
                          ]
                       }
                    }
                 ]
              }
           },
           "upgradePolicy":{
              "mode":"Manual"
           }
        }
     }
    

    VERSÃO DA API 2017-12-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01' -X PUT -d '{"sku":{"tier":"Standard","capacity":3,"name":"Standard_D1_v2"},"___location":"eastus","identity":{"type":"UserAssigned","identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]},"properties":{"overprovision":true,"virtualMachineProfile":{"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"createOption":"FromImage"}},"osProfile":{"computerNamePrefix":"myVMSS","adminUsername":"azureuser","adminPassword":"myPassword12"},"networkProfile":{"networkInterfaceConfigurations":[{"name":"myVMSS","properties":{"primary":true,"enableIPForwarding":true,"ipConfigurations":[{"name":"myVMSS","properties":{"subnet":{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"}}}]}}]}},"upgradePolicy":{"mode":"Manual"}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
    
    PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01 HTTP/1.1
    

    Cabeçalhos de solicitação

    Cabeçalho da solicitação Descrição
    Tipo de Conteúdo Obrigatório. Defina como application/json.
    Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.

    Corpo da solicitação

     {
        "sku":{
           "tier":"Standard",
           "capacity":3,
           "name":"Standard_D1_v2"
        },
        "___location":"eastus",
        "identity":{
           "type":"UserAssigned",
           "identityIds":[
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"
           ]
        },
        "properties":{
           "overprovision":true,
           "virtualMachineProfile":{
              "storageProfile":{
                 "imageReference":{
                    "sku":"2016-Datacenter",
                    "publisher":"MicrosoftWindowsServer",
                    "version":"latest",
                    "offer":"WindowsServer"
                 },
                 "osDisk":{
                    "caching":"ReadWrite",
                    "managedDisk":{
                       "storageAccountType":"StandardSSD_LRS"
                    },
                    "createOption":"FromImage"
                 }
              },
              "osProfile":{
                 "computerNamePrefix":"myVMSS",
                 "adminUsername":"azureuser",
                 "adminPassword":"myPassword12"
              },
              "networkProfile":{
                 "networkInterfaceConfigurations":[
                    {
                       "name":"myVMSS",
                       "properties":{
                          "primary":true,
                          "enableIPForwarding":true,
                          "ipConfigurations":[
                             {
                                "name":"myVMSS",
                                "properties":{
                                   "subnet":{
                                      "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"
                                   }
                                }
                             }
                          ]
                       }
                    }
                 ]
              }
           },
           "upgradePolicy":{
              "mode":"Manual"
           }
        }
     }
    

Atribuir uma identidade gerenciada atribuída pelo usuário a um conjunto de dimensionamento de máquinas virtuais do Azure existente

  1. Recupere um token de acesso de portador, que será usado na próxima etapa no cabeçalho de autorização para criar o conjunto de dimensionamento de máquinas virtuais com uma identidade gerenciada atribuída pelo sistema.

    az account get-access-token
    
  2. Crie uma identidade gerenciada atribuída pelo usuário usando as instruções encontradas aqui, Crie uma identidade gerenciada atribuída pelo usuário.

  3. Para garantir que você não exclua nenhuma identidade gerenciada atribuída ao usuário ou ao sistema existente que esteja atribuída ao conjunto de dimensionamento de máquinas virtuais, será necessário listar os tipos de identidade atribuída ao conjunto de dimensionamento de máquinas virtuais, usando o seguinte comando CURL. Se houver identidades gerenciadas atribuídas ao conjunto de dimensionamento de máquinas virtuais, elas serão listadas no valor identity.

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>"
    
    GET https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01 HTTP/1.1
    

    Cabeçalhos de solicitação

    Cabeçalho da solicitação Descrição
    Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.
  4. Se você não tiver nenhuma identidade gerenciada atribuída a usuários ou sistemas para o seu conjunto de dimensionamento de máquinas virtuais, use o seguinte comando CURL para chamar o endpoint REST do Azure Resource Manager para atribuir a primeira identidade gerenciada atribuída a um usuário ao conjunto de dimensionamento de máquinas virtuais. Se houver alguma identidade gerenciada atribuída ao usuário ou ao sistema ao conjunto de dimensionamento de máquinas virtuais, passe para a etapa 5 que mostra como adicionar várias identidades gerenciadas atribuídas ao usuário a um conjunto de dimensionamento de máquinas virtuais, mantendo a identidade gerenciada atribuída ao sistema.

    O exemplo a seguir atribui uma identidade gerenciada atribuída ao usuário, ID1, a um conjunto de dimensionamento de máquinas virtuais nomeado myVMSS no grupo de recursos myResourceGroup. Substitua <ACCESS TOKEN> pelo valor recebido na etapa anterior quando você solicitou um token de acesso de portador e o valor <SUBSCRIPTION ID> apropriado para seu ambiente.

    VERSÃO DA API 2018-06-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-12-01' -X PATCH -d '{"identity":{"type":"userAssigned", "userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{}}}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-12-01 HTTP/1.1
    

    Cabeçalhos de solicitação

    Cabeçalho da solicitação Descrição
    Tipo de Conteúdo Obrigatório. Defina como application/json.
    Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.

    Corpo da solicitação

     {
        "identity":{
           "type":"userAssigned",
           "userAssignedIdentities":{
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{
    
              }
           }
        }
     }
    

    VERSÃO DA API 2017-12-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01' -X PATCH -d '{"identity":{"type":"userAssigned", "identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01 HTTP/1.1
    

    Cabeçalhos de solicitação

    Cabeçalho da solicitação Descrição
    Tipo de Conteúdo Obrigatório. Defina como application/json.
    Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.

    Corpo da solicitação

     {
        "identity":{
           "type":"userAssigned",
           "identityIds":[
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"
           ]
        }
     }
    
  5. Se você tiver uma identidade gerenciada atribuída pelo usuário ou pelo sistema atribuída ao conjunto de dimensionamento de máquinas virtuais:

    VERSÃO DA API 2018-06-01

    Adicione a identidade gerenciada atribuída pelo usuário ao valor de dicionário userAssignedIdentities.

    Por exemplo, se você tiver uma identidade gerenciada atribuída pelo sistema e a identidade atribuída pelo usuário ID1 atualmente atribuída ao conjunto de dimensionamento de máquinas virtuais e quiser adicionar a identidade gerenciada atribuída pelo usuário ID2 a ele:

    curl  'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned, UserAssigned", "userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{},"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":{}}}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
    

    Cabeçalhos de solicitação

    Cabeçalho da solicitação Descrição
    Tipo de Conteúdo Obrigatório. Defina como application/json.
    Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.

    Corpo da solicitação

     {
        "identity":{
           "type":"SystemAssigned, UserAssigned",
           "userAssignedIdentities":{
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{
    
              },
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":{
    
              }
           }
        }
     }
    

    VERSÃO DA API 2017-12-01

    Reter as identidades gerenciadas atribuídas pelo usuário que você deseja manter no valor da matriz identityIds ao adicionar a nova identidade gerenciada atribuída pelo usuário.

    Por exemplo, se você tiver uma identidade atribuída pelo sistema e a identidade gerenciada atribuída pelo usuário ID1 atualmente atribuída ao conjunto de dimensionamento de máquinas virtuais e quiser adicionar a identidade gerenciada atribuída pelo usuário ID2 a ele:

    curl  'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01' -X PATCH -d '{"identity":{"type":"SystemAssigned, UserAssigned", "identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1","/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2"]}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01 HTTP/1.1
    

    Cabeçalhos de solicitação

    Cabeçalho da solicitação Descrição
    Tipo de Conteúdo Obrigatório. Defina como application/json.
    Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.

    Corpo da solicitação

     {
        "identity":{
           "type":"SystemAssigned, UserAssigned",
           "identityIds":[
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1",
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2"
           ]
        }
     }
    

Remover uma identidade gerenciada atribuída a um usuário de um conjunto de escalas de máquinas virtuais

  1. Recupere um token de acesso de portador, que será usado na próxima etapa no cabeçalho de autorização para criar o conjunto de dimensionamento de máquinas virtuais com uma identidade gerenciada atribuída pelo sistema.

    az account get-access-token
    
  2. Para garantir que você não exclua nenhuma identidade gerenciada atribuída ao usuário que gostaria de manter atribuída ao conjunto de dimensionamento de máquinas virtuais nem remover a identidade gerenciada atribuída ao sistema, é necessário listar as identidades gerenciadas usando os seguintes comandos CURL:

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>" 
    
    GET https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01 HTTP/1.1
    

    Cabeçalhos de solicitação

    Cabeçalho da solicitação Descrição
    Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.

    Se houver identidades gerenciadas atribuídas à VM, elas serão listadas na resposta no valor identity.

    Por exemplo, se você tiver identidades gerenciadas atribuídas a usuários ID1 e ID2 no conjunto de escalas de máquinas virtuais e deseja manter apenas ID1 atribuído e reter a identidade gerenciada atribuída ao sistema:

    VERSÃO DA API 2018-06-01

    Adicione null à identidade gerenciada atribuída pelo usuário que deseja remover:

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned, UserAssigned", "userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":null}}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
    

    Cabeçalhos de solicitação

    Cabeçalho da solicitação Descrição
    Tipo de Conteúdo Obrigatório. Defina como application/json.
    Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.

    Corpo da solicitação

     {
        "identity":{
           "type":"SystemAssigned, UserAssigned",
           "userAssignedIdentities":{
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":null
           }
        }
     }
    

    VERSÃO DA API 2017-12-01

    Reter apenas as identidades gerenciadas atribuídas pelo usuário que você gostaria de manter na matriz identityIds:

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01' -X PATCH -d '{"identity":{"type":"SystemAssigned,UserAssigned", "identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01 HTTP/1.1
    

    Cabeçalhos de solicitação

    Cabeçalho da solicitação Descrição
    Tipo de Conteúdo Obrigatório. Defina como application/json.
    Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.

    Corpo da solicitação

     {
        "identity":{
           "type":"SystemAssigned,UserAssigned",
           "identityIds":[
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"
           ]
        }
     }
    

Se o conjunto de dimensionamento de máquinas virtuais tiver identidades gerenciadas atribuídas ao sistema e atribuídas ao usuário, você poderá remover todas as identidades gerenciadas atribuídas ao usuário, alternando para usar somente atribuídas ao sistema usando o seguinte comando:

curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned"}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1

Cabeçalhos de solicitação

Cabeçalho da solicitação Descrição
Tipo de Conteúdo Obrigatório. Defina como application/json.
Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.

Corpo da solicitação

{
   "identity":{
      "type":"SystemAssigned"
   }
}

Se o conjunto de dimensionamento de máquinas virtuais tiver apenas identidades gerenciadas atribuídas ao usuário e você quer remover todas elas, use o seguinte comando:

curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"None"}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1

Cabeçalhos de solicitação

Cabeçalho da solicitação Descrição
Tipo de Conteúdo Obrigatório. Defina como application/json.
Autorização Obrigatório. Defina-o como um token de acesso Bearer válido.

Corpo da solicitação

{
   "identity":{
      "type":"None"
   }
}

Próximas etapas

Para obter informações sobre como criar, listar ou excluir identidades gerenciadas atribuídas pelo usuário usando o REST, consulte: