Configurare le identità gestite con l'ID Microsoft Entra per l'account Azure Cosmos DB
SI APPLICA A: Nosql Mongodb Cassandra Gremlin Tabella
Le identità gestite per le risorse di Azure offrono servizi di Azure con un'identità gestita automaticamente in Microsoft Entra ID. Questo articolo illustra come creare un'identità gestita per gli account Azure Cosmos DB.
Prerequisiti
- Se non si ha familiarità con le identità gestite per le risorse di Azure, vedere Informazioni sulle identità gestite per le risorse di Azure. Per informazioni sui tipi di identità gestita, vedere Tipi di identità gestiti.
- Per configurare le identità gestite, l'account deve avere il ruolo Collaboratore account DocumentDB.
Aggiungere un'identità assegnata dal sistema
Tramite il portale di Azure
Per abilitare un'identità gestita assegnata dal sistema in un account Azure Cosmos DB esistente, passare all'account nel portale di Azure e selezionare Identità dal menu a sinistra.
Nella sezione Assegnata dal sistema scorrere lo stato su Sì e selezionare Salva. Verrà chiesto di confermare la creazione dell'identità gestita assegnata dal sistema.
Dopo aver creato e assegnato l'identità, è possibile recuperarne l'ID Oggetto (entità).
Uso di un modello di Azure Resource Manager (ARM)
Importante
Assicurarsi di usare o apiVersion
2021-03-15
versione successiva quando si usano le identità gestite.
Per abilitare un'identità assegnata dal sistema in un account Azure Cosmos DB nuovo o esistente, includere la proprietà seguente nella definizione della risorsa:
"identity": {
"type": "SystemAssigned"
}
La resources
sezione del modello di Resource Manager dovrebbe quindi essere simile alla seguente:
"resources": [
{
"type": " Microsoft.DocumentDB/databaseAccounts",
"identity": {
"type": "SystemAssigned"
},
// ...
},
// ...
]
Dopo aver creato o aggiornato l'account Azure Cosmos DB, verrà visualizzata la proprietà seguente:
"identity": {
"type": "SystemAssigned",
"tenantId": "<azure-ad-tenant-id>",
"principalId": "<azure-ad-principal-id>"
}
Con l'interfaccia della riga di comando di Azure
Per abilitare un'identità assegnata dal sistema durante la creazione di un nuovo account Azure Cosmos DB, aggiungere l'opzione --assign-identity
:
resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'
az cosmosdb create \
-n $accountName \
-g $resourceGroupName \
--locations regionName='West US 2' failoverPriority=0 isZoneRedundant=False \
--assign-identity
È anche possibile aggiungere un'identità assegnata dal sistema in un account esistente usando il az cosmosdb identity assign
comando :
resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'
az cosmosdb identity assign \
-n $accountName \
-g $resourceGroupName
Dopo aver creato o aggiornato l'account Azure Cosmos DB, è possibile recuperare l'identità assegnata con il az cosmosdb identity show
comando :
resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'
az cosmosdb identity show \
-n $accountName \
-g $resourceGroupName
{
"type": "SystemAssigned",
"tenantId": "<azure-ad-tenant-id>",
"principalId": "<azure-ad-principal-id>"
}
Aggiungere un'identità assegnata dall'utente
Tramite il portale di Azure
Per abilitare un'identità gestita assegnata dall'utente in un account Azure Cosmos DB esistente, passare all'account nel portale di Azure e selezionare Identità dal menu a sinistra.
Nella sezione assegnata dall'utente selezionare + Aggiungi.
Trovare e selezionare tutte le identità da assegnare all'account Azure Cosmos DB e quindi selezionare Aggiungi.
Uso di un modello di Azure Resource Manager (ARM)
Importante
Assicurarsi di usare o apiVersion
2021-03-15
versione successiva quando si usano le identità gestite.
Per abilitare un'identità assegnata dall'utente in un account Azure Cosmos DB nuovo o esistente, includere la proprietà seguente nella definizione della risorsa:
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": {
"<identity-resource-id>": {}
}
}
La resources
sezione del modello di Resource Manager dovrebbe quindi essere simile alla seguente:
"resources": [
{
"type": " Microsoft.DocumentDB/databaseAccounts",
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": {
"<identity-resource-id>": {}
}
},
// ...
},
// ...
]
Dopo aver creato o aggiornato l'account Azure Cosmos DB, verrà visualizzata la proprietà seguente:
"identity": {
"type": "UserAssigned",
"tenantId": "<azure-ad-tenant-id>",
"principalId": "<azure-ad-principal-id>"
}
Con l'interfaccia della riga di comando di Azure
Per abilitare un'identità assegnata dall'utente durante la creazione di un nuovo account Azure Cosmos DB, aggiungere l'opzione --assign-identity
e passare l'ID risorsa dell'identità da assegnare:
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>
È anche possibile aggiungere un'identità assegnata dall'utente in un account esistente usando il az cosmosdb identity assign
comando :
resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'
az cosmosdb identity assign \
-n $accountName \
-g $resourceGroupName
--identities <identity-resource-id>
Dopo aver creato o aggiornato l'account Azure Cosmos DB, è possibile recuperare l'identità assegnata con il az cosmosdb identity show
comando :
resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'
az cosmosdb identity show \
-n $accountName \
-g $resourceGroupName
{
"type": "UserAssigned",
"tenantId": "<azure-ad-tenant-id>",
"principalId": "<azure-ad-principal-id>"
}
Rimuovere un'identità assegnata dal sistema o assegnata dall'utente
Uso di un modello di Azure Resource Manager (ARM)
Importante
Assicurarsi di usare o apiVersion
2021-03-15
versione successiva quando si usano le identità gestite.
Per rimuovere un'identità assegnata dal sistema dall'account Azure Cosmos DB, impostare la type
identity
proprietà su None
:
"identity": {
"type": "None"
}
Con l'interfaccia della riga di comando di Azure
Per rimuovere tutte le identità gestite dall'account Azure Cosmos DB, usare il az cosmosdb identity remove
comando :
resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'
az cosmosdb identity remove \
-n $accountName \
-g $resourceGroupName
Passaggi successivi
- Vedere altre informazioni sulle identità gestite per le risorse di Azure
- Altre informazioni sulle chiavi gestite dal cliente in Azure Cosmos DB