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

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í v jakékoli službě, která podporuje ověřování Microsoft Entra, aniž byste ve vašem kódu museli mít přihlašovací údaje.

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

Požadavky

Šablony Azure Resource Manageru

Stejně jako u webu Azure Portal a skriptování vám šablony Azure Resource Manageru umožňují nasadit nové nebo upravené prostředky definované skupinou prostředků Azure. Pro úpravy a nasazení šablony je k dispozici několik možností, včetně místních i portálových:

Bez ohledu na zvolenou možnost je syntaxe šablony stejná při počátečním nasazení a opětovném nasazení. Povolení spravované identity přiřazené systémem nebo uživatelem na novém nebo existujícím virtuálním počítači se provádí stejným způsobem. Azure Resource Manager ve výchozím nastavení provede přírůstkovou aktualizaci nasazení.

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

V této části povolíte a zakážete spravovanou identitu přiřazenou systémem pomocí šablony Azure Resource Manageru.

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

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.

  1. Bez ohledu na to, jestli se přihlásíte k Azure místně nebo přes Azure Portal, použijte účet přidružený k předplatnému Azure, které obsahuje virtuální počítač.

  2. Pokud chcete povolit spravovanou identitu přiřazenou systémem, načtěte šablonu do editoru, vyhledejte Microsoft.Compute/virtualMachines prostředek zájmu v oddílu resources a přidejte "identity" vlastnost na stejné úrovni jako "type": "Microsoft.Compute/virtualMachines" vlastnost. Použijte následující syntax:

    "identity": {
        "type": "SystemAssigned"
    },
    
  3. Až budete hotovi, měly by se do resource oddílu šablony přidat následující oddíly, které by měly vypadat přibližně takto:

     "resources": [
         {
             //other resource provider properties...
             "apiVersion": "2018-06-01",
             "type": "Microsoft.Compute/virtualMachines",
             "name": "[variables('vmName')]",
             "location": "[resourceGroup().location]",
             "identity": {
                 "type": "SystemAssigned",
                 }                        
         }
     ]
    

Přiřazení role spravované identity přiřazené systémem virtuálního počítače

Jakmile na virtuálním počítači povolíte spravovanou identitu přiřazenou systémem, můžete jí udělit roli, například přístup čtenáře ke skupině prostředků, ve které byla vytvořena. Podrobné informace, které vám pomůžou s tímto krokem, najdete v článku Přiřazení rolí Azure pomocí šablon Azure Resource Manageru.

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

Pokud chcete odebrat spravovanou identitu přiřazenou systémem z virtuálního počítače, 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.

  1. Bez ohledu na to, jestli se přihlásíte k Azure místně nebo přes Azure Portal, použijte účet přidružený k předplatnému Azure, které obsahuje virtuální počítač.

  2. Načtěte šablonu do editorua vyhledejte Microsoft.Compute/virtualMachines prostředek zájmu v oddíluresources. Pokud máte virtuální počítač, který má pouze spravovanou identitu přiřazenou systémem, můžete ji zakázat změnou typu identity na None.

    Microsoft.Compute/virtualMachines API verze 2018-06-01

    Pokud má váš virtuální počítač spravované identity přiřazené systémem i uživatelem, odeberte SystemAssigned je z typu identity a ponechte UserAssigned spolu s hodnotami slovníku userAssignedIdentities .

    Microsoft.Compute/virtualMachines API verze 2018-06-01

    Pokud je 2017-12-01 váš apiVersion i váš virtuální počítač se spravovanými identitami přiřazenými systémem i uživatelem, odeberte SystemAssigned z tohoto typu identity pole spravovaných identit přiřazených uživatelem a udržujte UserAssigned ho spolu s identityIds polem spravovaných identit přiřazených uživatelem.

Následující příklad ukazuje, jak odebrat spravovanou identitu přiřazenou systémem z virtuálního počítače bez spravovaných identit přiřazených uživatelem:

{
    "apiVersion": "2018-06-01",
    "type": "Microsoft.Compute/virtualMachines",
    "name": "[parameters('vmName')]",
    "location": "[resourceGroup().location]",
    "identity": {
        "type": "None"
    }
}

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

V této části přiřadíte spravované identitě přiřazené uživatelem k virtuálnímu počítači Azure pomocí šablony Azure Resource Manageru.

Poznámka:

Pokud chcete vytvořit spravovanou identitu přiřazenou uživatelem pomocí šablony Azure Resource Manageru, přečtěte si téma Vytvoření spravované identity přiřazené uživatelem.

Přiřazení spravované identity přiřazené uživatelem k 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í role Operátor spravované identity. Nejsou vyžadována žádná další přiřazení rolí adresáře Microsoft Entra.

  1. resources Pod element přidejte následující položku pro přiřazení spravované identity přiřazené uživatelem k virtuálnímu počítači. Nezapomeňte nahradit <USERASSIGNEDIDENTITY> názvem spravované identity přiřazené uživatelem, kterou jste vytvořili.

    Microsoft.Compute/virtualMachines API verze 2018-06-01

    apiVersion Pokud ano2018-06-01, spravované identity přiřazené uživatelem se ukládají ve userAssignedIdentities formátu slovníku a <USERASSIGNEDIDENTITYNAME> hodnota musí být uložená v proměnné definované v variables části šablony.

     {
         "apiVersion": "2018-06-01",
         "type": "Microsoft.Compute/virtualMachines",
         "name": "[variables('vmName')]",
         "location": "[resourceGroup().location]",
         "identity": {
             "type": "userAssigned",
             "userAssignedIdentities": {
                 "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]": {}
             }
         }
     }
    

    Microsoft.Compute/virtualMachines API verze 2017-12-01

    apiVersion Pokud ano2017-12-01, vaše spravované identity přiřazené uživatelem se ukládají do identityIds pole a <USERASSIGNEDIDENTITYNAME> hodnota musí být uložená v proměnné definované v variables části šablony.

    {
        "apiVersion": "2017-12-01",
        "type": "Microsoft.Compute/virtualMachines",
        "name": "[variables('vmName')]",
        "location": "[resourceGroup().location]",
        "identity": {
            "type": "userAssigned",
            "identityIds": [
                "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]"
            ]
        }
    }
    
  2. Až budete hotovi, měly by se do resource oddílu šablony přidat následující oddíly, které by měly vypadat přibližně takto:

    Microsoft.Compute/virtualMachines API verze 2018-06-01

      "resources": [
         {
             //other resource provider properties...
             "apiVersion": "2018-06-01",
             "type": "Microsoft.Compute/virtualMachines",
             "name": "[variables('vmName')]",
             "location": "[resourceGroup().location]",
             "identity": {
                 "type": "userAssigned",
                 "userAssignedIdentities": {
                    "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]": {}
                 }
             }
         }
     ] 
    

    Microsoft.Compute/virtualMachines API verze 2017-12-01

    "resources": [
         {
             //other resource provider properties...
             "apiVersion": "2017-12-01",
             "type": "Microsoft.Compute/virtualMachines",
             "name": "[variables('vmName')]",
             "location": "[resourceGroup().location]",
             "identity": {
                 "type": "userAssigned",
                 "identityIds": [
                    "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]"
                 ]
             }
         }
    ]
    

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 z virtuálního počítače, 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.

  1. Bez ohledu na to, jestli se přihlásíte k Azure místně nebo přes Azure Portal, použijte účet přidružený k předplatnému Azure, které obsahuje virtuální počítač.

  2. Načtěte šablonu do editorua vyhledejte Microsoft.Compute/virtualMachines prostředek zájmu v oddíluresources. Pokud máte virtuální počítač, který má jenom spravovanou identitu přiřazenou uživatelem, můžete ji zakázat změnou typu identity na None.

    Následující příklad ukazuje, jak odebrat všechny spravované identity přiřazené uživatelem z virtuálního počítače bez spravovaných identit přiřazených systémem:

     {
       "apiVersion": "2018-06-01",
       "type": "Microsoft.Compute/virtualMachines",
       "name": "[parameters('vmName')]",
       "location": "[resourceGroup().location]",
       "identity": {
           "type": "None"
           },
     }
    

    Microsoft.Compute/virtualMachines API verze 2018-06-01

    Pokud chcete z virtuálního počítače odebrat jednu spravovanou identitu přiřazenou uživatelem, odeberte ji ze slovníku useraAssignedIdentities .

    Pokud máte spravovanou identitu přiřazenou systémem, ponechte ji v type hodnotě identity pod hodnotou.

    Microsoft.Compute/virtualMachines API verze 2017-12-01

    Pokud chcete z virtuálního počítače odebrat jednu spravovanou identitu přiřazenou uživatelem, odeberte ji z identityIds pole.

    Pokud máte spravovanou identitu přiřazenou systémem, ponechte ji v type hodnotě identity pod hodnotou.

Další kroky

  • Přehled spravovaných identit pro prostředky Azure