Что такое управляемые удостоверения для ресурсов Azure?
Управление секретами, учетными данными, сертификатами и ключами, используемыми для защиты обмена данными между различными службами, зачастую представляет трудности для разработчиков. Управляемые удостоверения избавляют разработчиков от необходимости управлять учетными данными.
Разработчики могут безопасно хранить секреты в Azure Key Vault, однако службам нужен способ доступа к этому хранилищу. Управляемые удостоверения предоставляют приложениям автоматически управляемую идентификацию в Microsoft Entra ID для подключения к ресурсам, поддерживающим аутентификацию Microsoft Entra. Приложения могут использовать управляемые удостоверения для получения маркеров Microsoft Entra, и при этом им не нужно управлять учетными данными.
В следующем видео показано, как использовать управляемые идентификаторы:
Преимущества использования управляемых удостоверений:
- Управлять учетными данными не нужно. Даже у вас нет доступа к учетным данным.
- Управляемые удостоверения можно использовать для аутентификации в любом ресурсе, поддерживающем аутентификацию Microsoft Entra, включая собственные приложения.
- Управляемые удостоверения можно использовать без дополнительных затрат.
Типы управляемых удостоверений
Существует два типа управляемых удостоверений:
Назначаемые системой. Некоторые ресурсы Azure, такие как виртуальные машины, позволяют включить управляемое удостоверение непосредственно в ресурсе. Если включить управляемое удостоверение, назначаемое системой, выполните следующие действия.
- Для идентичности создается учетная запись службы специального типа в Microsoft Entra ID. Субъект-служба привязан к жизненному циклу этого ресурса 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.
Операции с управляемыми удостоверениями можно выполнять с помощью шаблона Azure Resource Manager, на портале Azure, Azure CLI, PowerShell и REST API.
Следующие шаги
- Введение и рекомендации для разработчиков
- Использование управляемого удостоверения, назначаемого системой виртуальной машины, для доступа к Resource Manager
- Использование управляемых удостоверений в Службе приложений и Функциях Azure
- Как использовать управляемые удостоверения с экземплярами контейнеров Azure
- Реализация управляемых идентификаций для ресурсов Microsoft Azure.
- Используйте федерацию удостоверений рабочей нагрузки для управляемых удостоверений, чтобы получить доступ к защищенным ресурсам Microsoft Entra без необходимости управления секретами.