Рекомендации по разработке управления удостоверениями и доступом нулевого доверия
Эта статья поможет вам, как разработчику, понять рекомендации по управлению удостоверениями и доступом для жизненного цикла разработки приложений. Вы начинаете разрабатывать безопасные приложения, соответствующие нулю доверия, с помощью управления удостоверениями и доступом (IAM).
Платформа безопасности нулевого доверия использует принципы явной проверки, наименее привилегированного доступа и допущения нарушения. Защита пользователей и данных при этом позволяет использовать распространенные сценарии, такие как доступ к приложениям за пределами периметра сети. Уменьшите зависимость от неявного доверия к взаимодействию с безопасным периметром сети, который может стать уязвимым для атак безопасности.
Тенденции безопасности отрасли влияют на требования приложений
Хотя реализация "Нулевое доверие" продолжает развиваться, каждая организация является уникальной и часто начинается с удостоверения пользователя и приложения. Ниже приведены политики и элементы управления, которые многие организации приоритетируют по мере развертывания нулевого доверия:
- Реализуйте политики гигиены учетных данных и смены для приложений и служб. Когда злоумышленники компрометируют такие секреты, как сертификаты или пароли, они могут достичь глубины системного доступа для получения маркеров под видом удостоверения приложения. Затем они получают доступ к конфиденциальным данным, перемещаются позже и устанавливают сохраняемость.
- Развертывание строгой проверки подлинности. ИТ-администраторы настраивают политики, требующие многофакторной проверки подлинности и устройств FIDO2 без пароля.
- Ограничьте согласие пользователей приложениям с разрешениями с низким риском для проверенных приложений издателя. Доступ к данным в API-интерфейсах, таких как Microsoft Graph, позволяет создавать расширенные приложения. Организации и клиенты оценивают запросы на разрешения и надежность приложения перед предоставлением согласия. ИТ-администраторы принимают принцип явной проверки, требуя проверки издателя. Они применяют принцип наименьшей привилегии, разрешая согласие пользователя только для разрешений с низким риском.
- Блокировка устаревших протоколов и 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 и завершили установленный процесс проверки. Для разработчиков мультитенантных приложений проверяемый издатель помогает создавать доверие ИТ-администраторов в клиентах клиентов.
Следующие шаги
- Настройка маркеров описывает сведения, которые можно получить в токенах Microsoft Entra. Узнайте, как настроить маркеры для повышения гибкости и контроля при увеличении безопасности нулевого доверия приложений с минимальными привилегиями.
- Настройка утверждений групп и ролей приложений в маркерах описывает настройку приложений с определениями ролей приложения и назначение групп безопасности ролям приложений. Этот подход повышает гибкость и контроль при увеличении безопасности приложений Zero Trust с минимальными привилегиями.
- Создание приложений с использованием подхода "Нулевое доверие" к удостоверениям предоставляет общие сведения о разрешениях и рекомендациях по доступу.
- В руководстве по интеграции с удостоверениями объясняется, как интегрировать решения по обеспечению безопасности с продуктами Майкрософт для создания решений нулевого доверия.
- Обязанности разработчика и администратора для регистрации приложений, авторизации и доступа помогают лучше сотрудничать с ИТ-специалистами.
- Поддерживаемые типы удостоверений и учетных записей для отдельных и мультитенантных приложений объясняют, разрешено ли ваше приложение только пользователям из клиента Microsoft Entra ID, любого клиента Microsoft Entra или пользователей с личными учетными записями Майкрософт.
- Рекомендации по авторизации помогут реализовать лучшие модели авторизации, разрешения и согласия для приложений.
- Защита API описывает рекомендации по защите API путем регистрации, определения разрешений и согласия и принудительного доступа к достижению целей нулевого доверия.