Управляемые удостоверения и регистрации приложений в Azure: ключевые различия и лучшие практики
By Mirko Peters ·
Если вы сегодня создаёте или защищаете что-либо серьёзное в Azure, разобраться в управляемых удостоверениях и регистрациях приложений — это обязательно: без этого никуда.
Automatically translated with AI from the original post. Read the English original

Если вы сегодня создаёте или защищаете что-либо серьёзное в Azure, разобраться в управляемых удостоверениях и регистрациях приложений — это обязательно. Оба механизма играют огромную роль в управлении идентификацией и доступом для ваших приложений, автоматизаций и служб. Но если перепутать, какая модель где подходит, вы получите лишние проблемы, брешни в безопасности или чрезмерно сложное управление секретами.
В этом руководстве разбирается, что такое управляемые удостоверения и регистрации приложений, как они взаимодействуют с Entra ID (ранее Azure AD) и почему выбор правильного подхода важен для безопасности и повседневной работы. Вас ждут прямые определения, практические сценарии, приёмы миграции с отказом от секретов, а также полезные советы по устранению неполадок и управлению. Главная цель — помочь вам вести более строгое, безопасное и эффективное облако Microsoft, особенно по мере роста числа атак и развития best practices для Entra ID.
Общее представление об управляемых удостоверениях и регистрациях приложений
Начнём с того, что именно делают управляемые удостоверения и регистрации приложений в Azure и Entra ID. Оба механизма позволяют не-людским субъектам — приложениям, скриптам или автоматизациям — проходить аутентификацию и получать доступ к ресурсам в облаке Microsoft. Но способы их работы и повседневные проблемы, которые они решают (или создают), заметно различаются.
Управляемые удостоверения — это ответ Azure на аутентификацию без секретов. Вместо работы с паролями приложений и сертификатами вы можете присвоить ресурсу Azure (например, виртуальной машине, App Service или Logic App) собственное удостоверение в Entra ID. Этим удостоверением автоматически управляет Azure: оно создаётся вместе с ресурсом, удаляется при его удалении и — что важнее всего — никогда не заставляет вас передавать обычные секреты. Управляемые удостоверения бывают двух типов: назначаемые системой (по одному на ресурс, жёстко привязаны к нему) и назначаемые пользователем (можно использовать сразу в нескольких ресурсах).
Регистрации приложений — классический подход. Регистрация приложения в Entra ID создаёт объект приложения и выдаёт идентификатор клиента, при этом для аутентификации можно использовать секреты или сертификаты. Если вашему приложению нужно входить в службы Microsoft, обращаться к Graph API или работать за пределами Azure (либо в нескольких ресурсах одновременно), скорее всего, вы будете использовать регистрацию приложения. Но при этом именно вы отвечаете за управление его секретами, безопасностью и жизненным циклом, и у этого есть свои компромиссы.
Выбор инструмента — это не только техническое решение, но и расчёт security-рисков: секреты становятся лакомой добычей для злоумышленников, тогда как управляемые удостоверения без секретов устраняют целые классы уязвимостей. Чтобы понять, почему это важно, посмотрите это подробное разбор злоупотребления согласием OAuth в Entra ID. Злоумышленники умеют закрепляться в средах, где пренебрегают основами, — поэтому правильная идентификация является первым шагом.
Ключевые различия: жизненный цикл, безопасность и интеграция с Azure
Вот где теория встречается с практикой. И управляемые удостоверения, и регистрации приложений выдают приложениям или скриптам свои цифровые «бейджи», позволяя получать доступ к ресурсам. Но то, как вы получаете этот бейдж, как за ним ухаживаете и как убираете за собой, сильно отличается.
Управляемые удостоверения — это максимально близко к принципу «настроил и забыл», доступному в облаке. Создайте ресурс Azure, запросите для него управляемое удостоверение — и готово: Azure сам создаёт удостоверение, подключает его к Entra ID и поддерживает синхронизацию на серверной стороне. Удалите ресурс — и удостоверение исчезнет вместе с ним. Никакого управления секретами, никакой ротации паролей, и команды безопасности спят спокойнее.
Регистрации приложений требуют гораздо больше усилий. Вы вручную создаёте регистрацию приложения в Entra ID, отслеживаете её идентификатор клиента и генерируете секреты или сертификаты для аутентификации. Со временем секреты истекают (или могут утечь), и именно вам приходится проверять, какие приложения их используют. Ротация секретов, отслеживание истекающих учётных данных и очистка «осиротевших» регистраций — отдельная задача, поэтому команды безопасности всегда спрашивают о автоматизации жизненного цикла.
Что касается безопасности, разница очевидна: управляемые удостоверения используют аутентификацию без секретов, привязанную к ресурсам Azure, тогда как регистрации приложений опираются на статические секреты или сертификаты. Именно поэтому управляемые удостоверения предпочтительны там, где секреты представляют риск или где важна автоматизация.
Эти различия в жизненном цикле и безопасности серьёзно влияют на автоматизацию, соответствие требованиям и на то, насколько строго удаётся держать облачные среды под контролем. Если вы хотите разобраться, как политики управления и средства контроля связаны с разрастанием удостоверений и дрейфом безопасности, взгляните на это руководство по стратегии управления Azure. Это обязательное чтение для всех, кто отвечает за большие и растущие инфраструктуры Azure.
Субъекты-службы, роли RBAC и разрешения Microsoft Graph
Теперь заглянем немного под капот. Внутри и управляемые удостоверения, и регистрации приложений используют субъекты-службы в Entra ID. Думайте о субъекте-службе как о реальном, работающем удостоверении, которое знает Entra ID. Независимо от того, создано ли оно на основе управляемого удостоверения или регистрации приложения, именно этот объект получает разрешения и доступ в вашем клиенте.
Для регистраций приложений, когда вы добавляете новое приложение, Entra создаёт соответствующий субъект-службу для каждого клиента, в котором оно используется. Это удостоверение, которое вы будете использовать для назначения ролей RBAC Azure, например Contributor или Reader, и для предоставления разрешений Graph API, делегированных или на уровне приложения.
Управляемые удостоверения устроены немного иначе, хотя основа та же. Включение управляемого удостоверения для ресурса Azure указывает Entra создать субъект-службу специального назначения, который существует ровно столько, сколько и сам ресурс. Затем вы назначаете этому удостоверению роли RBAC (например, Key Vault Reader), а ресурс получает токены доступа за кулисами: без изменений в коде и без секретов, которые болтаются без присмотра.
Предоставление разрешений — это самое важное место. Обе модели используют RBAC Azure для доступа на уровне ресурсов, но способ предоставления разрешений Graph у них различается. Регистрации приложений позволяют одобрить доступ к Graph API через явное согласие или одобрение администратора. Управляемым удостоверениям можно выдать разрешения приложения для Graph без интерактивного входа, что делает их идеальными для автоматизации, которой нужно получать данные пользователей, проверять безопасность или запускать рабочие процессы.
Назначение доступа и контроль соответствия для этих удостоверений, однако, не сводятся к принципу «настроил и забыл». Строгое назначение ролей RBAC, регулярные аудиты и такие инструменты, как Microsoft Defender for Cloud, помогают отслеживать, кто что делает, находить неправильные конфигурации и сводить дрейф к минимуму. Хотите глубже разобраться в управлении удостоверениями? Обратите внимание на руководство по корпоративному управлению Azure и на материал о мониторинге соответствия в Microsoft Defender for Cloud, где собраны практические советы по непрерывной безопасности.
Выбор правильной модели: сценарии, миграция и управление
Вся эта теория важна, но большинство команд хотят знать вот что: когда использовать управляемые удостоверения, а когда регистрации приложений? И как мигрировать или управлять этими удостоверениями, чтобы при масштабировании ничего не пошло наперекосяк?
Управляемые удостоверения особенно хороши для рабочих нагрузок, которые работают прямо внутри Azure и нуждаются в доступе только внутри того же клиента. Например, виртуальные машины, выполняющие скрипты, службы приложений, обращающиеся к Key Vault, или логические приложения, которые запрашивают Microsoft Graph. Безопасность выше, настройка быстрее, а управлять секретами приходится меньше. Но если вы работаете с SaaS, многоклиентскими решениями или гибридными схемами (например, с локальными приложениями, которые обращаются к облачным API), регистрации приложений по-прежнему остаются основным выбором благодаря гибкости и более широкой совместимости.
Миграция с регистраций приложений на управляемые удостоверения — тема, которую сейчас обсуждают очень активно. Процесс начинается с оценки готовности: какие рабочие нагрузки действительно можно перевести и какие зависимости и ограничения при этом существуют? Для приложений, уже построенных на регистрациях приложений, стоит внедрять изменения поэтапно, тщательно тестировать их и заранее продумать планы отката, чтобы избежать простоев и неожиданных проблем с аутентификацией.
Гибридным и мультиоблачным средам нужна небольшая доля творчества. Иногда приходится использовать обе модели одновременно — такой подход называют гибридной идентичностью. Секрет в том, чтобы минимизировать количество секретов, ограничивать разрешения и чётко документировать, какая идентичность за что отвечает. И да, регулярные аудиты обязательны, чтобы находить устаревшие или осиротевшие идентичности, которые создают скрытые риски.
Надёжные политики управления объединяют всю стратегию. Использование Azure Policy, Privileged Identity Management и регулярных проверок соответствия помогает обеспечивать принцип наименьших привилегий, выявлять отклонения от заданной конфигурации и соответствовать модели нулевого доверия. Чтобы трезво оценить разницу между сервисными учётными записями и настоящими идентичностями рабочих нагрузок (и понять, почему старые подходы не работают), ознакомьтесь с этим разбором: риски нечеловеческих идентичностей и Microsoft Entra Workload Identities. Нужны основы управления в целом? Материал стратегия корпоративного управления содержит множество лучших практик.