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í ID Microsoft Entra. 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 Microsoft Entra ID. Tuto identitu můžete použít k ověření ve všech službách, které podporují ověřování Microsoft Entra, aniž byste v kódu měli 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.
Předpoklady
- Pokud neznáte spravované identity pro prostředky Azure, přečtěte si téma Co jsou spravované identity pro prostředky Azure? Další informace o typech spravovaných identit přiřazených systémem a přiřazených uživatelem najdete v tématu Typy spravovaných identit.
Použijte prostředí Bash v Azure Cloud Shellu. Další informace najdete v tématu Rychlý start pro Bash v Azure Cloud Shellu.
Pokud dáváte přednost místnímu spouš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 Docker. 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í najdete 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čů. Nejsou vyžadována žádná další přiřazení rolí adresáře Microsoft Entra.
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
Vytvořte virtuální počítač pomocí příkazu az vm create. Následující příklad vytvoří virtuální počítač myVM s spravovanou identitou přiřazenou systémem podle požadavku
--assign-identity
parametru se zadaným--role
parametrem a--scope
. 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 --role contributor --scope mySubscription --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 na virtuálním počítači povolit spravovanou identitu přiřazenou systémem, váš účet potřebuje přiřazení role Přispěvatel virtuálních počítačů. Nejsou vyžadována žádná další přiřazení rolí adresáře Microsoft Entra.
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
Pomocí příkazu az vm identity assign
identity assign
povolte identitu přiřazenou systémem k existujícímu virtuálnímu počítači: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čů. Nejsou vyžadována žádná další přiřazení rolí adresáře Microsoft Entra.
Pokud máte virtuální počítač, který už nepotřebuje identitu přiřazenou systémem, ale přesto 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:
V hodnotě none
se rozlišují 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 během 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é identity. Nejsou vyžadována žádná další přiřazení rolí adresáře Microsoft Entra.
Tento krok můžete přeskočit, pokud už máte skupinu prostředků, kterou chcete použít. Pomocí příkazu az group create vytvořte skupinu prostředků pro omezení a nasazení spravované identity přiřazené uživatelem. Nezapomeňte nahradit hodnoty parametrů
<RESOURCE GROUP>
a<LOCATION>
vlastními hodnotami. :az group create --name <RESOURCE GROUP> --location <LOCATION>
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 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ě, je název 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" }
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 podle parametru
--assign-identity
se zadaným--role
parametrem a--scope
. Nezapomeňte nahradit hodnoty parametru<RESOURCE GROUP>
, ,<PASSWORD>
<USER ASSIGNED IDENTITY NAME>
<ROLE>
<VM NAME>
<USER NAME>
a<SUBSCRIPTION>
parametru vlastními hodnotami.az vm create --resource-group <RESOURCE GROUP> --name <VM NAME> --image <SKU linux image> --admin-username <USER NAME> --admin-password <PASSWORD> --assign-identity <USER ASSIGNED IDENTITY NAME> --role <ROLE> --scope <SUBSCRIPTION>
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ěvatel virtuálních počítačů a Operátor spravované identity. Nejsou vyžadována žádná další přiřazení rolí adresáře Microsoft Entra.
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 nejčastějších dotazech a známých problémech.
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" }
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ředkuname
spravované identity přiřazenou 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 k 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 to <USER ASSIGNED IDENTITY>
vlastnost identity name
přiřazená uživatelem, kterou najdete v části identit 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:
V hodnotě none
se rozlišují 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 uživatelem, můžete odebrat všechny identity přiřazené uživatelem tak, že přepnete na použití pouze systémem přiřazeného systému. Použijte následující příkaz:
az vm update -n myVM -g myResourceGroup --set identity.type='SystemAssigned' identity.userAssignedIdentities=null
Další kroky
- Přehled spravovaných identit pro prostředky Azure
- Úplné rychlé zprovoznění vytváření virtuálních počítačů Azure najdete tady: