Что такое управляемые удостоверения для ресурсов 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?

Чтобы использовать управляемые удостоверения, выполните следующие действия:

  1. Создайте управляемое удостоверение в Azure. Вы можете выбрать управляемое удостоверение, назначаемое системой, или управляемое удостоверение, назначаемое пользователем.
    1. При использовании управляемого удостоверения, назначаемого пользователем, вы назначаете управляемое удостоверение исходному ресурсу Azure, например виртуальной машине, приложению логики Azure или веб-приложению Azure.
  2. Авторизовать управляемое удостоверение для получения доступа к целевой службе.
  3. Используйте управляемое удостоверение для доступа к ресурсу. Для этого можно использовать пакет SDK Azure с библиотекой Azure.Identity. Некоторые исходные ресурсы предлагают соединители, которые могут пользоваться управляемыми удостоверениями для подключений. В этом случае вы используете удостоверение как функцию этого исходного ресурса.

Службы Azure, в которых поддерживается данная функция.

Управляемые удостоверения для ресурсов Azure можно использовать для проверки подлинности в службах, поддерживающих проверку подлинности Microsoft Entra. Список поддерживаемых служб Azure см. в статье Службы с поддержкой управляемых удостоверений для ресурсов Azure.

Какие операции можно выполнять с управляемыми удостоверениями?

Ресурсы, поддерживающие назначаемые системой управляемые удостоверения, позволяют выполнять следующие задачи:

Если же вы выберете управляемое удостоверение, назначаемое пользователем:

Операции с управляемыми удостоверениями можно выполнять с помощью шаблона ARM, Azure CLI, PowerShell, REST API и на портале Azure.

Следующие шаги