Что такое управляемые удостоверения для ресурсов Azure?

Управление секретами, учетными данными, сертификатами и ключами, используемыми для защиты обмена данными между различными службами, зачастую представляет трудности для разработчиков. Управляемые удостоверения избавляют разработчиков от необходимости управлять учетными данными.

Разработчики могут безопасно хранить секреты в Azure Key Vault, однако службам нужен способ доступа к этому хранилищу. Управляемое удостоверение предоставляет для приложений автоматически управляемое удостоверение в Azure Active Directory, которое используется для подключения к ресурсам, поддерживающим проверку подлинности Azure Active Directory (Azure AD). Приложения могут использовать управляемые удостоверения для получения маркеров Azure AD, и при этом им не нужно управлять учетными данными.

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

Ниже приведены некоторые преимущества использования управляемых удостоверений.

  • Управление учетными данными не требуется. Даже у вас нет доступа к учетным данным.
  • Управляемые удостоверения можно использовать для проверки подлинности при доступе к любому ресурсу, который поддерживает проверку подлинности AAD, в том числе к собственным приложениям.
  • Управляемые удостоверения можно использовать без дополнительных затрат.

Примечание

Управляемые удостоверения для ресурсов Azure — это новое название службы "Управляемое удостоверение службы" (MSI).

Типы управляемых удостоверений

Существует два типа управляемых удостоверений.

  • Назначаемые системой. Некоторые службы Azure позволяют включить управляемое удостоверение непосредственно в экземпляре службы. Когда вы включаете управляемое удостоверение, назначаемое системой, в Azure AD создается удостоверение. Это удостоверение привязано к жизненному циклу этого экземпляра службы. Поэтому при удалении ресурса Azure автоматически удаляет удостоверение. Только ресурс Azure может использовать это удостоверение для запроса маркеров из Azure AD.
  • Назначаемые пользователем. Вы также можете сами создать управляемое удостоверение в качестве автономного ресурса Azure. Вы можете создать назначаемое пользователем управляемое удостоверение и назначить его одному или нескольким экземплярам службы Azure. Если используются управляемые удостоверения, назначаемые пользователем, управление таким удостоверением осуществляется отдельно от ресурсов, которые его используют.

В следующей таблице показаны различия между двумя типами управляемых удостоверений.

Свойство Управляемое удостоверение, назначаемое системой Управляемое удостоверение, назначаемое пользователем
Создание Создается как часть ресурса Azure (например, виртуальной машины Azure или Службы приложений Azure). Создано в качестве автономного ресурса Azure.
Жизненный цикл Жизненный цикл в общем доступе с ресурсом Azure, указанным при создании управляемого удостоверения.
При удалении родительского ресурса управляемое удостоверение также удаляется.
Независимый жизненный цикл.
Должен быть явно удален.
Совместное использование ресурсов Azure Не может использоваться совместно.
Может быть связано только с одним ресурсом Azure.
Может быть в общем доступе.
Одно и то же назначаемое пользователем управляемое удостоверение может быть связано с несколькими ресурсами Azure.
Распространенные варианты использования Рабочие нагрузки, которые содержатся в одном ресурсе Azure.
Рабочие нагрузки, для которых требуются независимые удостоверения.
Например, приложение, выполняющееся на одной виртуальной машине.
Рабочие нагрузки, которые выполняются на нескольких ресурсах и могут совместно использовать одно удостоверение.
Рабочие нагрузки, которым в потоке подготовки требуется предварительная авторизация доступа к защищенному ресурсу.
Рабочие нагрузки, где ресурсы перезапускаются часто, но разрешения должны быть согласованными.
Например, рабочая нагрузка, где нескольким виртуальным машинам требуется доступ к одному и тому же ресурсу.

Важно!

Независимо от выбранного типа управляемое удостоверение является субъектом-службой специального типа, который может использоваться только с ресурсами Azure. При удалении управляемого удостоверения соответствующий субъект-служба автоматически удаляется.


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

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

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

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

Управляемые удостоверения для ресурсов Azure можно использовать для аутентификации служб с поддержкой аутентификации Azure AD. Список поддерживаемых служб Azure см. в статье Службы с поддержкой управляемых удостоверений для ресурсов Azure.

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

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

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

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

Дальнейшие действия