Dela via


Konfigurera hanterade identiteter med Microsoft Entra ID för ditt Azure Cosmos DB-konto

GÄLLER FÖR: NoSQL MongoDB Kassandra Gremlin Bord

Hanterade identiteter för Azure-resurser ger Azure-tjänster en automatiskt hanterad identitet i Microsoft Entra ID. Den här artikeln visar hur du skapar en hanterad identitet för Azure Cosmos DB-konton.

Förutsättningar

Lägga till en systemtilldelad identitet

Med hjälp av Azure-portalen

Om du vill aktivera en systemtilldelad hanterad identitet på ett befintligt Azure Cosmos DB-konto går du till ditt konto i Azure-portalen och väljer Identitet på den vänstra menyn.

Menyposten Identitet

Under avsnittet Systemtilldelat vänder du Status till På och väljer Spara. Du uppmanas att bekräfta skapandet av den systemtilldelade hanterade identiteten.

Aktivera en systemtilldelad identitet

När identiteten har skapats och tilldelats kan du hämta dess objekt-ID (huvudnamn).

Hämtar objekt-ID för en systemtilldelad identitet

Använda en ARM-mall (Azure Resource Manager)

Viktigt!

Se till att använda en apiVersion av 2021-03-15 eller högre när du arbetar med hanterade identiteter.

Om du vill aktivera en systemtilldelad identitet för ett nytt eller befintligt Azure Cosmos DB-konto inkluderar du följande egenskap i resursdefinitionen:

"identity": {
    "type": "SystemAssigned"
}

Avsnittet resources i ARM-mallen bör sedan se ut så här:

"resources": [
    {
        "type": " Microsoft.DocumentDB/databaseAccounts",
        "identity": {
            "type": "SystemAssigned"
        },
        // ...
    },
    // ...
]

När ditt Azure Cosmos DB-konto har skapats eller uppdaterats visas följande egenskap:

"identity": {
    "type": "SystemAssigned",
    "tenantId": "<azure-ad-tenant-id>",
    "principalId": "<azure-ad-principal-id>"
}

Använda Azure CLI

Om du vill aktivera en systemtilldelad identitet när du skapar ett nytt Azure Cosmos DB-konto lägger du till alternativet --assign-identity :

resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'

az cosmosdb create \
    -n $accountName \
    -g $resourceGroupName \
    --locations regionName='West US 2' failoverPriority=0 isZoneRedundant=False \
    --assign-identity

Du kan också lägga till en systemtilldelad identitet på ett befintligt konto med kommandot az cosmosdb identity assign :

resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'

az cosmosdb identity assign \
    -n $accountName \
    -g $resourceGroupName

När ditt Azure Cosmos DB-konto har skapats eller uppdaterats kan du hämta den identitet som tilldelats med az cosmosdb identity show kommandot:

resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'

az cosmosdb identity show \
    -n $accountName \
    -g $resourceGroupName
{
    "type": "SystemAssigned",
    "tenantId": "<azure-ad-tenant-id>",
    "principalId": "<azure-ad-principal-id>"
}

Lägga till en användartilldelad identitet

Med hjälp av Azure-portalen

Om du vill aktivera en användartilldelad hanterad identitet på ett befintligt Azure Cosmos DB-konto går du till ditt konto i Azure-portalen och väljer Identitet på den vänstra menyn.

Menyposten Identitet

Under det användartilldelade avsnittet väljer du + Lägg till.

Aktivera en användartilldelad identitet

Leta upp och välj alla identiteter som du vill tilldela till ditt Azure Cosmos DB-konto och välj sedan Lägg till.

Välja alla identiteter som ska tilldelas

Använda en ARM-mall (Azure Resource Manager)

Viktigt!

Se till att använda en apiVersion av 2021-03-15 eller högre när du arbetar med hanterade identiteter.

Om du vill aktivera en användartilldelad identitet för ett nytt eller befintligt Azure Cosmos DB-konto inkluderar du följande egenskap i resursdefinitionen:

"identity": {
    "type": "UserAssigned",
    "userAssignedIdentities": {
        "<identity-resource-id>": {}
    }
}

Avsnittet resources i ARM-mallen bör sedan se ut så här:

"resources": [
    {
        "type": " Microsoft.DocumentDB/databaseAccounts",
        "identity": {
            "type": "UserAssigned",
            "userAssignedIdentities": {
                "<identity-resource-id>": {}
            }
        },
        // ...
    },
    // ...
]

När ditt Azure Cosmos DB-konto har skapats eller uppdaterats visas följande egenskap:

"identity": {
    "type": "UserAssigned",
    "tenantId": "<azure-ad-tenant-id>",
    "principalId": "<azure-ad-principal-id>"
}

Använda Azure CLI

Om du vill aktivera en användartilldelad identitet när du skapar ett nytt Azure Cosmos DB-konto lägger du till --assign-identity alternativet och skickar resurs-ID:t för den identitet som du vill tilldela:

resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'

az cosmosdb create \
    -n $accountName \
    -g $resourceGroupName \
    --locations regionName='West US 2' failoverPriority=0 isZoneRedundant=False \
    --assign-identity <identity-resource-id>

Du kan också lägga till en användartilldelad identitet på ett befintligt konto med hjälp av az cosmosdb identity assign kommandot :

resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'

az cosmosdb identity assign \
    -n $accountName \
    -g $resourceGroupName
    --identities <identity-resource-id>

När ditt Azure Cosmos DB-konto har skapats eller uppdaterats kan du hämta den identitet som tilldelats med az cosmosdb identity show kommandot:

resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'

az cosmosdb identity show \
    -n $accountName \
    -g $resourceGroupName
{
    "type": "UserAssigned",
    "tenantId": "<azure-ad-tenant-id>",
    "principalId": "<azure-ad-principal-id>"
}

Ta bort en systemtilldelad eller användartilldelad identitet

Använda en ARM-mall (Azure Resource Manager)

Viktigt!

Se till att använda en apiVersion av 2021-03-15 eller högre när du arbetar med hanterade identiteter.

Om du vill ta bort en systemtilldelad identitet från ditt Azure Cosmos DB-konto anger du type identity egenskapen till None:

"identity": {
    "type": "None"
}

Använda Azure CLI

Om du vill ta bort alla hanterade identiteter från ditt Azure Cosmos DB-konto använder du az cosmosdb identity remove kommandot:

resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'

az cosmosdb identity remove \
    -n $accountName \
    -g $resourceGroupName

Nästa steg