Поделиться через


Рекомендации по разработке управления удостоверениями и доступом нулевого доверия

Эта статья поможет вам, как разработчику, понять рекомендации по управлению удостоверениями и доступом для жизненного цикла разработки приложений. Вы начинаете разрабатывать безопасные приложения, соответствующие нулю доверия, с помощью управления удостоверениями и доступом (IAM).

Платформа безопасности нулевого доверия использует принципы явной проверки, наименее привилегированного доступа и допущения нарушения. Защита пользователей и данных при этом позволяет использовать распространенные сценарии, такие как доступ к приложениям за пределами периметра сети. Уменьшите зависимость от неявного доверия к взаимодействию с безопасным периметром сети, который может стать уязвимым для атак безопасности.

Хотя реализация "Нулевое доверие" продолжает развиваться, каждая организация является уникальной и часто начинается с удостоверения пользователя и приложения. Ниже приведены политики и элементы управления, которые многие организации приоритетируют по мере развертывания нулевого доверия:

  1. Реализуйте политики гигиены учетных данных и смены для приложений и служб. Когда злоумышленники компрометируют такие секреты, как сертификаты или пароли, они могут достичь глубины системного доступа для получения маркеров под видом удостоверения приложения. Затем они получают доступ к конфиденциальным данным, перемещаются позже и устанавливают сохраняемость.
  2. Развертывание строгой проверки подлинности. ИТ-администраторы настраивают политики, требующие многофакторной проверки подлинности и устройств FIDO2 без пароля.
  3. Ограничьте согласие пользователей приложениям с разрешениями с низким риском для проверенных приложений издателя. Доступ к данным в API-интерфейсах, таких как Microsoft Graph, позволяет создавать расширенные приложения. Организации и клиенты оценивают запросы на разрешения и надежность приложения перед предоставлением согласия. ИТ-администраторы принимают принцип явной проверки, требуя проверки издателя. Они применяют принцип наименьшей привилегии, разрешая согласие пользователя только для разрешений с низким риском.
  4. Блокировка устаревших протоколов и API. ИТ-администраторы блокируют старые протоколы проверки подлинности, такие как "Обычная проверка подлинности" и требуют современных протоколов, таких как OpenID Подключение и OAuth2.

Использование доверенных библиотек проверки подлинности на основе стандартов

Разработка приложения с использованием известных и принятых стандартов и библиотек для повышения переносимости и безопасности приложений. Доверенные, стандартные библиотеки проверки подлинности остаются актуальными, чтобы ваши приложения реагировали на новейшие технологии и угрозы. Методологии разработки на основе стандартов предоставляют общие сведения о поддерживаемых стандартах и их преимуществах.

Вместо использования протоколов с известными уязвимостями и обширной документацией для разработки приложения с помощью таких библиотек, как библиотека проверки подлинности Майкрософт (MSAL), библиотека веб-проверки подлинности Microsoft Identity Web и комплекты средств разработчиков программного обеспечения Azure (SDK). Пакеты СРЕДСТВ разработчиков MSAL и программного обеспечения (SDK) позволяют использовать эти функции без необходимости писать дополнительный код:

  • Условный доступ
  • Регистрация устройств и управление ими
  • Проверка подлинности без пароля и FIDO2

MSAL и Microsoft Graph — это лучший выбор для разработки приложений Microsoft Entra. Разработчики MSAL обеспечивают соответствие протоколам. Корпорация Майкрософт оптимизирует MSAL для повышения эффективности при работе непосредственно с идентификатором Microsoft Entra.

Регистрация приложений в идентификаторе Microsoft Entra

Следуйте рекомендациям по обеспечению безопасности свойств приложения в идентификаторе Microsoft Entra. Регистрация приложений в идентификаторе Microsoft Entra имеет решающее значение, так как неправильное настройка или сложение в гигиене приложения может привести к простою или компрометации.

Свойства приложения, которые повышают безопасность, включают URI перенаправления, маркеры доступа (никогда не используются с неявными потоками), сертификаты и секреты, URI идентификатора приложения и владение приложением. Проводите периодические оценки безопасности и работоспособности, аналогичные оценкам модели угроз безопасности для кода.

Делегирование управления удостоверениями и доступом

Разработка приложения для использования маркеров для явной проверки подлинности и контроля доступа, которые клиенты определяют и управляют ими. Корпорация Майкрософт рекомендует разрабатывать собственные системы управления именами пользователей и паролями.

Сохраняйте учетные данные вне кода, чтобы ИТ-администраторы могли сменить учетные данные без уменьшения или повторного развертывания приложения. Используйте службу, например Azure Key Vault или управляемые удостоверения Azure, чтобы делегировать IAM.

Планирование и проектирование минимального доступа к привилегиям

Ключевым принципом нулевого доверия является наименее привилегированный доступ. Достаточно разработать и задокументировать приложение, чтобы клиенты могли успешно настроить политики наименьших привилегий. При поддержке маркеров и API предоставьте клиентам хорошую документацию о ресурсах, которые вызывает ваше приложение.

Всегда предоставляйте минимальные привилегии, необходимые для выполнения определенных задач. Например, используйте детализированные область в Microsoft Graph.

Изучите область в Graph Обозреватель для вызова API и проверки необходимых разрешений. Они отображаются в порядке от наименьших до самых высоких привилегий. Выбор наименьших возможных привилегий гарантирует, что ваше приложение менее уязвимо для атак.

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

Безопасное управление маркерами

Когда приложение запрашивает маркеры из идентификатора Microsoft Entra, безопасно управляйте ими:

  • Убедитесь, что они правильно область в приложение.
  • Соответствующим образом кэшируйте их.
  • Используйте их должным образом.
  • Обработка проблем маркера путем проверка для классов ошибок и написания соответствующих ответов.
  • Вместо прямого чтения маркеров доступа просмотрите их область и подробные сведения в ответах маркеров.

Поддержка непрерывной оценки доступа (CAE)

Непрерывная оценка доступа (CAE) позволяет Microsoft Graph быстро запретить доступ в ответ на события безопасности. Примеры включают следующие действия администратора клиента:

  • Удаление или отключение учетной записи пользователя.
  • Включение многофакторной проверки подлинности (MFA) для пользователя.
  • Явно отменяя выданные пользователем маркеры.
  • Обнаружение пользователя, перемещающегося в состояние высокого риска.

При поддержке ЦС маркеры, которые проблемы с идентификатором идентификатора Microsoft Entra для вызова Microsoft Graph действительны в течение 24 часов вместо стандартного 60–90 минут. CAE добавляет устойчивость к приложению, позволяя MSAL заранее обновлять маркер до истечения срока действия маркера.

Определение ролей приложений для ИТ-специалистов для назначения пользователям и группам

Роли приложений помогают реализовать управление доступом на основе ролей в приложениях. Распространенные примеры ролей приложений включают Администратор istrator, читатель и участник. Управление доступом на основе ролей позволяет приложению ограничивать конфиденциальные действия пользователям или группам на основе определенных ролей.

Получение статуса проверенного издателя

В качестве проверенного издателя вы проверяете удостоверение с помощью учетной записи Microsoft Partner Network и завершили установленный процесс проверки. Для разработчиков мультитенантных приложений проверяемый издатель помогает создавать доверие ИТ-администраторов в клиентах клиентов.

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