Главная · Скиллы · entra-app-registration

entra-app-registrationрегистрация приложений Microsoft Entra

microsoft/azure-skills

Регистрация приложений в Microsoft Entra ID (Azure AD): OAuth 2.0, MSAL-интеграция, portal/CLI/Bicep. Покрывает все типы: web, SPA, mobile, daemon.

Установка

npx -y skills add microsoft/azure-skills --skill entra-app-registration --agent claude-code

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

Обзор

Microsoft Entra ID (ранее Azure Active Directory) — облачная служба управления удостоверениями и доступом Microsoft. Регистрация приложений позволяет приложениям аутентифицировать пользователей и безопасно получать доступ к ресурсам Azure.

Ключевые понятия

ПонятиеОписание
Регистрация приложенияКонфигурация, позволяющая приложению использовать платформу удостоверений Microsoft
Application (Client) IDУникальный идентификатор вашего приложения
Tenant IDУникальный идентификатор вашего Azure AD-арендатора/каталога
Client SecretПароль приложения (только для конфиденциальных клиентов)
Redirect URIURL, на который отправляются ответы аутентификации
API PermissionsОбласти доступа, запрашиваемые вашим приложением
Service PrincipalУдостоверение, создаваемое в вашем арендаторе при регистрации приложения

Типы приложений

ТипПрименение
Web ApplicationСерверные приложения, API
Single Page App (SPA)JavaScript/React/Angular-приложения
Mobile/Native AppДесктопные и мобильные приложения
Daemon/ServiceФоновые сервисы, API

Основной рабочий процесс

Шаг 1: Регистрация приложения

Создайте регистрацию в портале Azure или с помощью Azure CLI.

Через портал:

  1. Портал Azure → Microsoft Entra ID → Регистрации приложений
  2. Нажмите «Новая регистрация»
  3. Укажите имя, поддерживаемые типы учётных записей и URI перенаправления
  4. Нажмите «Зарегистрировать»

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

Шаг 2: Настройка аутентификации

  • Web Apps: добавьте redirect URI, включите ID tokens при необходимости
  • SPA: добавьте redirect URI, включите implicit grant flow при необходимости
  • Mobile/Desktop: используйте http://localhost или пользовательскую схему URI
  • Сервисы: redirect URI не нужен для client credentials flow

Шаг 3: Настройка разрешений API

Предоставьте приложению доступ к Microsoft API или собственным API.

Распространённые разрешения Microsoft Graph:

  • User.Read — чтение профиля пользователя
  • User.ReadWrite.All — чтение и запись всех пользователей
  • Directory.Read.All — чтение данных каталога
  • Mail.Send — отправка почты от имени пользователя

Шаг 4: Создание учётных данных клиента (при необходимости)

Для конфиденциальных клиентских приложений создайте секрет клиента, сертификат или федеративные учётные данные удостоверения.

  • Client Secret: перейдите в «Сертификаты и секреты», создайте секрет, скопируйте значение немедленно (отображается только один раз), храните безопасно (рекомендуется Key Vault)
  • Сертификат: для production-среды используйте сертификаты вместо секретов — загрузите через раздел «Сертификаты и секреты»
  • Federated Identity Credential: для динамической аутентификации конфиденциального клиента на платформе Entra

Шаг 5: Реализация OAuth-потока

Интегрируйте OAuth-поток в код приложения. MSAL — рекомендуемая библиотека.

Типичные паттерны

Паттерн 1: Первая регистрация приложения

Пошаговая помощь при первой регистрации приложения.

Необходимая информация: имя приложения, тип (web, SPA, mobile, service), redirect URI, необходимые разрешения.

Паттерн 2: Консольное приложение с аутентификацией пользователей

Создание консольного приложения .NET/Python/Node.js с аутентификацией пользователей.

Необходимая информация: язык программирования, библиотека аутентификации (рекомендуется MSAL), необходимые разрешения.

Паттерн 3: Аутентификация между сервисами

Настройка аутентификации daemon/service без участия пользователя.

Реализация: используйте Client Credentials flow.

MCP-инструменты и CLI

КомандаНазначение
az ad app createСоздать регистрацию приложения
az ad app listСписок регистраций приложений
az ad app showПоказать детали приложения
az ad app permission addДобавить разрешение API
az ad app credential resetСгенерировать новый секрет клиента
az ad sp createСоздать сервисный принципал

Microsoft Authentication Library (MSAL)

Поддерживаемые языки: .NET/C# — Microsoft.Identity.Client, JavaScript/TypeScript — @azure/msal-browser, @azure/msal-node, Python — msal.

Рекомендации по безопасности

ПрактикаРекомендация
Не хардкодьте секретыИспользуйте переменные окружения, Azure Key Vault или управляемое удостоверение
Регулярно ротируйте секретыУстанавливайте срок действия, автоматизируйте ротацию
Сертификаты вместо секретовБолее безопасно для production
Минимальные привилегииЗапрашивайте только необходимые разрешения API
Включите MFAТребуйте многофакторную аутентификацию для пользователей
Используйте управляемые удостоверенияДля Azure-hosted приложений — избегайте секретов полностью
Валидируйте токеныВсегда проверяйте issuer, audience, expiration
Только HTTPSВсе redirect URI должны использовать HTTPS (кроме localhost)
Мониторинг входовИспользуйте логи входов Entra ID для обнаружения аномалий

Внешние ресурсы

Из того же репозитория

microsoft-foundryполный цикл AI-агентов на Foundry
microsoft/azure-skills
Деплой, оценка и управление AI-агентами на Microsoft Foundry: контейнеризация, ACR, создание агентов, batch-оценки и оптимизация промптов по данным продакшена.
1.1k364.2k установок
azure-aiAI-сервисы Azure для разработчиков
microsoft/azure-skills
Инструменты Azure AI через MCP для разработчиков: AI Search, Speech, OpenAI и Document Intelligence — интеграция в приложения без управления инфраструктурой.
1.1k362.1k установок
azure-diagnosticsдиагностика проблем в Azure продакшене
microsoft/azure-skills
Систематическая отладка продакшена Azure: Container Apps, Function Apps и AKS. AppLens для root cause, KQL-запросы под конкретные ошибки и crash loops.
1.1k361.8k установок
azure-prepareгенерация Azure-инфраструктуры
microsoft/azure-skills
Генерирует Bicep/Terraform, azure.yaml и Dockerfile для новых и существующих приложений перед деплоем в Azure. Обязательный первый шаг трёхэтапного воркфлоу.
1.1k361.7k установок
azure-deployдеплой подготовленных Azure-приложений
microsoft/azure-skills
Выполняет деплой приложений с готовой инфраструктурой: azd up, azd deploy с проверками и обработкой ошибок. Требует предварительной подготовки через azure-prepare.
1.1k361.7k установок
azure-storageхранилище Azure для разработчиков
microsoft/azure-skills
Управление Azure Storage через MCP или CLI: Blob, File Shares, Queue, Table и Data Lake. Сравнение сервисов, уровни доступа, операции с blob через MCP-инструменты.
1.1k361.4k установок