Sdílet prostřednictvím


Použití spravovaných identit se službami Azure k připojení ke službě Azure Cosmos DB for NoSQL

PLATÍ PRO: NoSQL

Diagram aktuálního umístění (Příprava) v posloupnosti průvodce nasazením

Diagram posloupnosti průvodce nasazením, včetně těchto umístění, v uvedeném pořadí: Přehled, Koncepty, Příprava, Řízení přístupu na základě role, Síť a Reference Umístění Připravit je aktuálně zvýrazněné.

Tento článek popisuje kroky potřebné k vytvoření spravovaných identit pro použití s nasazenou aplikací připojenou ke službě Azure Cosmos DB for NoSQL.

Spravované identity jsou jedním z mnoha typů prostředků identit v Microsoft Entra ID pro aplikace, které se používají při připojování ke službám, které podporují ověřování Microsoft Entra. Spravované identity se dají použít místo tradičních přihlašovacích údajů vlastněných prostředky, jako jsou klíče. Spravované identity v Azure poskytují vašim aplikacím způsob, jak získat token Microsoft Entra pro ověřování ve službách Azure, aniž byste museli psát velké množství ověřovacího kódu.

Microsoft Entra můžete použít k ověřování ve službách Azure, včetně mimo jiné:

  • Azure SQL
  • Azure AI
  • Azure Cosmos DB
  • Azure Storage
  • Azure Event Hubs
  • Azure Container Registry

Spravované identity můžete použít k reprezentaci objektu zabezpečení, který se ověřuje ve službě Azure z jiných služeb Azure, včetně mimo jiné:

  • Azure Kubernetes Service
  • Azure Container Apps
  • Azure Virtual Machines
  • Azure Functions
  • Azure App Service
  • Azure Spring Apps
  • Azure Service Fabric

Spravované identity umožňují několik zabezpečených scénářů, kdy se k sobě můžou vzájemně připojovat různé služby Azure. Mezi některé příklady patří:

  • Vytvoření spravované identity přiřazené systémem pro aplikaci v Azure Spring Apps pro připojení a dotazování účtu Azure SQL
  • Použití jedné spravované identity přiřazené uživatelem se službou Azure Kubernetes Service a Azure Functions k vydávání požadavků na účet Azure AI
  • Použití spravované identity pro účet služby Azure Cosmos DB k ukládání klíčů ve službě Azure Key Vault

Další informace najdete v tématu spravované identity pro prostředky Azure.

Požadavky

Vytvoření služby Azure se spravovanou identitou přiřazenou systémem

Vytvořte novou službu Azure se spravovanou identitou přiřazenou systémem. Tato část vytvoří prostředek Azure Container Instances .

  1. Slouží az container create k vytvoření nové instance kontejneru. Nakonfigurujte účet tak, aby používal spravovanou identitu přiřazenou systémem pomocí parametru assign-identity .

    az container create \
        --resource-group "<name-of-existing-resource-group>" \
        --name "<name-of-new-container>" \
        --image mcr.microsoft.com/dotnet/samples:aspnetapp-chiseled \
        --cpu 1 \
        --memory 2 \
        --assign-identity
    
  2. Získejte podrobnosti o spravované identitě přiřazené systémem pomocí az container show dotazu JMESPath.

    az container show \
        --resource-group "<name-of-existing-resource-group>" \
        --name "<name-of-existing-container>" \
        --query "identity"
    
  3. Zkontrolujte výstup příkazu. Měl by obsahovat jedinečné identifikátory identity a tenanta.

    {
      "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
      "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
      "type": "SystemAssigned",
      "userAssignedIdentities": null
    }
    
  1. Vytvořte nový soubor Bicep pro definování nové instance kontejneru. Pojmenujte soubor container-instance.bicep. Nastavte tyto vlastnosti pro instanci kontejneru:

    Hodnota
    name Použití parametru s názvem instanceName
    location Nastavení umístění skupiny prostředků
    identity.type SystemAssigned
    properties.osType Linux
    properties.containers[0].name aspnet-sample
    properties.containers[0].properties.image mcr.microsoft.com/dotnet/samples:aspnetapp-chiseled
    properties.containers[0].properties.resources.requests.cpu 1
    properties.containers[0].properties.resources.requests.memoryInGB 2
    metadata description = 'Create Azure Container Instance resource with system-assigned managed identity.'
    
    @description('Name of the Azure Container Instances resource.')
    param instanceName string
    
    resource instance 'Microsoft.ContainerInstance/containerGroups@2023-05-01' = {
      name: instanceName
      location: resourceGroup().location
      identity: {
        type: 'SystemAssigned'
      }
      properties: {
        osType: 'Linux'
        containers: [
          {
            name: 'aspnet-sample'
            properties: {
              image: 'mcr.microsoft.com/dotnet/samples:aspnetapp-chiseled'
              resources: {
                requests: {
                  cpu: 1
                  memoryInGB: 2
                }
              }
            }
          }
        ]
      }
    }
    
    output systemAssignedIdentity object = instance.identity    
    
  2. Vytvořte nový soubor parametrů Bicep s názvem container-instance.bicepparam. V tomto souboru parametrů vytvořte jedinečný název instance kontejneru pomocí parametru instanceName .

    using './container-instance.bicep'
    
    param instanceName = '<name-of-new-container-instance>'
    
  3. Nasaďte šablonu Bicep pomocí az deployment group create. Zadejte název šablony Bicep, souboru parametrů a skupiny prostředků Azure.

    az deployment group create \
        --resource-group "<name-of-existing-resource-group>" \
        --parameters "container-instance.bicepparam" \
        --template-file "container-instance.bicep"
    
  4. Zkontrolujte výstup z nasazení. Výstup obsahuje objekt identity z instance kontejneru properties.outputs.systemAssignedIdentity.value ve vlastnosti.

    {
      "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
      "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
      "type": "SystemAssigned"
    }
    
  1. Přihlaste se k webu Azure Portal (https://portal.azure.com).

  2. Do globálního vyhledávacího panelu zadejte Azure Container Instances .

    Snímek obrazovky globálního vyhledávacího panelu na webu Azure Portal

  3. V rámci služeb vyberte instance kontejneru.

    Snímek obrazovky s vybranou možností Container Instances (Instances kontejneru) v nabídce hledání

  4. V podokně Instances kontejneru vyberte Vytvořit.

    Snímek obrazovky s možností Vytvořit v podokně služby Azure Container Instances

  5. V podokně Základy nakonfigurujte následující možnosti a pak vyberte Zkontrolovat a vytvořit:

    Hodnota
    Předplatné Vybrat předplatné Azure
    Skupina prostředků Vytvoření nové skupiny prostředků nebo výběr existující skupiny prostředků
    Název kontejneru Zadejte globálně jedinečný název.
    Oblast Vyberte podporovanou oblast Azure pro vaše předplatné.

    Snímek obrazovky s podoknem Vytváření prostředků služby Azure Container Instances v podokně Základy

    Tip

    U výchozích hodnot můžete ponechat všechny nezadané možnosti.

  6. V podokně Zkontrolovat a vytvořit počkejte na úspěšné ověření účtu a pak vyberte Vytvořit.

    Snímek obrazovky s krokem ověření prostředku v prostředí pro vytvoření instance kontejneru

  7. Portál automaticky přejde do podokna Nasazení . Počkejte, až se nasazení dokončí.

  8. Po dokončení nasazení vyberte Přejít k prostředku a přejděte k novému prostředku Azure Container Instances.

    Snímek obrazovky s plně nasazeným prostředkem služby Azure Container Instances se zvýrazněnou možností Přejít k prostředku

  9. V podokně pro novou instanci kontejneru vyberte v části Nastavení nabídky služby možnost Identita.

    Snímek obrazovky s možností Identita v nabídce služby pro instanci kontejneru

  10. V podokně Identita povolte spravovanou identitu přiřazenou systémem nastavením možnosti Stav na Zapnuto. Pak vyberte Uložit a vyřešte všechny výzvy k potvrzení změny.

    Snímek obrazovky s nastavením možnosti Stav na Zapnuto pro spravovanou identitu přiřazenou systémem

  11. Jakmile je spravovaná identita přiřazená systémem připravená, zkontrolujte hodnotu vlastnosti ID objektu (objektu zabezpečení). Hodnota této vlastnosti je jedinečný identifikátor identity.

    Snímek obrazovky s podrobnostmi o spravované identitě přiřazené systémem

    Tip

    Na tomto příkladu snímku obrazovky je jedinečný identifikátor spravované identity bbbbbbbb-1111-2222-3333-ccccccccccccpřiřazené systémem .

  1. Vytvořte objekt představující kontejner, který používáte New-AzContainerInstanceObject , a uložte ho do proměnné s názvem $container. Pak pomocí objektu kontejneru vytvořte novou instanci kontejneru s New-AzContainerGroup. Nakonfigurujte účet tak, aby používal spravovanou identitu přiřazenou systémem nastavením parametru IdentityType na SystemAssigned.

    $parameters = @{
        Name = "aspnet-sample"
        Image = "mcr.microsoft.com/dotnet/samples:aspnetapp-chiseled"
        RequestCpu = 1 
        RequestMemoryInGb = 2
    }
    $container = New-AzContainerInstanceObject @parameters
    
    $parameters = @{
        ResourceGroupName = "<name-of-existing-resource-group>"
        Name = "<name-of-new-container>"
        Container = $container
        OsType = "Linux"
        Location = "<azure-region>"
        IdentityType = "SystemAssigned"
    }
    New-AzContainerGroup @parameters
    
  2. Získejte podrobnosti o spravované identitě přiřazené systémem a Get-AzContainerGroup Format-List vyberte pouze Identity vlastnost.

    $parameters = @{
        ResourceGroupName = "<name-of-existing-resource-group>"
        Name = "<name-of-existing-container>"
    }
    Get-AzContainerGroup @parameters | Format-List Identity
    
  3. Zkontrolujte výstup příkazu. Měl by obsahovat jedinečné identifikátory identity a tenanta.

    Identity : {
                 "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
                 "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
                 "type": "SystemAssigned"
               }
    

Vytvoření spravované identity přiřazené uživatelem

Vytvořte spravovanou identitu přiřazenou uživatelem, kterou lze použít s jednou nebo více službami Azure přenositelným způsobem.

  1. Slouží az identity create k vytvoření nové spravované identity přiřazené uživatelem ve skupině prostředků Azure.

    az identity create \
        --resource-group "<name-of-existing-resource-group>" \
        --name "<name-of-new-managed-identity>"
    
  2. Získání seznamu spravovaných identit přiřazených uživatelem ve skupině prostředků pomocí az identity list

    az identity list \
        --resource-group "<name-of-existing-resource-group>"    
    
  3. Zkontrolujte výstup příkazu. Poznamenejte si hodnotu id pole jako tento plně kvalifikovaný identifikátor prostředku, který slouží k přiřazení spravované identity přiřazené uživatelem k prostředku Azure.

    {
      "clientId": "11112222-bbbb-3333-cccc-4444dddd5555",
      "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/msdocs-identity-example/providers/Microsoft.ManagedIdentity/userAssignedIdentities/msdocs-identity-example-user-assigned",
      "location": "<azure-location>",
      "name": "msdocs-identity-example-user-assigned",
      "principalId": "cccccccc-dddd-eeee-3333-444444444444",
      "resourceGroup": "msdocs-identity-example",
      "systemData": null,
      "tags": {},
      "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
      "type": "Microsoft.ManagedIdentity/userAssignedIdentities"
    }
    

    Poznámka:

    V tomto příkladu id by hodnota byla /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/msdocs-identity-example/providers/Microsoft.ManagedIdentity/userAssignedIdentities/msdocs-identity-example-user-assigned. Tento příklad používá fiktivní data a váš identifikátor by se od tohoto příkladu odlišil.

  1. Vytvořte soubor Bicep pro definování spravované identity přiřazené uživatelem a pojmenujte soubor přiřazený uživatelem-managed-identity.bicep. Nastavte tyto minimální vlastnosti:

    Hodnota
    name Použití volitelného parametru s názvem identityName a vygenerování jedinečné výchozí hodnoty
    location Nastavení umístění skupiny prostředků
    metadata description = 'Create a user-assigned managed identity.'
    
    param identityName string = uniqueString(subscription().id, resourceGroup().id)
    
    resource identity 'Microsoft.ManagedIdentity/userAssignedIdentities@2023-01-31' = {
      name: identityName
      location: resourceGroup().location
    }
    
    output id string = identity.id
    output name string = identity.name
    
  2. Nasaďte šablonu Bicep pomocí az deployment group create. Zadejte název šablony Bicep a skupiny prostředků Azure.

    az deployment group create \
        --resource-group "<name-of-existing-resource-group>" \
        --template-file "user-assigned-managed-identity.bicep"
    
  3. Zkontrolujte výstup z nasazení. Výstup obsahuje jedinečný identifikátor spravované identity ve properties.outputs.name.value vlastnosti. Tuto hodnotu si poznamenejte, protože je potřeba ji použít při vytváření nového prostředku Azure dále v tomto průvodci.

    {
      "type": "String",
      "value": "msdocs-identity-example-user-assigned"
    }
    

    Poznámka:

    V tomto příkladu by to name.value bylo msdocs-identity-example-user-assigned. Tento příklad používá fiktivní data a váš identifikátor by se od tohoto příkladu odlišil.

  1. Zadejte spravovanou identitu do globálního panelu hledání.

  2. V rámci služeb vyberte Spravované identity.

    Snímek obrazovky s vybranou možností Spravované identity v nabídce hledání

  3. V podokně Instances kontejneru vyberte Vytvořit.

    Snímek obrazovky s možností Vytvořit v podokně spravovaných identit

  4. V podokně Základy nakonfigurujte následující možnosti a pak vyberte Zkontrolovat a vytvořit:

    Hodnota
    Předplatné Vybrat předplatné Azure
    Skupina prostředků Vytvoření nové skupiny prostředků nebo výběr existující skupiny prostředků
    Oblast Vyberte podporovanou oblast Azure pro vaše předplatné.
    Název Zadejte globálně jedinečný název.

    Snímek obrazovky s podoknem Vytvoření prostředku spravované identity Základy

  5. V podokně Zkontrolovat a vytvořit počkejte na úspěšné ověření účtu a pak vyberte Vytvořit.

    Snímek obrazovky s krokem ověření prostředku v prostředí pro vytvoření spravované identity

  6. Portál automaticky přejde do podokna Nasazení . Počkejte, až se nasazení dokončí.

  7. Počkejte na dokončení nasazení spravované identity.

    Snímek obrazovky plně nasazeného prostředku spravované identity

  1. Vytvořte novou spravovanou identitu přiřazenou uživatelem pomocí New-AzUserAssignedIdentity ve vaší skupině prostředků Azure.

    $parameters = @{
        ResourceGroupName = "<name-of-existing-resource-group>"
        Name = "<name-of-new-managed-identity>"
        Location = "<azure-region>"
    }
    New-AzUserAssignedIdentity @parameters
    
  2. Umožňuje Get-AzUserAssignedIdentity získat seznam spravovaných identit přiřazených uživatelem ve vaší skupině prostředků.

    $parameters = @{
        ResourceGroupName = "<name-of-existing-resource-group>"
    }
    Get-AzUserAssignedIdentity @parameters | Format-List Name, Id
    
  3. Zkontrolujte výstup příkazu. Poznamenejte si hodnotu Id pole jako tento plně kvalifikovaný identifikátor prostředku, který slouží k přiřazení spravované identity přiřazené uživatelem k prostředku Azure.

    Name : msdocs-identity-example-user-assigned
    Id   : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/msdocs-identity-example/providers/Microsoft.ManagedIdentity/userAssignedIdentities/msdocs-identity-example-user-assigned
    

    Poznámka:

    V tomto příkladu Id by hodnota byla /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/msdocs-identity-example/providers/Microsoft.ManagedIdentity/userAssignedIdentities/msdocs-identity-example-user-assigned. Tento příklad používá fiktivní data a váš identifikátor by se od tohoto příkladu odlišil.

Vytvoření služby Azure se spravovanou identitou přiřazenou uživatelem

Přiřaďte dříve vytvořenou spravovanou identitu přiřazenou uživatelem k nové hostitelské službě Azure. Tato část vytvoří prostředek webové aplikace Aplikace Azure Services.

  1. Vytvořte nový plán služby App Service pomocí az appservice plan create.

    az appservice plan create \
        --resource-group "<name-of-existing-resource-group>" \
        --name "<name-of-new-plan>"
    
  2. Přiřaďte spravovanou identitu přiřazenou uživatelem k nové webové aplikaci pomocí az webapp create. id Jako hodnotu parametru použijte pole zaznamenané dříve v tomto průvodcissign-identity.

    az webapp create \
        --resource-group "<name-of-existing-resource-group>" \
        --name "<name-of-existing-web-app>" \
        --plan "<name-of-existing-plan>" \
        --assign-identity "<resource-id-recorded-earlier>"
    
  3. Získejte podrobnosti o všech identitách přiřazených k tomuto účtu pomocí az webapp show dotazu JMESPath.

    az webapp show \
        --resource-group "<name-of-existing-resource-group>" \
        --name "<name-of-existing-account>" \
        --query "identity"   
    
  4. Zkontrolujte výstup příkazu. Měla by obsahovat spravovanou identitu přiřazenou uživatelem.

    {
      "principalId": null,
      "tenantId": null,
      "type": "UserAssigned",
      "userAssignedIdentities": {
        "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/msdocs-identity-example/providers/Microsoft.ManagedIdentity/userAssignedIdentities/msdocs-identity-example-user-assigned": {
          "clientId": "11112222-bbbb-3333-cccc-4444dddd5555",
          "principalId": "cccccccc-dddd-eeee-3333-444444444444"
        }
      }
    }
    
  1. Vytvořte další soubor Bicep s názvem app-service-web-app.bicep a definujte plán služby Aplikace Azure a webovou aplikaci. Nastavte pro tyto prostředky tyto vlastnosti:

    Prostředek Hodnota
    name Existující spravovaná identita Použití parametru s názvem identityName
    name Plán služby App Service Použití parametru s názvem planName
    location Plán služby App Service Nastavení umístění skupiny prostředků
    name Webová aplikace Použití parametru s názvem webAppName
    location Webová aplikace Nastavení umístění skupiny prostředků
    identity.type UserAssigned
    identity.userAssignedIdentities.{identity.id} {}
    properties.serverFarmId plan.id
    metadata description = 'Creates an Azure App Service plan and web app with a user-assigned managed identity.'
    
    @description('The name of the app service plan.')
    param planName string
    
    @description('The name of the web app.')
    param webAppName string
    
    @description('The name of the user-assigned managed identity.')
    param identityName string
    
    resource identity 'Microsoft.ManagedIdentity/userAssignedIdentities@2023-01-31' existing = {
      name: identityName
    }
    
    resource plan 'Microsoft.Web/serverfarms@2023-12-01' = {
      name: planName
      location: resourceGroup().location
    }
    
    resource webApp 'Microsoft.Web/sites@2023-12-01' = {
      name: webAppName
      location: resourceGroup().location
      identity: {
        type: 'UserAssigned'
        userAssignedIdentities: {
          '${identity.id}': {}
        }
      }
      properties: {
        serverFarmId: plan.id
      }
    }
    
    output userAssignedIdentity object = webApp.identity
    
  2. Vytvořte soubor parametrů Bicep s názvem app-service-web-app.bicepparam. V tomto souboruparametrůch planName webAppName Potom jako hodnotu parametru zadejte název spravované identity přiřazené uživatelem identityName .

    using './app-service-web-app.bicep'
    
    param planName = '<name-of-new-app-service-plan>'
    param webAppName = '<name-of-new-web-app>'
    param identityName = '<name-of-existing-managed-identity>'
    
  3. Nasaďte šablonu Bicep pomocí az deployment group create. Zadejte název šablony Bicep, souboru parametrů a skupiny prostředků Azure.

    az deployment group create \
        --resource-group "<name-of-existing-resource-group>" \
        --parameters "app-service-web-app.bicepparam" \
        --template-file "app-service-web-app.bicep"
    
  4. Zkontrolujte výstup z nasazení. Výstup obsahuje objekt identity z instance kontejneru properties.outputs.userAssignedIdentity.value ve vlastnosti.

    {
      "type": "UserAssigned",
      "userAssignedIdentities": {
        "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/msdocs-identity-example/providers/Microsoft.ManagedIdentity/userAssignedIdentities/msdocs-identity-example-user-assigned": {
          "clientId": "11112222-bbbb-3333-cccc-4444dddd5555",
          "principalId": "cccccccc-dddd-eeee-3333-444444444444"
        }
      }
    }
    
  1. Na panelu globálního vyhledávání zadejte webovou aplikaci .

  2. V rámci služeb vyberte App Services.

    Snímek obrazovky s vybranou možností App Services v nabídce hledání

  3. V podokně App Services vyberte Vytvořit a pak Web App.

    Snímek obrazovky s možnostmi Vytvořit a Webová aplikace v podokně pro službu Aplikace Azure Service

  4. V podokně Základy nakonfigurujte následující možnosti a pak vyberte Zkontrolovat a vytvořit:

    Hodnota
    Předplatné Vybrat předplatné Azure
    Skupina prostředků Vytvoření nové skupiny prostředků nebo výběr existující skupiny prostředků
    Název Zadejte globálně jedinečný název.
    Plán Vytvoření nového plánu nebo výběr existujícího plánu

    Snímek obrazovky s podoknem Vytvoření prostředku webové aplikace Základy

  5. V podokně Zkontrolovat a vytvořit počkejte na úspěšné ověření účtu a pak vyberte Vytvořit.

    Snímek obrazovky s krokem ověření prostředku v prostředí pro vytváření prostředku webové aplikace

  6. Portál automaticky přejde do podokna Nasazení . Počkejte, až se nasazení dokončí.

  7. Po dokončení nasazení vyberte Přejít k prostředku a přejděte k novému prostředku Azure Container Instances.

    Snímek obrazovky plně nasazeného prostředku webové aplikace služby Aplikace Azure se zvýrazněnou možností Přejít k prostředku

  8. V podokně pro novou instanci kontejneru vyberte v části Nastavení nabídky služby možnost Identita.

    Snímek obrazovky s možností Identita v nabídce služby pro webovou aplikaci

  9. V podokně Identita vyberte možnost Přiřazený uživatelem.

    Snímek obrazovky s možností Přiřazený uživatelem v podokně Identita pro webovou aplikaci

  10. Výběrem možnosti Přidat otevřete dialogové okno pro přiřazení existujících spravovaných identit přiřazených uživatelem. V dialogovém okně vyberte existující spravovanou identitu přiřazenou uživatelem a pak vyberte Přidat.

    Snímek obrazovky s možností Přidat a dialogem Přidat spravovanou identitu přiřazenou uživatelem v podokně Identita pro webovou aplikaci

  11. Nakonec zkontrolujte seznam spravovaných identit přiřazených uživatelem přidružených k vaší webové aplikaci. Měl by obsahovat název identity, název skupiny prostředků a identifikátor předplatného.

    Snímek obrazovky se seznamem spravovaných identit přiřazených uživatelem přidružených k aktuální webové aplikaci

  1. Slouží New-AzWebApp k vytvoření nové webové aplikace Aplikace Azure Service.

    $parameters = @{
        ResourceGroupName = "<name-of-existing-resource-group>"
        Name = "<name-of-new-web-app>"
        Location = "<azure-region>"
    }
    New-AzWebApp @parameters
    
  2. Opravte nově vytvořenou identity.type webovou aplikaci, abyste nastavili vlastnost UserAssigned , a přidejte do vlastnosti existující spravovanou identitu přiřazenou uživatelem identity.userAssignedIdentities . Pokud chcete tuto úlohu provést, nejprve zadejte id pole zaznamenané dříve v tomto průvodci jako hodnotu identityId proměnné prostředí. Pak vytvořte objekt datové části a převeďte ho na JSON. Nakonec pomocí Invoke-AzRestMethod PATCH příkazu HTTP aktualizujte existující webovou aplikaci.

    $identityId = "<resource-id-recorded-earlier>"
    
    $payload = @{
        identity = @{
            type = "UserAssigned"
            userAssignedIdentities = @{
                "$identityId" = @{}
            }
        }
    } | ConvertTo-Json -Depth 3
    
    $parameters = @{
        ResourceGroupName = "<name-of-existing-resource-group>"
        Name = "<name-of-existing-web-app>"
        ResourceProviderName = 'Microsoft.Web'
        ResourceType = 'sites'
        ApiVersion = '2023-12-01'
        Method = 'PATCH'
        Payload = $payload
    }
    Invoke-AzRestMethod @parameters
    
  3. Získejte podrobnosti o všech identitách přiřazených k webové aplikaci pomocí Get-AzWebAppSelect-ObjectConvertTo-Json a vyberte pouze Identity vlastnost.

    $parameters = @{
        ResourceGroupName = "<name-of-existing-resource-group>"
        Name = "<name-of-existing-web-app>"
    }
    Get-AzWebApp @parameters | Select-Object Identity | ConvertTo-Json -Depth 3
    
  4. Zkontrolujte výstup příkazu. Měl by obsahovat jedinečné identifikátory identity a tenanta.

    {
      "Identity": {
        "Type": "UserAssigned",
        "TenantId": null,
        "PrincipalId": null,
        "UserAssignedIdentities": {
          "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/msdocs-identity-example/providers/Microsoft.ManagedIdentity/userAssignedIdentities/msdocs-identity-example-user-assigned": {
            "PrincipalId": "cccccccc-dddd-eeee-3333-444444444444",
            "ClientId": "11112222-bbbb-3333-cccc-4444dddd5555"
          }
        }
      }
    }
    

Další krok