Что такое управляемые удостоверения для ресурсов Azure?
Управление секретами, учетными данными, сертификатами и ключами, используемыми для защиты обмена данными между различными службами, зачастую представляет трудности для разработчиков. Управляемые удостоверения избавляют разработчиков от необходимости управлять учетными данными.
Разработчики могут безопасно хранить секреты в Azure Key Vault, однако службам нужен способ доступа к этому хранилищу. Управляемое удостоверение предоставляет для приложений автоматически управляемое удостоверение в идентификаторе Microsoft Entra, которое используется для подключения к ресурсам, поддерживающим проверку подлинности Microsoft Entra. Приложения могут использовать управляемые удостоверения для получения маркеров Microsoft Entra, и при этом им не нужно управлять учетными данными.
В следующем видео показано, как использовать управляемые удостоверения:
Ниже приведены некоторые преимущества использования управляемых удостоверений.
- Управление учетными данными не требуется. Даже у вас нет доступа к учетным данным.
- Управляемые удостоверения можно использовать для проверки подлинности в любом ресурсе, поддерживающем проверку подлинности Microsoft Entra, включая собственные приложения.
- Управляемые удостоверения можно использовать без дополнительных затрат.
Примечание.
Управляемые удостоверения для ресурсов Azure — это новое название Управляемого удостоверения службы (MSI).
Типы управляемых удостоверений
Существует два типа управляемых удостоверений:
Назначаемые системой. Некоторые ресурсы Azure, такие как виртуальные машины, позволяют включить управляемое удостоверение непосредственно в ресурсе. Если включить управляемое удостоверение, назначаемое системой, выполните следующие действия.
- Субъект-служба специального типа создается в идентификаторе Microsoft Entra для удостоверения. Субъект-служба привязан к жизненному циклу этого ресурса Azure. При удалении ресурса Azure Azure автоматически удаляет субъект-службу.
- Только один конкретный ресурс Azure может использовать это удостоверение для получения токенов Microsoft Entra ID.
- Вы авторизуете управляемое удостоверение для доступа к одной или нескольким службам.
- Имя субъекта-службы, назначаемого системой, всегда совпадает с именем создаваемого ресурса Azure. Для слота развертывания имя
<app-name>/slots/<slot-name>
его назначаемого системой удостоверения.
Назначаемые пользователем. Вы также можете сами создать управляемое удостоверение в качестве автономного ресурса Azure. Вы можете создать управляемое удостоверение , назначаемое пользователем, и назначить его одному или нескольким ресурсам Azure. Если включить управляемое удостоверение, назначаемое пользователем, выполните следующие действия.
- Субъект-служба специального типа создается в идентификаторе Microsoft Entra для удостоверения. Субъект-служба управляется отдельно от ресурсов, которые его используют.
- Удостоверения, назначенные пользователем, могут использоваться несколькими ресурсами.
- Вы авторизуете управляемое удостоверение для доступа к одной или нескольким службам.
В следующей таблице показаны различия между двумя типами управляемых удостоверений.
Свойство | Управляемое удостоверение, назначаемое системой | Управляемое удостоверение, назначаемое пользователем |
---|---|---|
Создание | Создается как часть ресурса Azure (например, виртуальной машины Azure или Службы приложений Azure). | Создано в качестве автономного ресурса Azure. |
Жизненный цикл | Жизненный цикл в общем доступе с ресурсом Azure, указанным при создании управляемого удостоверения. При удалении родительского ресурса управляемое удостоверение также удаляется. |
Независимый жизненный цикл. Должен быть явно удален. |
Совместное использование ресурсов Azure | Не может использоваться совместно. Может быть связано только с одним ресурсом Azure. |
Может быть в общем доступе. Одно и то же назначаемое пользователем управляемое удостоверение может быть связано с несколькими ресурсами Azure. |
Распространенные варианты использования | Рабочие нагрузки, содержащиеся в одном ресурсе Azure. Рабочие нагрузки, требующие независимых удостоверений. Например, приложение, выполняющееся на одной виртуальной машине. |
Рабочие нагрузки, которые выполняются на нескольких ресурсах и могут совместно использовать одно удостоверение. Рабочие нагрузки, требующие предварительной авторизации для безопасного ресурса, в рамках потока подготовки. Рабочие нагрузки, где ресурсы перезапускаются часто, но разрешения должны быть согласованными. Например, рабочая нагрузка, где нескольким виртуальным машинам требуется доступ к одному и тому же ресурсу. |
Как применять управляемые удостоверения для ресурсов Azure?
Чтобы использовать управляемые удостоверения, выполните следующие действия:
- Создайте управляемое удостоверение в Azure. Вы можете выбрать управляемое удостоверение, назначаемое системой, или управляемое удостоверение, назначаемое пользователем.
- При использовании управляемого удостоверения, назначаемого пользователем, вы назначаете управляемое удостоверение исходному ресурсу Azure, например виртуальной машине, приложению логики Azure или веб-приложению Azure.
- Авторизовать управляемое удостоверение для получения доступа к целевой службе.
- Используйте управляемое удостоверение для доступа к ресурсу. Для этого можно использовать пакет SDK Azure с библиотекой Azure.Identity. Некоторые исходные ресурсы предлагают соединители, которые могут пользоваться управляемыми удостоверениями для подключений. В этом случае вы используете удостоверение как функцию этого исходного ресурса.
Службы Azure, в которых поддерживается данная функция.
Управляемые удостоверения для ресурсов Azure можно использовать для проверки подлинности в службах, поддерживающих проверку подлинности Microsoft Entra. Список поддерживаемых служб Azure см. в статье Службы с поддержкой управляемых удостоверений для ресурсов Azure.
Какие операции можно выполнять с управляемыми удостоверениями?
Ресурсы, поддерживающие назначаемые системой управляемые удостоверения, позволяют выполнять следующие задачи:
- Включать или отключать управляемые удостоверения на уровне ресурса.
- предоставлять разрешения с помощью RBAC (управления доступом на основе ролей);
- просматривать операции CRUD (создания, чтения, обновления и удаления) в журналах действий Azure;
- Просмотр действий входа в журналах входа в Microsoft Entra ID.
Если же вы выберете управляемое удостоверение, назначаемое пользователем:
- вы можете создавать, считывать, обновлять и удалять удостоверения;
- Вы можете использовать назначения ролей RBAC для предоставления разрешений.
- Управляемые удостоверения, назначаемые пользователем, можно использовать в нескольких ресурсах.
- Сведения об операциях CRUD можно просматривать в журналах действий Azure.
- Просмотр действий входа в журналах входа в Microsoft Entra ID.
Операции с управляемыми удостоверениями можно выполнять с помощью шаблона ARM, Azure CLI, PowerShell, REST API и на портале Azure.
Следующие шаги
- Введение и рекомендации для разработчиков
- Использование управляемого удостоверения, назначаемого системой виртуальной машины, для доступа к Resource Manager
- Использование управляемых удостоверений в Службе приложений и Функциях Azure
- Использование управляемых удостоверений для службы "Экземпляры контейнеров Azure"
- Реализация управляемых удостоверений для ресурсов Microsoft Azure.
- Использование федерации удостоверений рабочей нагрузки для управляемых удостоверений для доступа к защищенным ресурсам Microsoft Entra без управления секретами