Настройка управляемых удостоверений в Microsoft Entra ID для учетной записи Azure Cosmos DB
Область применения: Nosql Mongodb Кассандра Гремлин Таблица
Управляемые удостоверения для ресурсов Azure предоставляют службам Azure автоматически управляемое удостоверение, которое хранится в Microsoft Entra ID. В этой статье показано, как создать управляемое удостоверение для учетных записей Azure Cosmos DB.
Необходимые компоненты
- Если вы не работали с управляемыми удостоверениями для ресурсов Azure, см. статью Что такое управляемые удостоверения для ресурсов Azure. Сведения о типах см. в разделе Типы управляемых удостоверений.
- Чтобы настроить управляемые удостоверения, учетной записи должна быть назначена роль участника учетной записи DocumentDB.
Добавление назначаемого системой удостоверения
Использование портала Azure
Чтобы включить управляемое удостоверение, назначаемое системой, в имеющейся учетной записи Azure Cosmos DB, перейдите к своей учетной записи на портале Azure и в меню слева выберите Удостоверение.
В разделе Назначено системой для параметра Состояние установите значение "Вкл." и выберите Сохранить. Вам будет предложено подтвердить создание управляемого удостоверения, назначаемого системой.
После создания и назначения удостоверения вы можете извлечь его идентификатор объекта (субъекта).
С помощью шаблона Azure Resource Manager (ARM)
Внимание
При работе с управляемыми удостоверениями обязательно используйте apiVersion
версии 2021-03-15
или более поздней.
Чтобы включить удостоверение, назначаемое системой, для новой или существующей учетной записи Azure Cosmos DB, включите следующее свойство в определение ресурса:
"identity": {
"type": "SystemAssigned"
}
Раздел resources
шаблона ARM должен выглядеть следующим образом:
"resources": [
{
"type": " Microsoft.DocumentDB/databaseAccounts",
"identity": {
"type": "SystemAssigned"
},
// ...
},
// ...
]
После создания или обновления учетной записи Azure Cosmos DB появится следующее свойство:
"identity": {
"type": "SystemAssigned",
"tenantId": "<azure-ad-tenant-id>",
"principalId": "<azure-ad-principal-id>"
}
Использование Azure CLI
Чтобы включить удостоверение, назначаемое системой, при создании новой учетной записи Azure Cosmos DB, добавьте параметр --assign-identity
:
resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'
az cosmosdb create \
-n $accountName \
-g $resourceGroupName \
--locations regionName='West US 2' failoverPriority=0 isZoneRedundant=False \
--assign-identity
Вы также можете добавить удостоверение, назначаемое системой, для существующей учетной записи с помощью команды az cosmosdb identity assign
:
resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'
az cosmosdb identity assign \
-n $accountName \
-g $resourceGroupName
После создания или обновления учетной записи Azure Cosmos DB можно получить назначаемое удостоверение с помощью команды az cosmosdb identity show
:
resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'
az cosmosdb identity show \
-n $accountName \
-g $resourceGroupName
{
"type": "SystemAssigned",
"tenantId": "<azure-ad-tenant-id>",
"principalId": "<azure-ad-principal-id>"
}
Добавление назначаемого пользователем удостоверения
Использование портала Azure
Чтобы включить управляемое удостоверение, назначаемое пользователем, в имеющейся учетной записи Azure Cosmos DB, перейдите к своей учетной записи на портале Azure и в меню слева выберите Удостоверение.
В разделе Назначено пользователем выберите + Добавить.
Найдите и выберите все удостоверения, которые вы хотите назначить учетной записи Azure Cosmos DB, а затем щелкните Добавить.
С помощью шаблона Azure Resource Manager (ARM)
Внимание
При работе с управляемыми удостоверениями обязательно используйте apiVersion
версии 2021-03-15
или более поздней.
Чтобы включить удостоверение, назначаемое пользователем, для новой или имеющейся учетной записи Azure Cosmos DB, включите следующее свойство в определение ресурса:
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": {
"<identity-resource-id>": {}
}
}
Раздел resources
шаблона ARM должен выглядеть следующим образом:
"resources": [
{
"type": " Microsoft.DocumentDB/databaseAccounts",
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": {
"<identity-resource-id>": {}
}
},
// ...
},
// ...
]
После создания или обновления учетной записи Azure Cosmos DB отобразится следующее свойство:
"identity": {
"type": "UserAssigned",
"tenantId": "<azure-ad-tenant-id>",
"principalId": "<azure-ad-principal-id>"
}
Использование Azure CLI
Чтобы включить удостоверение, назначаемое пользователем, при создании учетной записи Azure Cosmos DB, добавьте параметр --assign-identity
и передайте идентификатор ресурса удостоверения, которое вы хотите назначить:
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>
Вы также можете добавить удостоверение, назначаемое пользователем, для имеющейся учетной записи с помощью команды az cosmosdb identity assign
:
resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'
az cosmosdb identity assign \
-n $accountName \
-g $resourceGroupName
--identities <identity-resource-id>
После создания или обновления учетной записи Azure Cosmos DB можно получить назначаемое удостоверение с помощью команды az cosmosdb identity show
:
resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'
az cosmosdb identity show \
-n $accountName \
-g $resourceGroupName
{
"type": "UserAssigned",
"tenantId": "<azure-ad-tenant-id>",
"principalId": "<azure-ad-principal-id>"
}
Удалите назначаемое системой удостоверение или удостоверение, назначаемое пользователем
С помощью шаблона Azure Resource Manager (ARM)
Внимание
При работе с управляемыми удостоверениями обязательно используйте apiVersion
версии 2021-03-15
или более поздней.
Чтобы удалить удостоверение, назначаемое системой, из учетной записи Azure Cosmos DB, задайте для type
свойства identity
значение None
:
"identity": {
"type": "None"
}
Использование Azure CLI
Чтобы удалить все управляемые удостоверения из учетной записи Azure Cosmos DB, используйте команду az cosmosdb identity remove
:
resourceGroupName='myResourceGroup'
accountName='mycosmosaccount'
az cosmosdb identity remove \
-n $accountName \
-g $resourceGroupName
Следующие шаги
- Дополнительные сведения см. в статье Использование управляемых удостоверений для ресурсов Azure.
- См. дополнительные сведения о ключах, управляемых клиентом, в Azure Cosmos DB.