Konfigurace spravovaných identit pro prostředky Azure na virtuálním počítači Azure pomocí Azure CLI

Spravované identity pro prostředky Azure jsou funkcí služby Azure Active Directory. Každá ze služeb Azure, které podporují spravované identity pro prostředky Azure, se řídí vlastní časovou osou. Než začnete, nezapomeňte zkontrolovat stav dostupnosti spravovaných identit pro váš prostředek a známé problémy.

Spravované identity pro prostředky Azure poskytují službám Azure automaticky spravovanou identitu v Azure Active Directory. Tuto identitu můžete použít k ověření v jakékoli službě, která podporuje ověřování Azure AD, aniž byste ve vašem kódu museli mít přihlašovací údaje.

V tomto článku pomocí Azure CLI se naučíte provádět následující spravované identity pro operace prostředků Azure na virtuálním počítači Azure:

  • Povolení a zakázání spravované identity přiřazené systémem na virtuálním počítači Azure
  • Přidání a odebrání spravované identity přiřazené uživatelem na virtuálním počítači Azure

Pokud ještě nemáte účet Azure, zaregistrujte si bezplatný účet před tím, než budete pokračovat.

Požadavky

  • Použijte prostředí Bash v Azure Cloud Shell. Další informace najdete v tématu Rychlý start azure Cloud Shell – Bash.

    Launch Cloud Shell in a new window

  • Pokud dáváte přednost místnímu spuštění referenčních příkazů rozhraní příkazového řádku, nainstalujte Azure CLI. Pokud používáte Windows nebo macOS, zvažte spuštění Azure CLI v kontejneru Dockeru. Další informace najdete v tématu Jak spustit Azure CLI v kontejneru Dockeru.

    • Pokud používáte místní instalaci, přihlaste se k Azure CLI pomocí příkazu az login. Pokud chcete dokončit proces ověřování, postupujte podle kroků zobrazených na terminálu. Další možnosti přihlášení jsou popsané v tématu Přihlášení pomocí Azure CLI.

    • Po zobrazení výzvy nainstalujte rozšíření Azure CLI při prvním použití. Další informace o rozšířeních najdete v tématu Využití rozšíření v Azure CLI.

    • Spuštěním příkazu az version zjistěte verzi a závislé knihovny, které jsou nainstalované. Pokud chcete upgradovat na nejnovější verzi, spusťte az upgrade.

Spravovaná identita přiřazená systémem

V této části se dozvíte, jak povolit a zakázat spravovanou identitu přiřazenou systémem na virtuálním počítači Azure pomocí Azure CLI.

Povolení spravované identity přiřazené systémem během vytváření virtuálního počítače Azure

Pokud chcete vytvořit virtuální počítač Azure s povolenou spravovanou identitou přiřazenou systémem, váš účet potřebuje přiřazení role Přispěvatel virtuálních počítačů . Nevyžaduje se žádné další přiřazení rolí adresáře Azure AD.

  1. Pomocí příkazu az group create vytvořte skupinu prostředků pro nasazení a uchování virtuálního počítače a souvisejících prostředků. Pokud už máte skupinu prostředků, kterou chcete použít, můžete tento krok přeskočit:

    az group create --name myResourceGroup --location westus
    
  2. Vytvořte virtuální počítač pomocí příkazu az vm create. Následující příklad vytvoří virtuální počítač s názvem myVM se spravovanou identitou přiřazenou systémem podle požadavku parametru --assign-identity . Parametry --admin-username a --admin-password určují uživatelské jméno a heslo účtu správce pro přihlášení k virtuálnímu počítači. Aktualizujte tyto hodnoty odpovídajícím způsobem pro vaše prostředí:

    az vm create --resource-group myResourceGroup --name myVM --image win2016datacenter --generate-ssh-keys --assign-identity --admin-username azureuser --admin-password myPassword12
    

Povolení spravované identity přiřazené systémem na existujícím virtuálním počítači Azure

Pokud chcete povolit spravovanou identitu přiřazenou systémem na virtuálním počítači, váš účet potřebuje přiřazení role Přispěvatel virtuálních počítačů . Nevyžaduje se žádné další přiřazení rolí adresáře Azure AD.

  1. Pokud používáte Azure CLI v místní konzole, nejprve se přihlaste k Azure pomocí příkazu az login. Použijte účet přidružený k předplatnému Azure, které obsahuje virtuální počítač.

    az login
    
  2. Pomocí příkazu az vm identity assign with the identity assign command enable the system-assigned identity to an existing VM:

    az vm identity assign -g myResourceGroup -n myVm
    

Zakázání identity přiřazené systémem z virtuálního počítače Azure

Pokud chcete na virtuálním počítači zakázat spravovanou identitu přiřazenou systémem, váš účet potřebuje přiřazení role Přispěvatel virtuálních počítačů . Nevyžaduje se žádné další přiřazení rolí adresáře Azure AD.

Pokud máte virtuální počítač, který už nepotřebuje identitu přiřazenou systémem, ale stále potřebuje identity přiřazené uživatelem, použijte následující příkaz:

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

Pokud máte virtuální počítač, který už nepotřebuje identitu přiřazenou systémem a nemá žádné identity přiřazené uživatelem, použijte následující příkaz:

Poznámka

none Hodnota je citlivá na malá a velká písmena. Musí to být malá písmena.

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

Spravovaná identita přiřazená uživatelem

V této části se dozvíte, jak přidat a odebrat spravovanou identitu přiřazenou uživatelem z virtuálního počítače Azure pomocí Azure CLI. Pokud vytvoříte spravovanou identitu přiřazenou uživatelem v jiné skupině prostředků než váš virtuální počítač. K jeho přiřazení k virtuálnímu počítači budete muset použít adresu URL spravované identity. Příklad:

--identities "/subscriptions/<SUBID>/resourcegroups/<RESROURCEGROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER_ASSIGNED_ID_NAME>"

Přiřazení spravované identity přiřazené uživatelem při vytváření virtuálního počítače Azure

Pokud chcete přiřadit identitu přiřazenou uživatelem k virtuálnímu počítači během jejího vytváření, váš účet potřebuje přiřazení rolí Přispěvatel virtuálních počítačů a operátor spravovaných identit . Nevyžaduje se žádné další přiřazení rolí adresáře Azure AD.

  1. Tento krok můžete přeskočit, pokud už máte skupinu prostředků, kterou chcete použít. Vytvořte skupinu prostředků pro omezení a nasazení spravované identity přiřazené uživatelem pomocí příkazu az group create. Nezapomeňte nahradit hodnoty parametrů <RESOURCE GROUP> a <LOCATION> vlastními hodnotami. :

    az group create --name <RESOURCE GROUP> --location <LOCATION>
    
  2. Vytvořte spravovanou identitu přiřazenou uživatelem pomocí příkazu az identity create. Parametr -g určuje skupinu prostředků, ve které se spravovaná identita přiřazená uživatelem vytvoří, a parametr -n určuje její název.

    Důležité

    Při vytváření spravovaných identit přiřazených uživatelem se podporují pouze alfanumerické znaky (0–9, a-z a-Z a A-Z) a spojovník (-). Aby přiřazení k virtuálnímu počítači nebo škálovací sadě virtuálních počítačů fungovalo správně, název je omezený na 24 znaků. Další informace najdete v tématu Nejčastější dotazy a známé problémy.

    az identity create -g myResourceGroup -n myUserAssignedIdentity
    

    Odpověď obsahuje podrobnosti o vytvořené spravované identitě přiřazené uživatelem, podobně jako v následujícím příkladu. Hodnota ID prostředku přiřazená spravované identitě přiřazené uživatelem se používá v následujícím kroku.

    {
        "clientId": "73444643-8088-4d70-9532-c3a0fdc190fz",
        "clientSecretUrl": "https://control-westcentralus.identity.azure.net/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<myUserAssignedIdentity>/credentials?tid=5678&oid=9012&aid=73444643-8088-4d70-9532-c3a0fdc190fz",
        "id": "/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>",
        "location": "westcentralus",
        "name": "<USER ASSIGNED IDENTITY NAME>",
        "principalId": "e5fdfdc1-ed84-4d48-8551-fe9fb9dedfll",
        "resourceGroup": "<RESOURCE GROUP>",
        "tags": {},
        "tenantId": "733a8f0e-ec41-4e69-8ad8-971fc4b533bl",
        "type": "Microsoft.ManagedIdentity/userAssignedIdentities"    
    }
    
  3. Vytvořte virtuální počítač pomocí příkazu az vm create. Následující příklad vytvoří virtuální počítač přidružený k nové identitě přiřazené uživatelem, jak je určeno parametrem --assign-identity . Nezapomeňte nahradit hodnoty parametrů <RESOURCE GROUP>, <VM NAME>, <USER NAME>, <PASSWORD> a <USER ASSIGNED IDENTITY NAME> vlastními hodnotami.

    az vm create --resource-group <RESOURCE GROUP> --name <VM NAME> --image UbuntuLTS --admin-username <USER NAME> --admin-password <PASSWORD> --assign-identity <USER ASSIGNED IDENTITY NAME>
    

Přiřazení spravované identity přiřazené uživatelem k existujícímu virtuálnímu počítači Azure

Pokud chcete přiřadit identitu přiřazenou uživatelem k virtuálnímu počítači, váš účet potřebuje přiřazení rolí přispěvatele virtuálních počítačů a operátora spravované identity . Nevyžaduje se žádné další přiřazení rolí adresáře Azure AD.

  1. Vytvořte identitu přiřazenou uživatelem pomocí příkazu az identity create. Parametr -g určuje skupinu prostředků, ve které se vytvoří identita přiřazená uživatelem, a -n parametr určuje jeho název. Nezapomeňte nahradit hodnoty parametrů <RESOURCE GROUP> a <USER ASSIGNED IDENTITY NAME> vlastními hodnotami:

    Důležité

    Vytváření spravovaných identit přiřazených uživatelem se speciálními znaky (tj. podtržítkem) v názvu se v současné době nepodporuje. Použijte alfanumerické znaky. Vraťte se sem a přečtěte si nové informace. Další informace najdete v tématu Nejčastější dotazy a známé problémy.

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

    Odpověď obsahuje podrobnosti o vytvořené spravované identitě přiřazené uživatelem, podobně jako v následujícím příkladu.

    {
      "clientId": "73444643-8088-4d70-9532-c3a0fdc190fz",
      "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=73444643-8088-4d70-9532-c3a0fdc190fz",
      "id": "/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>",
      "location": "westcentralus",
      "name": "<USER ASSIGNED IDENTITY NAME>",
      "principalId": "e5fdfdc1-ed84-4d48-8551-fe9fb9dedfll",
      "resourceGroup": "<RESOURCE GROUP>",
      "tags": {},
      "tenantId": "733a8f0e-ec41-4e69-8ad8-971fc4b533bl",
      "type": "Microsoft.ManagedIdentity/userAssignedIdentities"    
    }
    
  2. Přiřaďte k virtuálnímu počítači identitu přiřazenou uživatelem pomocí příkazu az vm identity assign. Nezapomeňte nahradit hodnoty parametrů <RESOURCE GROUP> a <VM NAME> vlastními hodnotami. Jedná se <USER ASSIGNED IDENTITY NAME> o vlastnost prostředku name spravované identity přiřazené uživatelem, jak je vytvořeno v předchozím kroku. Pokud jste vytvořili spravovanou identitu přiřazenou uživatelem v jiné skupině prostředků než váš virtuální počítač. Budete muset použít adresu URL spravované identity.

    az vm identity assign -g <RESOURCE GROUP> -n <VM NAME> --identities <USER ASSIGNED IDENTITY>
    

Odebrání spravované identity přiřazené uživatelem z virtuálního počítače Azure

Pokud chcete odebrat identitu přiřazenou uživatelem k virtuálnímu počítači, váš účet potřebuje přiřazení role Přispěvatel virtuálních počítačů .

Pokud se jedná o jedinou spravovanou identitu přiřazenou uživatelem přiřazenou virtuálnímu počítači, UserAssigned odebere se z hodnoty typu identity. Nezapomeňte nahradit hodnoty parametrů <RESOURCE GROUP> a <VM NAME> vlastními hodnotami. Bude <USER ASSIGNED IDENTITY> to vlastnost identity name přiřazené uživatelem, kterou najdete v části identity virtuálního počítače pomocí az vm identity show:

az vm identity remove -g <RESOURCE GROUP> -n <VM NAME> --identities <USER ASSIGNED IDENTITY>

Pokud váš virtuální počítač nemá spravovanou identitu přiřazenou systémem a chcete z ní odebrat všechny identity přiřazené uživatelem, použijte následující příkaz:

Poznámka

none Hodnota je citlivá na malá a velká písmena. Musí to být malá písmena.

az vm update -n myVM -g myResourceGroup --set identity.type="none" identity.userAssignedIdentities=null

Pokud má váš virtuální počítač identity přiřazené systémem i identitami přiřazenými uživatelem, můžete všechny identity přiřazené uživatelem odebrat tak, že přepnete na jenom systémově přiřazené. Použijte následující příkaz:

az vm update -n myVM -g myResourceGroup --set identity.type='SystemAssigned' identity.userAssignedIdentities=null 

Další kroky