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


Управление содержимым в виде кода с помощью репозиториев Microsoft Sentinel (предварительная версия)

Microsoft Sentinel репозитории позволяют развертывать и управлять пользовательским содержимым Sentinel из внешнего репозитория системы управления версиями для непрерывной интеграции и непрерывной доставки (CI/CD). Эта автоматизация устраняет необходимость вручную обновлять и развертывать пользовательское содержимое в рабочих областях. Подмножество содержимого в виде кода определяется как код (DaC). Microsoft Sentinel Repositories также реализует DaC.

Дополнительные сведения о содержимом Sentinel см. в разделе О контенте и решениях Microsoft Sentinel.

Внимание

Функция Microsoft Sentinel Repositories в настоящее время находится в PREVIEW. См. раздел Дополнительные условия использования для предварительных версий Microsoft Azure для получения дополнительных юридических условий, применимых к функциям Azure, находящимся в стадии бета, предварительной версии или ещё не выпущенным в общую доступность.

Как работают репозитории Microsoft Sentinel

Эти пользовательские типы контента Microsoft Sentinel можно развернуть из внешнего репозитория системы управления версиями в Microsoft Sentinel.

  • Правила аналитики
  • Правила автоматизации
  • Запросы охоты
  • Средства синтаксического анализа
  • Руководства
  • Рабочие тетради

Обновления, внесенные в содержимое в репозиториях Microsoft Sentinel, синхронизируются с рабочей областью Microsoft Sentinel и перезаписывают все изменения, внесенные на этот контент на портале Microsoft Sentinel. Репозитории Microsoft Sentinel становятся единственным источником истины для пользовательского содержимого в подключенных рабочих областях.

Планирование подключения к репозиторию

Репозитории Microsoft Sentinel требуют тщательного планирования, чтобы убедиться в наличии необходимых разрешений для подключения вашей рабочей области к репозиторию (repo).

  • Поддерживаются только подключения к репозиториям GitHub и Azure DevOps.
  • Требуется доступ к репозиторию GitHub или доступ администратора проекта к репозиторию Azure DevOps.
  • Приложению Microsoft Sentinel требуется авторизация в репозитории.
  • Действия должны быть включены для GitHub.
  • Конвейеры должны быть включены для Azure DevOps.
  • Подключение Azure DevOps должно находиться в том же клиенте, что и рабочая область Microsoft Sentinel.

Для создания подключения к репозиторию требуется роль Owner в группе ресурсов, содержащей рабочую область Microsoft Sentinel.

Если вы найдете содержимое в общедоступном репозитории, где вы не являетесь участником, сначала импортируйте, форкните или клонируйте это содержимое в репозиторий, где вы являетесь участником. Затем подключите репозиторий к рабочей области Microsoft Sentinel. Дополнительные сведения см. в статье Развертывание пользовательского содержимого из репозитория.

Максимальное число подключений и развертываний

  • В настоящее время каждая рабочая область Microsoft Sentinel ограничена подключениями пяти репозиториев.
  • Каждая группа ресурсов Azure ограничена 800 развертываниями в своей истории развертываний. Если у вас большой объем развертываний шаблонов в одной или нескольких группах ресурсов, может возникнуть ошибка Deployment QuotaExceeded. Для получения дополнительных сведений см. раздел DeploymentQuotaExceeded в документации по шаблонам Azure Resource Manager.

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

Microsoft Sentinel репозитории поддерживают развертывание содержимого, которое хранится в виде Bicep файлов или шаблонов Azure Resource Manager (ARM). Мы рекомендуем использовать Bicep, что более интуитивно понятно и упрощает описание Azure ресурсов и содержимого Microsoft Sentinel.

Шаблон для каждого типа контента имеет определенную структуру и имя параметра, как описано в справочнике по шаблону ресурсов Sentinel. Примеры каждого типа контента см. в репозитории RepositoriesSampleContent.

Мы предоставили пример репозитория с шаблонами для каждого из перечисленных типов контента. В репозитории также показано, как использовать расширенные функции подключения к репозиторию. Дополнительные сведения см. в примере репозиториев CI/CD Microsoft Sentinel.

Screenshot успешного подключения к репозиторию. Отображается RepositoriesSampleContent. Этот скриншот сделан после импорта примера из репозитория SentinelCICD в частный репозиторий GitHub в организации FourthCoffee.

Несмотря на то что вы можете создавать шаблоны с нуля, часто проще начать с файлов YAML общедоступного репозитория Sentinel GitHub или из встроенного Microsoft Sentinel содержимого. Эта таблица демонстрирует, как преобразовать шаблон ARM для использования в репозиториях Microsoft Sentinel.

Тип контента Преобразуйте из Sentinel Public YAML Экспорт из Sentinel Справочник по шаблонам Примеры шаблонов
Правила аналитики скрипт PowerShell функция Export или PowerShell script Справочные материалы Шаблоны ARM
Правила автоматизации N/A функция экспорта или скрипты PowerShell Справочные материалы N/A
Поиск запросов скрипт PowerShell команды Azure CLI Справочные материалы Пример содержимого
Парсеры скрипт ASIM PowerShell команды Azure CLI Справочные материалы Templates
Плейбуки N/A служебная программа PowerShell Справочные материалы N/A
рабочие тетради N/A Экспорт рабочих книг в виде шаблонов ARM Справочные материалы N/A

Внимание

Bicep соображения.

  • Чтобы использовать файлы Bicep, необходимо обновить подключение репозиториев, если подключение было создано до 1 ноября 2024 г. Для обновления необходимо удалить и воссоздать подключения репозиториев.
  • Bicep файлы не поддерживают свойство id. При декомпиляции JSON ARM в Bicep убедитесь, что это свойство отсутствует. Например, шаблоны правил аналитики, экспортированные из Microsoft Sentinel, имеют свойство id, которое требует удаления.
  • Измените схему JSON ARM на версию 2019-04-01 для получения наилучших результатов при декомпиляции.

Внимание

Правила аналитики, развернутые с помощью функции Microsoft Sentinel Repositories могут использовать запросы между рабочими областями, только если целевая рабочая область находится в той же группе ресурсов, что и рабочая область, подключенная к репозиторию.

Сведения о создании пользовательского содержимого с нуля см. в соответствующей Microsoft Sentinel GitHub вики для каждого типа контента.

Повышение производительности с помощью интеллектуальных развертываний

Совет

Чтобы интеллектуальные развертывания работали в GitHub, рабочие процессы должны иметь разрешения на чтение и запись в репозитории. Дополнительные сведения см. в разделе Управление GitHub Actions для репозитория.

Интеллектуальные развертывания — это серверная возможность, которая повышает производительность за счет активного отслеживания изменений, внесенных в файлы содержимого подключенного репозитория. Он использует CSV-файл в папке .sentinel в репозитории для аудита каждой фиксации. Рабочий процесс позволяет избежать повторного развертывания содержимого, которое не было изменено с момента последнего развертывания. Этот процесс повышает производительность развертывания и предотвращает незаконное изменение неизменного содержимого в рабочей области, например сброс динамических расписаний правил аналитики.

Смарт-развертывания включены по умолчанию для ново созданных подключений. Если вы предпочитаете, чтобы всё содержимое системы управления версиями развертывалось каждый раз при запуске развертывания, независимо от того, было оно изменено или нет, измените рабочий процесс, чтобы отключить умные развертывания. Дополнительные сведения см. в разделе "Настройка рабочего процесса или конвейера".

Рассмотрите варианты настройки развертывания

При развертывании содержимого с помощью репозиториев Microsoft Sentinel следует учитывать следующие параметры настройки.

Настройка рабочего процесса или конвейера

Настройте рабочий процесс или конвейер одним из следующих способов:

  • настройка различных триггеров развертывания;
  • развертывание содержимого только из определенной корневой папки для указанной рабочей области;
  • планирование рабочего процесса для периодического выполнения
  • объединение различных событий рабочего процесса вместе;
  • отключение умных развертываний

Эти настройки определены в файле .yml, относямся к рабочему процессу или конвейеру. Дополнительные сведения о реализации см. в разделе "Настройка развертываний репозитория"

Настройка развертывания

После активации рабочего процесса или конвейера развертывание поддерживает следующие сценарии:

  • приоритизировать содержимое для развертывания перед остальной частью содержимого репозитория
  • исключить содержимое из развертывания
  • укажите файлы параметров шаблона ARM

Эти параметры доступны с помощью функции сценария развертывания PowerShell, вызываемого из рабочего процесса или конвейера. Дополнительные сведения о реализации этих настроек см. в разделе "Настройка развертываний репозитория".

Управление репозиториями Microsoft Sentinel с помощью API

Сведения об управлении репозиториями Microsoft Sentinel с помощью API см. в действиях Source Control и Source Controls в REST API Microsoft Sentinel.

Внимание

Начиная с 15 июня 2026 г. более старые версии API, используемые репозиториями Microsoft Sentinel, больше не будут поддерживаться. Если вы используете API для создания подключений репозитория и управления ими, перейдите к API версии 2025-09-01, 2025-06-01 или 2025-07-01-preview до 15 июня 2026 года, чтобы избежать нарушения работы службы. Существующие подключения репозитория не затрагиваются.

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

Получите больше примеров и пошаговые инструкции по развертыванию репозиториев Microsoft Sentinel.