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