Configurar identidades gerenciadas para recursos do Azure em um conjunto de dimensionamento de máquina virtual
Identidades gerenciadas para recursos do Azure é um recurso do Microsoft Entra ID. 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.
As identidades geridas para os recursos do Azure proporcionam aos recursos do Azure uma identidade gerida automaticamente no Microsoft Entra ID. Pode utilizar esta identidade para se autenticar em qualquer serviço que suporte a autenticação do Microsoft Entra sem ter credenciais no código.
Para obter informações sobre a definição e os detalhes da Política do Azure, consulte Usar a Política do Azure para atribuir identidades gerenciadas (visualização).
Neste artigo, usando o portal do Azure, você aprenderá a executar as seguintes identidades gerenciadas para operações de recursos do Azure em um conjunto de escala de máquina virtual:
Se você não estiver familiarizado com identidades gerenciadas para recursos do Azure, confira a seção de visão geral.
Se ainda não tem uma conta do Azure, inscreva-se numa conta gratuita antes de continuar.
Para executar as operações de gerenciamento neste artigo, sua conta precisa das seguintes atribuições de função do Azure:
Nota
Não são necessárias atribuições adicionais de função de diretório do Microsoft Entra.
- Colaborador de Máquina Virtual para habilitar e remover a identidade gerenciada atribuída ao sistema de um conjunto de dimensionamento de máquina virtual.
Identidade gerida 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 ao sistema durante a criação de um conjunto de dimensionamento de máquina virtual
Atualmente, o portal do Azure não oferece suporte à habilitação da identidade gerenciada atribuída ao sistema durante a criação de um conjunto de dimensionamento de máquina virtual. Em vez disso, consulte o seguinte artigo de início rápido de criação de conjunto de escala de máquina virtual para primeiro criar um conjunto de dimensionamento de máquina virtual e, em seguida, prossiga para a próxima seção para obter detalhes sobre como habilitar a identidade gerenciada atribuída ao sistema em um conjunto de dimensionamento de máquina virtual:
Habilitar a identidade gerenciada atribuída ao sistema em um conjunto de dimensionamento de máquina virtual existente
Gorjeta
As etapas neste artigo podem variar ligeiramente com base no portal a partir do qual você começou.
Para habilitar a identidade gerenciada atribuída ao sistema em um conjunto de escala de máquina virtual que foi originalmente provisionado sem ela:
Entre no portal do Azure usando uma conta associada à assinatura do Azure que contém o conjunto de dimensionamento da máquina virtual.
Navegue até o conjunto de dimensionamento de máquina virtual desejado.
Em Sistema atribuído, Estado, selecione Ativado e, em seguida, clique em Guardar:
Remover identidade gerenciada atribuída ao sistema de um conjunto de dimensionamento de máquina virtual
Se você tiver um conjunto de dimensionamento de máquina virtual que não precise mais de uma identidade gerenciada atribuída ao sistema:
Entre no portal do Azure usando uma conta associada à assinatura do Azure que contém o conjunto de dimensionamento da máquina virtual. Verifique também se sua conta pertence a uma função que lhe dá permissões de gravação no conjunto de escala da máquina virtual.
Navegue até o conjunto de dimensionamento de máquina virtual desejado.
Em Sistema atribuído, Estado, selecione Desativado e, em seguida, clique em Guardar:
Identidade gerida atribuída pelo utilizador
Nesta seção, você aprenderá a adicionar e remover uma identidade gerenciada atribuída pelo usuário de um conjunto de dimensionamento de máquina virtual 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áquina virtual
Atualmente, o portal do Azure não oferece suporte à atribuição de uma identidade gerenciada atribuída pelo usuário durante a criação de um conjunto de escala de máquina virtual. Em vez disso, consulte o seguinte artigo de início rápido de criação de conjunto de escala de máquina virtual para primeiro criar um conjunto de dimensionamento de máquina virtual e, em seguida, prossiga para a próxima seção para obter detalhes sobre como atribuir uma identidade gerenciada atribuída pelo usuário a ele:
Atribuir uma identidade gerenciada atribuída pelo usuário a um conjunto de dimensionamento de máquina virtual existente
Entre no portal do Azure usando uma conta associada à assinatura do Azure que contém o conjunto de dimensionamento da máquina virtual.
Navegue até o conjunto de escala de máquina virtual desejado e clique em Identidade, Usuário atribuído e, em seguida, em +Adicionar.
Clique na identidade atribuída pelo usuário que você deseja adicionar ao conjunto de dimensionamento da máquina virtual e clique em Adicionar.
Remover uma identidade gerenciada atribuída pelo usuário de um conjunto de dimensionamento de máquina virtual
Entre no portal do Azure usando uma conta associada à assinatura do Azure que contém a VM.
Navegue até o conjunto de escala de máquina virtual desejado e clique em Identidade, Usuário atribuído, o nome da identidade gerenciada atribuída pelo usuário que você deseja excluir e, em seguida, clique em Remover (clique em Sim no painel de confirmação).
Próximos passos
- Usando o portal do Azure, conceda a um conjunto de dimensionamento de máquina virtual do Azure acesso gerenciado de identidade a outro recurso do Azure.
Neste artigo, você aprenderá a executar as seguintes identidades gerenciadas para operações de recursos do Azure em um conjunto de escala de máquina virtual do Azure, usando a CLI do Azure:
- Habilitar e desabilitar a identidade gerenciada atribuída ao sistema em um conjunto de dimensionamento de máquina virtual do Azure
- Adicionar e remover uma identidade gerenciada atribuída pelo usuário em um conjunto de escala de máquina virtual do Azure
Se ainda não tem uma conta do Azure, inscreva-se numa conta gratuita antes de continuar.
Pré-requisitos
Se você não estiver familiarizado com identidades gerenciadas para recursos do Azure, consulte O que são identidades gerenciadas para recursos do Azure?. Para saber mais sobre os tipos de identidade gerenciada atribuídos pelo sistema e pelo usuário, consulte Tipos de identidade gerenciada.
Para executar as operações de gerenciamento neste artigo, sua conta precisa das seguintes atribuições de controle de acesso baseadas em função do Azure:
Colaborador de Máquina Virtual para criar um conjunto de dimensionamento de máquina virtual e habilitar e remover identidade gerenciada atribuída ao sistema e/ou usuário de um conjunto de dimensionamento de máquina virtual.
Função de Colaborador de Identidade Gerenciada para criar uma identidade gerenciada atribuída pelo usuário.
Função de Operador de Identidade Gerenciada para atribuir e remover uma identidade gerenciada atribuída pelo usuário de e para um conjunto de dimensionamento de máquina virtual.
Nota
Não são necessárias atribuições adicionais de função de diretório do Microsoft Entra.
Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, consulte Guia de início rápido para Bash no Azure Cloud Shell.
Se preferir executar comandos de referência da CLI localmente, instale a CLI do Azure. Se estiver a utilizar o Windows ou macOS, considere executar a CLI do Azure num contentor Docker. Para obter mais informações, consulte Como executar a CLI do Azure em um contêiner do Docker.
Se estiver a utilizar uma instalação local, inicie sessão no CLI do Azure ao utilizar o comando az login. Para concluir o processo de autenticação, siga os passos apresentados no seu terminal. Para outras opções de entrada, consulte Entrar com a CLI do Azure.
Quando solicitado, instale a extensão da CLI do Azure na primeira utilização. Para obter mais informações sobre as extensões, veja Utilizar extensões com o CLI do Azure.
Execute o comando az version para localizar a versão e as bibliotecas dependentes instaladas. Para atualizar para a versão mais recente, execute o comando az upgrade.
Identidade gerida atribuída pelo sistema
Nesta seção, você aprenderá a habilitar e desabilitar a identidade gerenciada atribuída ao sistema para um conjunto de dimensionamento de máquina virtual do Azure usando a CLI do Azure.
Habilitar a identidade gerenciada atribuída ao sistema durante a criação de um conjunto de escala de máquina virtual do Azure
Para criar um conjunto de dimensionamento de máquina virtual com a identidade gerenciada atribuída ao sistema habilitada:
Crie um grupo de recursos para contenção e implantação de seu conjunto de escala de máquina virtual e seus recursos relacionados, usando az group create. Você pode pular esta etapa se já tiver um grupo de recursos que gostaria de usar:
az group create --name myResourceGroup --location westus
Crie um conjunto de dimensionamento de máquina virtual. O exemplo a seguir cria um conjunto de escala de máquina virtual chamado myVMSS com uma identidade gerenciada atribuída ao sistema, conforme solicitado pelo
--assign-identity
parâmetro, com o especificado--role
e--scope
. Os parâmetros--admin-username
e--admin-password
especificam o nome e a palavra-passe da conta de utilizador administrativo para início de sessão na máquina virtual. Atualize estes valores conforme adequado para o 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 ao sistema em um conjunto de escala de máquina virtual do Azure existente
Se você precisar Habilitar a identidade gerenciada atribuída ao sistema em um conjunto de escala de máquina virtual do Azure existente:
az vmss identity assign -g myResourceGroup -n myVMSS
Desabilitar a identidade gerenciada atribuída ao sistema a partir de um conjunto de dimensionamento de máquina virtual do Azure
Se você tiver um conjunto de dimensionamento de máquina virtual que não precisa mais da identidade gerenciada atribuída ao sistema, mas ainda precisa de identidades gerenciadas atribuídas pelo usuário, use o seguinte comando:
az vmss update -n myVM -g myResourceGroup --set identity.type='UserAssigned'
Se você tiver uma máquina virtual que não precisa mais de identidade gerenciada atribuída ao sistema e não tiver identidades gerenciadas atribuídas pelo usuário, use o seguinte comando:
Nota
O valor none
diferencia maiúsculas de minúsculas. Deve ser minúscula.
az vmss update -n myVM -g myResourceGroup --set identity.type="none"
Identidade gerida atribuída pelo utilizador
Nesta seção, você aprenderá a habilitar e remover uma identidade gerenciada atribuída pelo 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áquina virtual
Esta seção orienta você pela criação de um conjunto de escala de máquina virtual e atribuição de uma identidade gerenciada atribuída pelo usuário ao conjunto de dimensionamento de máquina virtual. Se você já tiver um conjunto de dimensionamento de máquina virtual que deseja usar, ignore esta seção e prossiga para a próxima.
Pode ignorar este passo se já tiver um grupo de recursos que gostaria de utilizar. Crie um grupo de recursos para contenção e implantação de sua identidade gerenciada atribuída pelo usuário, usando az group create. Certifique-se de que substitui os valores de parâmetros
<RESOURCE GROUP>
e<LOCATION>
pelos seus próprios valores. :az group create --name <RESOURCE GROUP> --location <LOCATION>
Crie uma identidade gerida atribuída pelo utilizador com az identity create. O parâmetro
-g
especifica o grupo de recursos onde a identidade gerida atribuída pelo utilizador é criada e o parâmetro-n
especifica o respetivo nome. Certifique-se de que substitui os valores de parâmetros<RESOURCE GROUP>
e<USER ASSIGNED IDENTITY NAME>
pelos seus próprios valores:Importante
Quando você cria 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, hífenes (-) e sublinhados (_). Para que a atribuição a uma máquina virtual ou a uma escala de máquina virtual funcione corretamente, o nome é limitado a 24 caracteres. Para obter mais informações, veja FAQs e problemas conhecidos.
az identity create -g <RESOURCE GROUP> -n <USER ASSIGNED IDENTITY NAME>
A resposta contém detalhes para a identidade gerenciada atribuída pelo usuário criada, semelhante à seguinte. O valor do recurso
id
atribuído à identidade gerenciada atribuída pelo 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/<SUBSCRIPTON 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" }
Crie um conjunto de dimensionamento de máquina virtual. O exemplo a seguir cria um conjunto de escala de máquina virtual associado à nova identidade gerenciada atribuída pelo usuário, conforme especificado pelo
--assign-identity
parâmetro, com o especificado--role
e--scope
. Certifique-se de substituir os<RESOURCE GROUP>
valores ,<VMSS NAME>
, ,<PASSWORD>
<USER NAME>
,<ROLE>
<USER ASSIGNED IDENTITY>
, e<SUBSCRIPTION>
parâmetro por seus próprios 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áquina virtual existente
Crie uma identidade gerida atribuída pelo utilizador com az identity create. O parâmetro
-g
especifica o grupo de recursos onde a identidade gerida atribuída pelo utilizador é criada e o parâmetro-n
especifica o respetivo nome. Certifique-se de que substitui os valores de parâmetros<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 para a identidade gerenciada atribuída pelo usuário criada, semelhante à 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/<SUBSCRIPTON 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" }
Atribua a identidade gerenciada atribuída pelo usuário ao seu conjunto de dimensionamento de máquina virtual. 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>
é a propriedade de recursoname
da identidade atribuída pelo usuário, conforme criada 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 pelo usuário de um conjunto de escala de máquina virtual do Azure
Para remover uma identidade gerenciada atribuída pelo usuário de um conjunto de dimensionamento de máquina virtual, use az vmss identity remove
. Se esta for a única identidade gerenciada atribuída pelo usuário atribuída ao conjunto de escala da máquina virtual, UserAssigned
será removida do valor do tipo de identidade. 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>
é a propriedade da name
identidade gerenciada atribuída pelo usuário, que pode ser encontrada na seção identity do conjunto de escala da máquina virtual usando az vmss identity show
:
az vmss identity remove -g <RESOURCE GROUP> -n <VIRTUAL MACHINE SCALE SET NAME> --identities <USER ASSIGNED IDENTITY>
Se o conjunto de dimensionamento da máquina virtual não tiver uma identidade gerenciada atribuída ao sistema e você quiser remover todas as identidades gerenciadas atribuídas pelo usuário dele, use o seguinte comando:
Nota
O valor none
diferencia maiúsculas de minúsculas. Deve ser minúscula.
az vmss update -n myVMSS -g myResourceGroup --set identity.type="none" identity.userAssignedIdentities=null
Se o conjunto de dimensionamento da máquina virtual tiver identidades gerenciadas atribuídas pelo sistema e pelo usuário, você poderá remover todas as identidades atribuídas pelo usuário alternando para usar apenas a identidade gerenciada atribuída pelo sistema. Utilize o seguinte comando:
az vmss update -n myVMSS -g myResourceGroup --set identity.type='SystemAssigned' identity.userAssignedIdentities=null
Próximos passos
- Visão geral das identidades gerenciadas para recursos do Azure
- Para obter o Guia de início rápido completo de criação de conjunto de escala de máquina virtual do Azure, consulte Criar um conjunto de escala de máquina virtual com CLI
Neste artigo, usando o PowerShell, você aprenderá a 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 ao sistema em um conjunto de dimensionamento de máquina virtual
- Adicionar e remover uma identidade gerenciada atribuída pelo usuário em um conjunto de dimensionamento de máquina virtual
Nota
Recomendamos que utilize o módulo do Azure Az PowerShell para interagir com o Azure. Veja Instalar o Azure PowerShell para começar. Para saber como migrar para o módulo do Az PowerShell, veja 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. Certifique-se de revisar a diferença entre uma identidade atribuída pelo sistema e gerenciada pelo usuário.
Se ainda não tem uma conta do Azure, inscreva-se numa conta gratuita antes de continuar.
Para executar as operações de gerenciamento neste artigo, sua conta precisa das seguintes atribuições de controle de acesso baseadas em função do Azure:
Nota
Não são necessárias atribuições adicionais de função de diretório do Microsoft Entra.
- Colaborador de Máquina Virtual para criar um conjunto de dimensionamento de máquina virtual e habilitar e remover identidade gerenciada atribuída pelo sistema e/ou atribuída pelo usuário de um conjunto de dimensionamento de máquina virtual.
- Função de Colaborador de Identidade Gerenciada para criar uma identidade gerenciada atribuída pelo usuário.
- Função de Operador de Identidade Gerenciada para atribuir e remover uma identidade gerenciada atribuída pelo usuário de e para um conjunto de dimensionamento de máquina virtual.
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 scripts localmente instalando a versão mais recente do Azure PowerShell e, em seguida, entre no Azure usando
Connect-AzAccount
o .
Identidade gerida atribuída pelo sistema
Nesta seção, você aprenderá a habilitar e remover uma identidade gerenciada atribuída ao sistema usando o Azure PowerShell.
Habilitar a identidade gerenciada atribuída ao sistema durante a criação de um conjunto de escala de máquina virtual do Azure
Para criar um conjunto de dimensionamento de máquina virtual com a identidade gerenciada atribuída ao sistema habilitada:
Consulte o Exemplo 1 no artigo de referência do cmdlet New-AzVmssConfig para criar um conjunto de dimensionamento de máquina virtual com uma identidade gerenciada atribuída ao sistema. Adicione o parâmetro
-IdentityType SystemAssigned
aoNew-AzVmssConfig
cmdlet:$VMSS = New-AzVmssConfig -Location $Loc -SkuCapacity 2 -SkuName "Standard_A0" -UpgradePolicyMode "Automatic" -NetworkInterfaceConfiguration $NetCfg -IdentityType SystemAssigned`
Habilitar a identidade gerenciada atribuída ao sistema em um conjunto de escala de máquina virtual do Azure existente
Se você precisar habilitar uma identidade gerenciada atribuída ao sistema em um conjunto de escala de máquina virtual do Azure existente:
Verifique se a conta do Azure que você está usando pertence a uma função que lhe dá permissões de gravação no conjunto de escala da máquina virtual, como "Colaborador de Máquina Virtual".
Recupere as propriedades do conjunto de escala da máquina virtual usando o
Get-AzVmss
cmdlet. Em seguida, para habilitar uma identidade gerenciada atribuída ao sistema, use a-IdentityType
opção no cmdlet Update-AzVmss :Update-AzVmss -ResourceGroupName myResourceGroup -Name -myVmss -IdentityType "SystemAssigned"
Desabilitar a identidade gerenciada atribuída ao sistema de um conjunto de dimensionamento de máquina virtual do Azure
Se você tiver um conjunto de dimensionamento de máquina virtual que não precisa mais da identidade gerenciada atribuída ao sistema, mas ainda precisa de identidades gerenciadas atribuídas pelo usuário, use o seguinte cmdlet:
Verifique se sua conta pertence a uma função que lhe dá permissões de gravação no conjunto de escala da máquina virtual, como "Colaborador de Máquina Virtual".
Execute o seguinte cmdlet:
Update-AzVmss -ResourceGroupName myResourceGroup -Name myVmss -IdentityType "UserAssigned"
Se você tiver um conjunto de dimensionamento de máquina virtual que não precise mais de identidade gerenciada atribuída ao 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 gerida atribuída pelo utilizador
Nesta seção, você aprenderá a 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 escala de máquina virtual do Azure
Atualmente, não há suporte para a criação de um novo conjunto de dimensionamento de máquina virtual com uma identidade gerenciada atribuída pelo usuário por meio do PowerShell. Consulte a próxima seção sobre como adicionar uma identidade gerenciada atribuída pelo usuário a um conjunto de escala de máquina virtual existente. Volte mais tarde para obter atualizações.
Atribuir uma identidade gerenciada atribuída pelo usuário a um conjunto de escala de máquina virtual do Azure existente
Para atribuir uma identidade gerenciada atribuída pelo usuário a um conjunto de escala de máquina virtual do Azure existente:
Verifique se sua conta pertence a uma função que lhe dá permissões de gravação no conjunto de escala da máquina virtual, como "Colaborador de Máquina Virtual".
Recupere as propriedades do conjunto de escala da máquina virtual usando o
Get-AzVM
cmdlet. Em seguida, para atribuir uma identidade gerenciada atribuída pelo usuário ao conjunto de dimensionamento da máquina virtual, use o-IdentityType
cmdlet Update-AzVmss e-IdentityID
ative a opção. Substitua<VM NAME>
,<SUBSCRIPTION ID>
,<RESROURCE GROUP>
,<USER ASSIGNED ID1>
, porUSER ASSIGNED ID2
seus próprios valores.Importante
Quando você cria 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, hífenes (-) e sublinhados (_). Para que a atribuição a uma máquina virtual ou a uma escala de máquina virtual funcione corretamente, o nome é limitado a 24 caracteres. 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>"
Remover uma identidade gerenciada atribuída pelo usuário de um conjunto de escala de máquina virtual do Azure
Se o conjunto de dimensionamento da máquina virtual tiver várias identidades gerenciadas atribuídas pelo usuário, você poderá remover todas, exceto a última, usando os comandos a seguir. 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>
é a propriedade name da identidade gerenciada atribuída pelo usuário, que deve permanecer no conjunto de escala da máquina virtual. Essas informações podem ser encontradas na seção de identidade do conjunto de dimensionamento de máquina virtual usando az vmss show
:
Update-AzVmss -ResourceGroupName myResourceGroup -Name myVmss -IdentityType UserAssigned -IdentityID "<USER ASSIGNED IDENTITY NAME>"
Se o conjunto de dimensionamento da máquina virtual não tiver uma identidade gerenciada atribuída ao sistema e você quiser remover todas as identidades gerenciadas atribuídas pelo usuário dele, use o seguinte comando:
Update-AzVmss -ResourceGroupName myResourceGroup -Name myVmss -IdentityType None
Se o conjunto de dimensionamento da máquina virtual tiver identidades gerenciadas atribuídas pelo sistema e pelo usuário, você poderá remover todas as identidades gerenciadas atribuídas pelo usuário alternando para usar apenas a identidade gerenciada atribuída pelo sistema.
Update-AzVmss -ResourceGroupName myResourceGroup -Name myVmss -IdentityType "SystemAssigned"
Próximos passos
Visão geral das identidades gerenciadas para recursos do Azure
Para obter os inícios rápidos completos de criação de VM do Azure, consulte:
Neste artigo, você aprenderá a executar as seguintes identidades gerenciadas para operações de recursos do Azure em um conjunto de escala de máquina virtual do Azure, usando o modelo de implantação do Azure Resource Manager:
- Habilitar e desabilitar a identidade gerenciada atribuída ao sistema em um conjunto de dimensionamento de máquina virtual do Azure
- Adicionar e remover uma identidade gerenciada atribuída pelo usuário em um conjunto de escala de máquina virtual do Azure
Pré-requisitos
Se você não estiver familiarizado com identidades gerenciadas para recursos do Azure, confira a seção de visão geral. Certifique-se de revisar a diferença entre uma identidade gerenciada atribuída pelo sistema e atribuída pelo usuário.
Se ainda não tem uma conta do Azure, inscreva-se numa conta gratuita antes de continuar.
Para executar as operações de gerenciamento neste artigo, sua conta precisa das seguintes atribuições de controle de acesso baseadas em função do Azure:
Nota
Não são necessárias atribuições adicionais de função de diretório do Microsoft Entra.
- Colaborador de Máquina Virtual para criar um conjunto de dimensionamento de máquina virtual e habilitar e remover identidade gerenciada atribuída ao sistema e/ou usuário de um conjunto de dimensionamento de máquina virtual.
- Função de Colaborador de Identidade Gerenciada para criar uma identidade gerenciada atribuída pelo usuário.
- Função de Operador de Identidade Gerenciada para atribuir e remover uma identidade gerenciada atribuída pelo usuário de e para um conjunto de dimensionamento de máquina virtual.
Modelos do Azure Resource Manager
Tal como acontece com o portal e os scripts do Azure, os modelos do Azure Resource Manager fornecem a capacidade de implementar recursos novos ou modificados definidos por um grupo de recursos do Azure. Várias opções estão disponíveis para edição e implantação de modelos, tanto locais quanto baseadas em portal, incluindo:
- Usando um modelo personalizado do Azure Marketplace, que permite criar um modelo do zero ou baseá-lo em um modelo comum ou de início rápido existente.
- Derivando de um grupo de recursos existente, exportando um modelo da implantação original ou do estado atual da implantação.
- Usando um editor JSON local (como VS Code) e, em seguida, carregando e implantando usando PowerShell ou CLI.
- Usando o projeto do Grupo de Recursos do Azure do Visual Studio para criar e implantar um modelo.
Independentemente da opção escolhida, a sintaxe do modelo é 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 para implantações.
Identidade gerida 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 ao sistema durante a criação de um conjunto de dimensionamento de máquinas virtuais ou de um conjunto de dimensionamento de máquina virtual existente
Quer inicie sessão no Azure localmente ou através do portal do Azure, utilize uma conta associada à subscrição do Azure que contém o conjunto de dimensionamento da máquina virtual.
Para habilitar a identidade gerenciada atribuída ao sistema, carregue o modelo em um editor, localize o
Microsoft.Compute/virtualMachinesScaleSets
recurso de interesse na seção de recursos e adicione aidentity
propriedade no mesmo nível da"type": "Microsoft.Compute/virtualMachinesScaleSets"
propriedade. Utilize a seguinte sintaxe:"identity": { "type": "SystemAssigned" }
Quando terminar, as seguintes seções devem ser adicionadas à seção de recursos do seu modelo e devem ser 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 ao sistema de um conjunto de dimensionamento de máquina virtual do Azure
Se você tiver um conjunto de dimensionamento de máquina virtual que não precise mais de uma identidade gerenciada atribuída ao sistema:
Quer inicie sessão no Azure localmente ou através do portal do Azure, utilize uma conta associada à subscrição do Azure que contém o conjunto de dimensionamento da máquina virtual.
Carregue o modelo em um editor e localize o
Microsoft.Compute/virtualMachineScaleSets
recurso de interesse dentro daresources
seção. Se você tiver uma VM que tenha apenas identidade gerenciada atribuída ao sistema, poderá desativá-la alterando o tipo de identidade paraNone
.Microsoft.Compute/virtualMachineScaleSets API versão 2018-06-01
Se sua apiVersion for
2018-06-01
e sua VM tiver identidades gerenciadas atribuídas pelo sistema e pelo usuário, removaSystemAssigned
do tipo de identidade e mantenhaUserAssigned
junto com os valores do dicionário userAssignedIdentities.Microsoft.Compute/virtualMachineScaleSets API versão 2018-06-01
Se sua apiVersion for
2017-12-01
e seu conjunto de dimensionamento de máquina virtual tiver identidades gerenciadas atribuídas ao sistema e ao usuário, removaSystemAssigned
do tipo de identidade e mantenhaUserAssigned
junto com aidentityIds
matriz das identidades gerenciadas atribuídas pelo usuário.O exemplo a seguir mostra como remover uma identidade gerenciada atribuída ao sistema de um conjunto de dimensionamento de máquina virtual sem identidades gerenciadas atribuídas pelo usuário:
{ "name": "[variables('vmssName')]", "apiVersion": "2018-06-01", "location": "[parameters(Location')]", "identity": { "type": "None" } }
Identidade gerida atribuída pelo utilizador
Nesta seção, você atribui uma identidade gerenciada atribuída pelo usuário a um conjunto de dimensionamento de máquina virtual usando o modelo do Azure Resource Manager.
Nota
Para criar uma identidade gerenciada atribuída pelo usuário usando um Modelo do Azure Resource Manager, consulte Criar uma identidade gerenciada atribuída pelo usuário.
Atribuir uma identidade gerenciada atribuída pelo usuário a um conjunto de dimensionamento de máquina virtual
Sob o
resources
elemento , adicione a seguinte entrada para atribuir uma identidade gerenciada atribuída pelo usuário ao seu conjunto de escala de máquina virtual. Certifique-se de substituir<USERASSIGNEDIDENTITY>
pelo nome da identidade gerenciada atribuída ao usuário que você criou.Microsoft.Compute/virtualMachineScaleSets API versão 2018-06-01
Se sua apiVersion for
2018-06-01
, suas identidades gerenciadas atribuídas pelouserAssignedIdentities
usuário serão armazenadas no formato de dicionário e o<USERASSIGNEDIDENTITYNAME>
valor deverá ser armazenado em uma variável definida navariables
seção do seu modelo.{ "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 2017-12-01
Se você
apiVersion
for2017-12-01
ou anterior, suas identidades gerenciadas atribuídas peloidentityIds
usuário serão armazenadas na matriz e o<USERASSIGNEDIDENTITYNAME>
valor deverá ser armazenado em uma variável definida na seção de variáveis do modelo.{ "name": "[variables('vmssName')]", "apiVersion": "2017-03-30", "location": "[parameters(Location')]", "identity": { "type": "userAssigned", "identityIds": [ "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITY>'))]" ] } }
Quando terminar, seu modelo deverá ser semelhante ao seguinte:
Microsoft.Compute/virtualMachineScaleSets API versão 2018-06-01
"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 identidade gerenciada atribuída pelo usuário de um conjunto de dimensionamento de máquina virtual do Azure
Se você tiver um conjunto de dimensionamento de máquina virtual que não precisa mais de uma identidade gerenciada atribuída pelo usuário:
Quer inicie sessão no Azure localmente ou através do portal do Azure, utilize uma conta associada à subscrição do Azure que contém o conjunto de dimensionamento da máquina virtual.
Carregue o modelo em um editor e localize o
Microsoft.Compute/virtualMachineScaleSets
recurso de interesse dentro daresources
seção. Se você tiver um conjunto de dimensionamento de máquina virtual que tenha apenas identidade gerenciada atribuída pelo usuário, poderá desativá-lo alterando o tipo de identidade paraNone
.O exemplo a seguir mostra como remover todas as identidades gerenciadas atribuídas pelo usuário de uma VM sem identidades gerenciadas atribuídas pelo sistema:
{ "name": "[variables('vmssName')]", "apiVersion": "2018-06-01", "location": "[parameters(Location')]", "identity": { "type": "None" } }
Microsoft.Compute/virtualMachineScaleSets API versão 2018-06-01
Para remover uma única identidade gerenciada atribuída pelo usuário de um conjunto de dimensionamento de máquina virtual, remova-a do
userAssignedIdentities
dicionário.Se você tiver uma identidade atribuída ao sistema, mantenha-a
type
no valor abaixo doidentity
valor.Microsoft.Compute/virtualMachineScaleSets API versão 2017-12-01
Para remover uma única identidade gerenciada atribuída pelo usuário de um conjunto de dimensionamento de máquina virtual, remova-a da
identityIds
matriz.Se você tiver uma identidade gerenciada atribuída ao sistema, mantenha-a
type
no valor abaixo doidentity
valor.
Próximos passos
- Visão geral de identidades gerenciadas para recursos do Azure.
Neste artigo, usando CURL para fazer chamadas para o ponto de extremidade REST do Azure Resource Manager, você aprenderá a executar as seguintes identidades gerenciadas para operações de recursos do Azure em um conjunto de escala de máquina virtual:
- Habilitar e desabilitar a identidade gerenciada atribuída ao sistema em um conjunto de dimensionamento de máquina virtual do Azure
- Adicionar e remover uma identidade gerenciada atribuída pelo usuário em um conjunto de escala de máquina virtual do Azure
Se ainda não tem uma conta do Azure, inscreva-se numa conta gratuita antes de continuar.
Pré-requisitos
Se você não estiver familiarizado com identidades gerenciadas para recursos do Azure, consulte O que são identidades gerenciadas para recursos do Azure?. Para saber mais sobre os tipos de identidade gerenciada atribuídos pelo sistema e pelo usuário, consulte Tipos de identidade gerenciada.
Para executar as operações de gerenciamento neste artigo, sua conta precisa das seguintes atribuições de função do Azure:
Colaborador de Máquina Virtual para criar um conjunto de dimensionamento de máquina virtual e habilitar e remover identidade gerenciada atribuída ao sistema e/ou usuário de um conjunto de dimensionamento de máquina virtual.
Função de Colaborador de Identidade Gerenciada para criar uma identidade gerenciada atribuída pelo usuário.
Função de Operador de Identidade Gerenciado para atribuir e remover uma identidade atribuída pelo usuário de e para um conjunto de dimensionamento de máquina virtual.
Nota
Não são necessárias atribuições adicionais de função de diretório do Microsoft Entra.
Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, consulte Guia de início rápido para Bash no Azure Cloud Shell.
Se preferir executar comandos de referência da CLI localmente, instale a CLI do Azure. Se estiver a utilizar o Windows ou macOS, considere executar a CLI do Azure num contentor Docker. Para obter mais informações, consulte Como executar a CLI do Azure em um contêiner do Docker.
Se estiver a utilizar uma instalação local, inicie sessão no CLI do Azure ao utilizar o comando az login. Para concluir o processo de autenticação, siga os passos apresentados no seu terminal. Para outras opções de entrada, consulte Entrar com a CLI do Azure.
Quando solicitado, instale a extensão da CLI do Azure na primeira utilização. Para obter mais informações sobre as extensões, veja Utilizar extensões com o CLI do Azure.
Execute o comando az version para localizar a versão e as bibliotecas dependentes instaladas. Para atualizar para a versão mais recente, execute o comando az upgrade.
Identidade gerida atribuída pelo sistema
Nesta seção, você aprenderá a habilitar e desabilitar a identidade gerenciada atribuída ao sistema em um conjunto de escala de máquina virtual usando CURL para fazer chamadas para o ponto de extremidade REST do Azure Resource Manager.
Habilitar a identidade gerenciada atribuída ao sistema durante a criação de um conjunto de dimensionamento de máquina virtual
Para criar um conjunto de dimensionamento de máquina virtual com a identidade gerenciada atribuída ao sistema habilitada, você precisa criar um conjunto de dimensionamento de máquina virtual e recuperar um token de acesso para usar CURL para chamar o ponto de extremidade do Gerenciador de Recursos com o valor do tipo de identidade gerenciada atribuído pelo sistema.
Crie um grupo de recursos para contenção e implantação de seu conjunto de escala de máquina virtual e seus recursos relacionados, usando az group create. Pode ignorar este passo se já tiver o grupo de recursos que pretende utilizar em vez disso:
az group create --name myResourceGroup --location westus
Crie uma interface de rede para seu conjunto de dimensionamento de máquina virtual:
az network nic create -g myResourceGroup --vnet-name myVnet --subnet mySubnet -n myNic
Recupere um token de acesso ao portador, que você usará na próxima etapa no cabeçalho Autorização para criar seu conjunto de escala de máquina virtual com uma identidade gerenciada atribuída pelo sistema.
az account get-access-token
Usando o Azure Cloud Shell, crie um conjunto de escala de máquina virtual usando CURL para chamar o ponto de extremidade REST do Azure Resource Manager. O exemplo a seguir cria um conjunto de escala de máquina virtual chamado 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 que você recebeu na etapa anterior quando solicitou um token de acesso ao portador e o<SUBSCRIPTION ID>
valor conforme 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 do pedido Description Tipo de conteúdo Obrigatório. Definido como application/json
.Autorização Obrigatório. Defina como um token de acesso válido Bearer
.Corpo do pedido
{ "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 ao sistema em um conjunto de dimensionamento de máquina virtual existente
Para habilitar a identidade gerenciada atribuída ao sistema em um conjunto de escala de máquina virtual existente, você precisa adquirir um token de acesso e, em seguida, usar CURL para chamar o ponto de extremidade REST do Gerenciador de Recursos para atualizar o tipo de identidade.
Recupere um token de acesso ao portador, que você usará na próxima etapa no cabeçalho Autorização para criar seu conjunto de escala de máquina virtual com uma identidade gerenciada atribuída pelo sistema.
az account get-access-token
Use o seguinte comando CURL para chamar o ponto de extremidade REST do Azure Resource Manager para habilitar a identidade gerenciada atribuída ao sistema em seu conjunto de escala de máquina virtual, conforme identificado no corpo da solicitação pelo valor
{"identity":{"type":"SystemAssigned"}
de um conjunto de escala de máquina virtual chamado myVMSS. Substitua<ACCESS TOKEN>
pelo valor que você recebeu na etapa anterior quando solicitou um token de acesso ao portador e o<SUBSCRIPTION ID>
valor conforme apropriado para seu ambiente.Importante
Para garantir que você não exclua nenhuma identidade gerenciada atribuída pelo usuário que esteja atribuída ao conjunto de dimensionamento da máquina virtual, você precisa listar as identidades gerenciadas atribuídas pelo 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 você tiver quaisquer identidades gerenciadas atribuídas pelo usuário atribuídas ao conjunto de escala da máquina virtual, conforme identificado no valor na resposta, pule para aidentity
etapa 3 que mostra como manter as identidades gerenciadas atribuídas pelo usuário enquanto habilita a identidade gerenciada atribuída ao sistema no conjunto de dimensionamento da máquina virtual.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 do pedido Description Tipo de conteúdo Obrigatório. Definido como application/json
.Autorização Obrigatório. Defina como um token de acesso válido Bearer
.Corpo do pedido
{ "identity":{ "type":"SystemAssigned" } }
Para habilitar a
type
identidade gerenciada atribuída ao sistema em um conjunto de dimensionamento de máquina virtual com identidades gerenciadas atribuídas pelo usuário existentes, você precisa adicionarSystemAssigned
ao valor.Por exemplo, se o conjunto de dimensionamento da máquina virtual tiver as identidades
ID1
gerenciadas atribuídas pelo usuário eID2
atribuídas a ele, e você quiser adicionar a identidade gerenciada atribuída ao sistema ao conjunto de dimensionamento da máquina virtual, use a seguinte chamada CURL. Substitua<ACCESS TOKEN>
e<SUBSCRIPTION ID>
com valores apropriados ao seu ambiente.A versão
2018-06-01
da API armazena identidades gerenciadas atribuídas pelo usuário nouserAssignedIdentities
valor em um formato de dicionário, em oposição aoidentityIds
valor em um formato de matriz usado na versão2017-12-01
da API.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 do pedido Description Tipo de conteúdo Obrigatório. Definido como application/json
.Autorização Obrigatório. Defina como um token de acesso válido Bearer
.Corpo do pedido
{ "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 do pedido Description Tipo de conteúdo Obrigatório. Definido como application/json
.Autorização Obrigatório. Defina como um token de acesso válido Bearer
.Corpo do pedido
{ "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 ao sistema a partir de um conjunto de dimensionamento de máquina virtual
Para desabilitar uma identidade atribuída pelo sistema em um conjunto de escala de máquina virtual existente, você precisa adquirir um token de acesso e, em seguida, usar CURL para chamar o ponto de extremidade REST do Gerenciador de Recursos para atualizar o tipo de identidade para None
.
Recupere um token de acesso ao portador, que você usará na próxima etapa no cabeçalho Autorização para criar seu conjunto de escala de máquina virtual com uma identidade gerenciada atribuída pelo sistema.
az account get-access-token
Atualize o conjunto de escala da máquina virtual usando CURL para chamar o ponto de extremidade REST do Azure Resource Manager para desabilitar a identidade gerenciada atribuída ao sistema. O exemplo a seguir desabilita a identidade gerenciada atribuída ao sistema conforme identificada no corpo da solicitação pelo valor
{"identity":{"type":"None"}}
de um conjunto de escala de máquina virtual chamado myVMSS. Substitua<ACCESS TOKEN>
pelo valor que você recebeu na etapa anterior quando solicitou um token de acesso ao portador e o<SUBSCRIPTION ID>
valor conforme apropriado para seu ambiente.Importante
Para garantir que você não exclua nenhuma identidade gerenciada atribuída pelo usuário que esteja atribuída ao conjunto de dimensionamento da máquina virtual, você precisa listar as identidades gerenciadas atribuídas pelo 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 você tiver qualquer identidade gerenciada atribuída pelo usuário atribuída ao conjunto de dimensionamento da máquina virtual, pule para a etapa 3 que mostra como manter as identidades gerenciadas atribuídas pelo usuário enquanto remove a identidade gerenciada atribuída pelo sistema do conjunto de dimensionamento da máquina virtual.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 do pedido Description Tipo de conteúdo Obrigatório. Definido como application/json
.Autorização Obrigatório. Defina como um token de acesso válido Bearer
.Corpo do pedido
{ "identity":{ "type":"None" } }
Para remover a identidade gerenciada atribuída pelo sistema de um conjunto de escala de máquina virtual que tenha identidades gerenciadas atribuídas pelo usuário, remova
SystemAssigned
do valor mantendo o valor e os valores de dicionário se estiver usando aUserAssigned
userAssignedIdentities
API versão 2018-06-01{"identity":{"type:" "}}
. Se você estiver usando a API versão 2017-12-01 ou anterior, mantenha aidentityIds
matriz.
Identidade gerida atribuída pelo utilizador
Nesta seção, você aprenderá a adicionar e remover a identidade gerenciada atribuída pelo usuário em um conjunto de escala de máquina virtual usando CURL para fazer chamadas para o ponto de extremidade 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áquina virtual
Recupere um token de acesso ao portador, que você usará na próxima etapa no cabeçalho Autorização para criar seu conjunto de escala de máquina virtual com uma identidade gerenciada atribuída pelo sistema.
az account get-access-token
Crie uma interface de rede para seu conjunto de dimensionamento de máquina virtual:
az network nic create -g myResourceGroup --vnet-name myVnet --subnet mySubnet -n myNic
Recupere um token de acesso ao portador, que você usará na próxima etapa no cabeçalho Autorização para criar seu conjunto de escala de máquina virtual com uma identidade gerenciada atribuída pelo sistema.
az account get-access-token
Crie uma identidade gerenciada atribuída pelo usuário usando as instruções encontradas aqui: Criar uma identidade gerenciada atribuída pelo usuário.
Crie um conjunto de dimensionamento de máquina virtual usando CURL para chamar o ponto de extremidade REST do Azure Resource Manager. O exemplo a seguir cria um conjunto de escala de máquina virtual chamado myVMSS no grupo de recursos myResourceGroup com uma identidade
ID1
gerenciada atribuída pelo usuário, conforme identificado no corpo da solicitação pelo valor"identity":{"type":"UserAssigned"}
. Substitua<ACCESS TOKEN>
pelo valor que você recebeu na etapa anterior quando solicitou um token de acesso ao portador e o<SUBSCRIPTION ID>
valor conforme 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 do pedido Description Tipo de conteúdo Obrigatório. Definido como application/json
.Autorização Obrigatório. Defina como um token de acesso válido Bearer
.Corpo do pedido
{ "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 do pedido Description Tipo de conteúdo Obrigatório. Definido como application/json
.Autorização Obrigatório. Defina como um token de acesso válido Bearer
.Corpo do pedido
{ "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 escala de máquina virtual do Azure existente
Recupere um token de acesso ao portador, que você usará na próxima etapa no cabeçalho Autorização para criar seu conjunto de escala de máquina virtual com uma identidade gerenciada atribuída pelo sistema.
az account get-access-token
Crie uma identidade gerenciada atribuída pelo usuário usando as instruções encontradas aqui, Criar uma identidade gerenciada atribuída pelo usuário.
Para garantir que você não exclua identidades gerenciadas atribuídas ao usuário ou ao sistema existentes que são atribuídas ao conjunto de escala da máquina virtual, você precisa listar os tipos de identidade atribuídos ao conjunto de escala da máquina virtual usando o seguinte comando CURL. Se você tiver identidades gerenciadas atribuídas ao conjunto de dimensionamento de máquina virtual, elas serão listadas
identity
no valor.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 do pedido Description Autorização Obrigatório. Defina como um token de acesso válido Bearer
.Se você não tiver nenhuma identidade gerenciada atribuída ao usuário ou ao sistema atribuída ao seu conjunto de dimensionamento de máquina virtual, use o seguinte comando CURL para chamar o ponto de extremidade REST do Azure Resource Manager para atribuir a primeira identidade gerenciada atribuída pelo usuário ao conjunto de escala da máquina virtual. Se você tiver uma identidade gerenciada atribuída ao usuário ou ao sistema atribuída ao conjunto de dimensionamento da máquina virtual, pule para a etapa 5 que mostra como adicionar várias identidades gerenciadas atribuídas pelo usuário a um conjunto de dimensionamento de máquina virtual e, ao mesmo tempo, manter a identidade gerenciada atribuída ao sistema.
O exemplo a seguir atribui uma identidade
ID1
gerenciada atribuída pelo usuário a um conjunto de escala de máquina virtual chamado myVMSS no grupo de recursos myResourceGroup. Substitua<ACCESS TOKEN>
pelo valor que você recebeu na etapa anterior quando solicitou um token de acesso ao portador e o<SUBSCRIPTION ID>
valor conforme 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 do pedido Description Tipo de conteúdo Obrigatório. Definido como application/json
.Autorização Obrigatório. Defina como um token de acesso válido Bearer
.Corpo do pedido
{ "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 do pedido Description Tipo de conteúdo Obrigatório. Definido como application/json
.Autorização Obrigatório. Defina como um token de acesso válido Bearer
.Corpo do pedido
{ "identity":{ "type":"userAssigned", "identityIds":[ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1" ] } }
Se você tiver uma identidade gerenciada atribuída pelo usuário ou pelo sistema atribuída ao seu conjunto de dimensionamento de máquina virtual:
VERSÃO DA API 2018-06-01
Adicione a identidade gerenciada atribuída pelo usuário ao valor do
userAssignedIdentities
dicionário.Por exemplo, se você tiver a identidade gerenciada atribuída ao sistema e a identidade
ID1
gerenciada atribuída pelo usuário atualmente atribuída à sua escala de máquina virtual e quiser adicionar a identidadeID2
gerenciada atribuída pelo usuário a ela: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 do pedido Description Tipo de conteúdo Obrigatório. Definido como application/json
.Autorização Obrigatório. Defina como um token de acesso válido Bearer
.Corpo do pedido
{ "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
Mantenha as identidades gerenciadas atribuídas pelo usuário que você gostaria de manter no valor da
identityIds
matriz enquanto adiciona a nova identidade gerenciada atribuída pelo usuário.Por exemplo, se você tiver a identidade atribuída ao sistema e a identidade
ID1
gerenciada atribuída pelo usuário atualmente atribuída ao seu conjunto de dimensionamento de máquina virtual e quiser adicionar a identidadeID2
gerenciada atribuída pelo usuário a ela: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 do pedido Description Tipo de conteúdo Obrigatório. Definido como application/json
.Autorização Obrigatório. Defina como um token de acesso válido Bearer
.Corpo do pedido
{ "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 pelo usuário de um conjunto de dimensionamento de máquina virtual
Recupere um token de acesso ao portador, que você usará na próxima etapa no cabeçalho Autorização para criar seu conjunto de escala de máquina virtual com uma identidade gerenciada atribuída pelo sistema.
az account get-access-token
Para garantir que você não exclua nenhuma identidade gerenciada atribuída pelo usuário existente que gostaria de manter atribuída ao conjunto de escala da máquina virtual ou remova a identidade gerenciada atribuída ao sistema, você precisa listar as identidades gerenciadas usando o seguinte 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>"
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 do pedido Description Autorização Obrigatório. Defina como um token de acesso válido Bearer
.Se você tiver identidades gerenciadas atribuídas à VM, elas serão listadas na resposta no
identity
valor.Por exemplo, se você tiver identidades
ID1
gerenciadas atribuídas pelo usuário eID2
atribuídas ao seu conjunto de dimensionamento de máquina virtual e quiser apenas manterID1
atribuída e manter a identidade gerenciada atribuída ao sistema:VERSÃO DA API 2018-06-01
Adicione
null
à identidade gerenciada atribuída pelo usuário que você gostaria de 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 do pedido Description Tipo de conteúdo Obrigatório. Definido como application/json
.Autorização Obrigatório. Defina como um token de acesso válido Bearer
.Corpo do pedido
{ "identity":{ "type":"SystemAssigned, UserAssigned", "userAssignedIdentities":{ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":null } } }
VERSÃO DA API 2017-12-01
Retenha apenas a(s) identidade(s) gerenciada(s) atribuída(s) ao usuário que você gostaria de manter na
identityIds
matriz: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 do pedido Description Tipo de conteúdo Obrigatório. Definido como application/json
.Autorização Obrigatório. Defina como um token de acesso válido Bearer
.Corpo do pedido
{ "identity":{ "type":"SystemAssigned,UserAssigned", "identityIds":[ "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1" ] } }
Se o conjunto de dimensionamento da máquina virtual tiver identidades gerenciadas atribuídas pelo sistema e pelo usuário, você poderá remover todas as identidades gerenciadas atribuídas pelo usuário alternando para usar somente as identidades atribuídas pelo 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 do pedido | Description |
---|---|
Tipo de conteúdo | Obrigatório. Definido como application/json . |
Autorização | Obrigatório. Defina como um token de acesso válido Bearer . |
Corpo do pedido
{
"identity":{
"type":"SystemAssigned"
}
}
Se o conjunto de dimensionamento da máquina virtual tiver apenas identidades gerenciadas atribuídas pelo usuário e você quiser removê-las todas, 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 do pedido | Description |
---|---|
Tipo de conteúdo | Obrigatório. Definido como application/json . |
Autorização | Obrigatório. Defina como um token de acesso válido Bearer . |
Corpo do pedido
{
"identity":{
"type":"None"
}
}
Próximos passos
Para obter informações sobre como criar, listar ou excluir identidades gerenciadas atribuídas pelo usuário usando REST, consulte: